]> git.stg.codes - stg.git/blobdiff - projects/stargazer/plugins/configuration/sgconfig/parser_admin.cpp
Use unicode for messages. Convert before sending.
[stg.git] / projects / stargazer / plugins / configuration / sgconfig / parser_admin.cpp
index 9d87f30047bc434e8d6688451cb713fd2ef990b4..d93b3448f013efa4d8d6223afa39b6e02c182f95 100644 (file)
@@ -45,17 +45,16 @@ answerList->push_back("<Admins>");
 ADMIN_CONF ac;
 int h = admins->OpenSearch();
 
 ADMIN_CONF ac;
 int h = admins->OpenSearch();
 
-unsigned int p;
 while (admins->SearchNext(h, &ac) == 0)
     {
     //memcpy(&p, &ac.priv, sizeof(unsigned int));
 while (admins->SearchNext(h, &ac) == 0)
     {
     //memcpy(&p, &ac.priv, sizeof(unsigned int));
-    p = (ac.priv.userStat << 0) +
-        (ac.priv.userConf << 2) +
-        (ac.priv.userCash << 4) +
-        (ac.priv.userPasswd << 6) +
-        (ac.priv.userAddDel << 8) +
-        (ac.priv.adminChg << 10) +
-        (ac.priv.tariffChg << 12);
+    unsigned int p = (ac.priv.userStat << 0) +
+                     (ac.priv.userConf << 2) +
+                     (ac.priv.userCash << 4) +
+                     (ac.priv.userPasswd << 6) +
+                     (ac.priv.userAddDel << 8) +
+                     (ac.priv.adminChg << 10) +
+                     (ac.priv.tariffChg << 12);
     strprintf(&s, "<admin login=\"%s\" priv=\"%d\"/>", ac.login.c_str(), p);
     answerList->push_back(s);
     }
     strprintf(&s, "<admin login=\"%s\" priv=\"%d\"/>", ac.login.c_str(), p);
     answerList->push_back(s);
     }
@@ -105,20 +104,6 @@ else
     }
 }
 //-----------------------------------------------------------------------------
     }
 }
 //-----------------------------------------------------------------------------
-int PARSER_DEL_ADMIN::CheckAttr(const char **attr)
-{
-/*  <DelAdmin login=\"admin\">
- *  attr[0] = "login" (word login)
- *  attr[1] = login, value of login
- *  attr[2] = NULL                  */
-
-if (strcasecmp(attr[0], "login") == 0 && attr[1] && !attr[2])
-    {
-    return 0;
-    }
-return -1;
-}
-//-----------------------------------------------------------------------------
 //  ADD ADMIN
 //-----------------------------------------------------------------------------
 int PARSER_ADD_ADMIN::ParseStart(void *, const char *el, const char **attr)
 //  ADD ADMIN
 //-----------------------------------------------------------------------------
 int PARSER_ADD_ADMIN::ParseStart(void *, const char *el, const char **attr)
@@ -213,11 +198,11 @@ void PARSER_CHG_ADMIN::CreateAnswer()
 answerList->erase(answerList->begin(), answerList->end());
 
 
 answerList->erase(answerList->begin(), answerList->end());
 
 
-if (!login.res_empty())
+if (!login.empty())
     {
     ADMIN * origAdmin = NULL;
 
     {
     ADMIN * origAdmin = NULL;
 
-    if (admins->Find(login, &origAdmin))
+    if (admins->Find(login.data(), &origAdmin))
         {
         answerList->push_back(std::string("<ChgAdmin Result = \"Admin '") + login.data() + "' is not found.\"/>");
         return;
         {
         answerList->push_back(std::string("<ChgAdmin Result = \"Admin '") + login.data() + "' is not found.\"/>");
         return;
@@ -225,10 +210,10 @@ if (!login.res_empty())
 
     ADMIN_CONF conf(origAdmin->GetConf());
 
 
     ADMIN_CONF conf(origAdmin->GetConf());
 
-    if (!password.res_empty())
+    if (!password.empty())
         conf.password = password.data();
 
         conf.password = password.data();
 
-    if (!privAsString.res_empty())
+    if (!privAsString.empty())
         {
         int p = 0;
         if (str2x(privAsString.data().c_str(), p) < 0)
         {
         int p = 0;
         if (str2x(privAsString.data().c_str(), p) < 0)