fhq-server  v0.2.33
Documentation for fhq-server. FreeHackQuest is an open source platform for competitions of computer security.
employ_scoreboard.h
Go to the documentation of this file.
1 #ifndef EMPLOY_SCOREBOARD_H
2 #define EMPLOY_SCOREBOARD_H
3 
4 #include <employees.h>
5 #include <json.hpp>
6 
8  public:
10  static std::string name() { return "EmployScoreboard"; }
11  virtual bool init();
12  virtual bool deinit() override;
13  void loadSync();
14  int count();
15  nlohmann::json toJson();
16 
17  void asyncUpdatedQuestScore(int nQuestID);
18  void asyncUpdatedUserRating(int nUserID);
19  void asyncUpdatedLeaksScore(int nUserID);
20 
21  private:
22  struct User{
23  int userid = 0;
24  std::string logo = "";
25  std::string nick = "";
26  std::string university = "";
27  };
28 
29  struct ScoreboardRow {
30  int place = 0;
31  int rating = 0;
32  std::vector<User *> vUsers;
33  };
34  std::vector<ScoreboardRow *> m_vRows;
35  int findScoreboardRowByRating(int rating);
36 };
37 
38 #endif // EMPLOY_SCOREBOARD_H
std::string nick
Definition: employ_scoreboard.h:25
virtual bool init()
Definition: employ_scoreboard.cpp:20
std::vector< User * > vUsers
Definition: employ_scoreboard.h:32
Definition: employ_scoreboard.h:7
std::string university
Definition: employ_scoreboard.h:26
int count()
Definition: employ_scoreboard.cpp:105
int userid
Definition: employ_scoreboard.h:23
EmployScoreboard()
Definition: employ_scoreboard.cpp:13
void asyncUpdatedQuestScore(int nQuestID)
Definition: employ_scoreboard.cpp:111
Definition: wsjcpp_employees.h:13
Definition: employ_scoreboard.h:29
Definition: employ_scoreboard.h:22
int findScoreboardRowByRating(int rating)
Definition: employ_scoreboard.cpp:68
std::string logo
Definition: employ_scoreboard.h:24
void asyncUpdatedLeaksScore(int nUserID)
Definition: employ_scoreboard.cpp:125
void loadSync()
Definition: employ_scoreboard.cpp:33
static std::string name()
Definition: employ_scoreboard.h:10
nlohmann::json toJson()
Definition: employ_scoreboard.cpp:79
virtual bool deinit() override
Definition: employ_scoreboard.cpp:26
std::vector< ScoreboardRow * > m_vRows
Definition: employ_scoreboard.h:34
void asyncUpdatedUserRating(int nUserID)
Definition: employ_scoreboard.cpp:118