X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/60995b1933ff94757d2d29629f324d16070de1ea..8e4f33741f54f48c28f04e74f1f3c0757723c111:/projects/stargazer/users_impl.h?ds=sidebyside diff --git a/projects/stargazer/users_impl.h b/projects/stargazer/users_impl.h index 70a5b9bd..0cba7893 100644 --- a/projects/stargazer/users_impl.h +++ b/projects/stargazer/users_impl.h @@ -71,10 +71,15 @@ class USERS_IMPL : private NONCOPYABLE, public USERS { friend class PROPERTY_NOTIFER_IP_AFTER; public: - USERS_IMPL(SETTINGS_IMPL * s, STORE * store, TARIFFS * tariffs, const ADMIN * sysAdmin); + USERS_IMPL(SETTINGS_IMPL * s, STORE * store, + TARIFFS * tariffs, SERVICES & svcs, + const ADMIN * sysAdmin); virtual ~USERS_IMPL(); int FindByName(const std::string & login, USER_PTR * user); + int FindByName(const std::string & login, CONST_USER_PTR * user) const; + + bool Exists(const std::string & login) const; bool TariffInUse(const std::string & tariffName) const; @@ -124,6 +129,7 @@ private: bool FindByIPIdx(uint32_t ip, user_iter & iter) const; int FindByNameNonLock(const std::string & login, user_iter * user); + int FindByNameNonLock(const std::string & login, const_user_iter * user) const; void RealDelUser(); void ProcessActions(); @@ -146,6 +152,7 @@ private: SETTINGS_IMPL * settings; TARIFFS * tariffs; + SERVICES & m_services; STORE * store; const ADMIN * sysAdmin; STG_LOGGER & WriteServLog;