X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/641204dfbdb9fc870cdd2e7f9e3169a44693e7bf..722a4fd38336dab14e00cb60c9e0c17867a0240e:/stglibs/srvconf.lib/parser.cpp diff --git a/stglibs/srvconf.lib/parser.cpp b/stglibs/srvconf.lib/parser.cpp index 7c96b2ed..89b2457c 100644 --- a/stglibs/srvconf.lib/parser.cpp +++ b/stglibs/srvconf.lib/parser.cpp @@ -40,23 +40,15 @@ using namespace std; -//----------------------------------------------------------------------------- -PARSER::PARSER() -{ -} //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- PARSER_GET_USERS::PARSER_GET_USERS() + : RecvUserDataCb(NULL), + userDataCb(NULL), + depth(0), + error(false) { -depth = 0; -error = false; -RecvUserDataCb = NULL; -} -//----------------------------------------------------------------------------- -void PARSER_GET_USERS::Reset() -{ - } //----------------------------------------------------------------------------- int PARSER_GET_USERS::ParseStart(const char *el, const char **attr) @@ -173,6 +165,14 @@ if (strcasecmp(el, "credit") == 0) } } +if (strcasecmp(el, "creditExpire") == 0) + { + if (str2x(attr[1], user.creditExpire) < 0) + { + return; + } + } + /*if (strcasecmp(el, "freemb") == 0) { if (strtodouble2(attr[1], user.freeMb) < 0) @@ -385,15 +385,11 @@ userDataCb = data; //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- PARSER_GET_USER::PARSER_GET_USER() + : RecvUserDataCb(NULL), + userDataCb(NULL), + depth(0), + error(false) { -depth = 0; -error = false; -RecvUserDataCb = NULL; -} -//----------------------------------------------------------------------------- -void PARSER_GET_USER::Reset() -{ - } //----------------------------------------------------------------------------- int PARSER_GET_USER::ParseStart(const char *el, const char **attr) @@ -530,6 +526,14 @@ if (strcasecmp(el, "currip") == 0) user.ip = inet_addr(attr[1]); } +if (strcasecmp(el, "creditExpire") == 0) + { + if (str2x(attr[1], user.creditExpire) < 0) + { + return; + } + } + for (int i = 0; i < USERDATA_NUM; i++) { string num; @@ -658,15 +662,11 @@ userDataCb = data; //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- PARSER_GET_SERVER_INFO::PARSER_GET_SERVER_INFO() + : RecvServerInfoDataCb(NULL), + serverInfoDataCb(NULL), + depth(0), + error(false) { -depth = 0; -error = false; -RecvServerInfoDataCb = NULL; -} -//----------------------------------------------------------------------------- -void PARSER_GET_SERVER_INFO::Reset() -{ - } //----------------------------------------------------------------------------- int PARSER_GET_SERVER_INFO::ParseStart(const char *el, const char **attr) @@ -821,10 +821,11 @@ if (strcmp(attr[0], "value") == 0) //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- PARSER_CHG_USER::PARSER_CHG_USER() + : RecvChgUserCb(NULL), + chgUserCbData(NULL), + depth(0), + error(false) { -depth = 0; -error = false; -RecvChgUserCb = NULL; } //----------------------------------------------------------------------------- int PARSER_CHG_USER::ParseStart(const char *el, const char **attr) @@ -851,11 +852,6 @@ return 0; void PARSER_CHG_USER::ParseEnd(const char *) { depth--; -} -//----------------------------------------------------------------------------- -void PARSER_CHG_USER::Reset() -{ - } //----------------------------------------------------------------------------- void PARSER_CHG_USER::ParseAnswer(const char *, const char **attr) @@ -875,10 +871,11 @@ chgUserCbData = data; //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- PARSER_CHECK_USER::PARSER_CHECK_USER() + : RecvCheckUserCb(NULL), + checkUserCbData(NULL), + depth(0), + error(false) { -depth = 0; -error = false; -RecvCheckUserCb = NULL; } //----------------------------------------------------------------------------- int PARSER_CHECK_USER::ParseStart(const char *el, const char **attr) @@ -917,10 +914,11 @@ checkUserCbData = data; //----------------------------------------------------------------------------- //----------------------------------------------------------------------------- PARSER_SEND_MESSAGE::PARSER_SEND_MESSAGE() + : RecvSendMessageCb(NULL), + sendMessageCbData(NULL), + depth(0), + error(false) { -depth = 0; -error = false; -RecvSendMessageCb = NULL; } //----------------------------------------------------------------------------- int PARSER_SEND_MESSAGE::ParseStart(const char *el, const char **attr) @@ -939,11 +937,6 @@ return 0; void PARSER_SEND_MESSAGE::ParseEnd(const char *) { depth--; -} -//----------------------------------------------------------------------------- -void PARSER_SEND_MESSAGE::Reset() -{ - } //----------------------------------------------------------------------------- void PARSER_SEND_MESSAGE::ParseAnswer(const char *, const char **attr) @@ -958,4 +951,3 @@ RecvSendMessageCb = f; sendMessageCbData = data; } //----------------------------------------------------------------------------- -