X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/0b3f54e8d9366b135697ac1d96c15a85f55fcb62..bbdae00d5edd594d5260961cd8864836e9def175:/projects/stargazer/user_impl.h?ds=inline diff --git a/projects/stargazer/user_impl.h b/projects/stargazer/user_impl.h index 150f2a8b..75f02a0e 100644 --- a/projects/stargazer/user_impl.h +++ b/projects/stargazer/user_impl.h @@ -125,13 +125,15 @@ public: const STORE * store, const TARIFFS * tariffs, const ADMIN * sysAdmin, - const USERS * u); + const USERS * u, + const SERVICES & svcs); #else USER_IMPL(const SETTINGS_IMPL * settings, const STORE * store, const TARIFFS * tariffs, const ADMIN * sysAdmin, - const USERS * u); + const USERS * u, + const SERVICES & svcs); #endif USER_IMPL(const USER_IMPL & u); virtual ~USER_IMPL(); @@ -181,6 +183,8 @@ public: const DIR_TRAFF & GetSessionUpload() const { return sessionUpload; } const DIR_TRAFF & GetSessionDownload() const { return sessionDownload; } + time_t GetSessionUploadModificationTime() const { return sessionUploadModTime; } + time_t GetSessionDownloadModificationTime() const { return sessionDownloadModTime; } bool GetConnected() const { return connected; } time_t GetConnectedModificationTime() const { return connected.ModificationTime(); } @@ -198,7 +202,6 @@ public: void UpdatePingTime(time_t t = 0); time_t GetPingTime() const { return pingTime; } - void PrintUser() const; void Run(); const std::string & GetStrError() const { return errorStr; } @@ -216,9 +219,10 @@ public: void ProcessDayFeeSpread(); void ProcessNewMonth(); void ProcessDailyFee(); + void ProcessServices(); bool IsInetable(); - std::string GetEnabledDirs(); + std::string GetEnabledDirs() const; void OnAdd(); void OnDelete(); @@ -228,6 +232,8 @@ public: private: USER_IMPL & operator=(const USER_IMPL & rvalue); + void Init(); + const USERS * users; USER_PROPERTIES property; STG_LOGGER & WriteServLog; @@ -266,6 +272,8 @@ private: const TARIFFS * tariffs; const TARIFF * tariff; + const SERVICES & m_services; + TRAFF_STAT traffStat; std::pair traffStatSaved; @@ -325,6 +333,8 @@ private: DIR_TRAFF sessionUpload; DIR_TRAFF sessionDownload; + time_t sessionUploadModTime; + time_t sessionDownloadModTime; CHG_PASSIVE_NOTIFIER passiveNotifier; CHG_DISABLED_NOTIFIER disabledNotifier;