Cockatrice 2026-10-19-Development-3.1.2-beta.2
A virtual tabletop for multiplayer card games
Loading...
Searching...
No Matches
tab_moderation.h
Go to the documentation of this file.
1#ifndef TAB_MODERATION_H
2#define TAB_MODERATION_H
3
4#include "tab.h"
5
6#include <QString>
7#include <QtGlobal>
8#include <qtmetamacros.h>
9
10class AbstractClient;
11class QGroupBox;
12class QLabel;
13class QLineEdit;
14class QPushButton;
15class QTableWidget;
16class QTextEdit;
17class Response;
18class TabSupervisor;
19
25class TabModeration : public Tab
26{
27 Q_OBJECT
28public:
29 explicit TabModeration(TabSupervisor *_tabSupervisor, AbstractClient *_client, const QString &initialUser = {});
30 void retranslateUi() override;
31 [[nodiscard]] QString getTabText() const override
32 {
33 return tr("Moderation");
34 }
35 void investigate(const QString &userName);
36
37private slots:
38 void investigateUser();
39 void userInfoResponse(const Response &response);
40 void sessionsResponse(const Response &response);
41 void altsResponse(const Response &response);
42 void moderatorLoginsResponse(const Response &response);
43 void resetPassword();
44 void resetPasswordResponse(const Response &response);
45 void removeAvatar();
46 void removeAvatarResponse(const Response &response);
47
48private:
49 void requestUserInfo(const QString &userName);
50 void requestSessions(const QString &userName);
51 void requestAlts(const QString &userName);
53 void clearUserData();
54 [[nodiscard]] QString formatEpoch(quint64 ts) const;
55
57 QString currentUser;
58
59 QLineEdit *searchEdit;
60 QPushButton *investigateButton;
61 QPushButton *resetPasswordButton;
62 QPushButton *removeAvatarButton;
63
64 QGroupBox *userInfoGroup;
77
78 QGroupBox *altsGroup;
79 QTableWidget *altsTable;
80 QGroupBox *sessionsGroup;
81 QTableWidget *sessionsTable;
82 QGroupBox *staffGroup;
83 QTableWidget *staffTable;
84 QPushButton *refreshStaffButton;
85};
86
87#endif // TAB_MODERATION_H
Definition abstract_client.h:73
void sessionsResponse(const Response &response)
Definition tab_moderation.cpp:318
QGroupBox * sessionsGroup
Definition tab_moderation.h:80
QLabel * userInfoStatusLabel
Definition tab_moderation.h:71
QGroupBox * userInfoGroup
Definition tab_moderation.h:64
void requestUserInfo(const QString &userName)
Definition tab_moderation.cpp:257
QGroupBox * staffGroup
Definition tab_moderation.h:82
QGroupBox * altsGroup
Definition tab_moderation.h:78
QPushButton * refreshStaffButton
Definition tab_moderation.h:84
void clearUserData()
Definition tab_moderation.cpp:217
QPushButton * removeAvatarButton
Definition tab_moderation.h:62
QString getTabText() const override
Definition tab_moderation.h:31
QLabel * userInfoCountsLabel
Definition tab_moderation.h:73
AbstractClient * client
Definition tab_moderation.h:56
void altsResponse(const Response &response)
Definition tab_moderation.cpp:350
TabModeration(TabSupervisor *_tabSupervisor, AbstractClient *_client, const QString &initialUser={})
Definition tab_moderation.cpp:69
void investigateUser()
Definition tab_moderation.cpp:241
void resetPassword()
Definition tab_moderation.cpp:411
QPushButton * investigateButton
Definition tab_moderation.h:60
void investigate(const QString &userName)
Definition tab_moderation.cpp:232
QTableWidget * staffTable
Definition tab_moderation.h:83
QLabel * userInfoNotesLabel
Definition tab_moderation.h:75
QLabel * userInfoNameValue
Definition tab_moderation.h:66
QLabel * userInfoRegisteredLabel
Definition tab_moderation.h:67
void retranslateUi() override
Definition tab_moderation.cpp:183
QLabel * userInfoCountsValue
Definition tab_moderation.h:74
void removeAvatar()
Definition tab_moderation.cpp:448
QLabel * userInfoLastLoginLabel
Definition tab_moderation.h:69
void requestModeratorLogins()
Definition tab_moderation.cpp:372
void requestAlts(const QString &userName)
Definition tab_moderation.cpp:341
QLabel * userInfoLastLoginValue
Definition tab_moderation.h:70
QLabel * userInfoStatusValue
Definition tab_moderation.h:72
void resetPasswordResponse(const Response &response)
Definition tab_moderation.cpp:434
QLabel * userInfoNameLabel
Definition tab_moderation.h:65
QLineEdit * searchEdit
Definition tab_moderation.h:59
void removeAvatarResponse(const Response &response)
Definition tab_moderation.cpp:469
void moderatorLoginsResponse(const Response &response)
Definition tab_moderation.cpp:380
void userInfoResponse(const Response &response)
Definition tab_moderation.cpp:273
void requestSessions(const QString &userName)
Definition tab_moderation.cpp:309
QPushButton * resetPasswordButton
Definition tab_moderation.h:61
QTableWidget * sessionsTable
Definition tab_moderation.h:81
QString formatEpoch(quint64 ts) const
Definition tab_moderation.cpp:209
QLabel * userInfoRegisteredValue
Definition tab_moderation.h:68
QString currentUser
Definition tab_moderation.h:57
QTableWidget * altsTable
Definition tab_moderation.h:79
QTextEdit * userInfoNotesEdit
Definition tab_moderation.h:76
Definition tab_supervisor.h:92
Tab(TabSupervisor *_tabSupervisor)
Definition tab.cpp:16
Definition response.proto:11