]> git.stg.codes - stg.git/blobdiff - projects/sgconf/common_sg.cpp
Allowed to use dot in entity name.
[stg.git] / projects / sgconf / common_sg.cpp
index 77d7476fd02c33feff1c88c0153e6b4b16a829ab..3d0151602d18c948c45c95177dd701cdc696320d 100644 (file)
 #include <iostream>
 #include <iconv.h>
 
+#include "stg/common.h"
+#include "sg_error_codes.h"
 #include "common_sg.h"
 #include "version_sg.h"
-#include "common.h"
-#include "sg_error_codes.h"
 
 using namespace std;
 
@@ -81,6 +81,7 @@ HelpParams hp[] =
 {
     {"set tariff",              "get tariff",           "-t",   "<tariff:now|delayed>"},
     {"set credit",              "get credit",           "-r",   "<credit>"},
+    {"set credit expire",       "get credit expire",    "-E",   "<credit_expire_date>"},
     {"set password",            "get password",         "-o",   "<new_password>"},
     {"set prepaid traffic",     "get prepaid traffic",  "-e",   "<prepaid>"},
     {"set IP-addresses",       "get IP-addresses",     "-I",   "<*|ip_addr[,ip_addr...]>"},
@@ -148,6 +149,7 @@ for (int i = 0; i < (int)strlen(login); i++)
     if (!(( login[i] >= 'a' && login[i] <= 'z')
         || (login[i] >= 'A' && login[i] <= 'Z')
         || (login[i] >= '0' && login[i] <= '9')
+        ||  login[i] == '.'
         ||  login[i] == '_'
         ||  login[i] == '-'))
         {
@@ -218,12 +220,12 @@ char charsetT[100];
 if (encType == TO_KOI8)
     {
     strcpy(charsetF, nl_langinfo(CODESET));
-    strcpy(charsetT, "koi8-r");
+    strcpy(charsetT, "koi8-ru");
     }
 else
     {
     strcpy(charsetT, nl_langinfo(CODESET));
-    strcpy(charsetF, "koi8-r");
+    strcpy(charsetF, "koi8-ru");
     }
 
 size_t nconv = 1;
@@ -330,6 +332,26 @@ if (!req->cash.res_empty())
 if (!req->credit.res_empty())
     cout << "credit=" << ud->credit << endl;
 
+if (!req->creditExpire.res_empty())
+    {
+    char buf[32];
+    struct tm brokenTime;
+    time_t tt = ud->creditExpire;
+
+    brokenTime.tm_wday = 0;
+    brokenTime.tm_yday = 0;
+    brokenTime.tm_isdst = 0;
+    brokenTime.tm_hour = 0;
+    brokenTime.tm_min = 0;
+    brokenTime.tm_sec = 0;
+
+    gmtime_r(&tt, &brokenTime);
+
+    strftime(buf, 32, "%Y-%m-%d", &brokenTime);
+
+    cout << "creditExpire=" << buf << endl;
+    }
+
 if (!req->down.res_empty())
     cout << "down=" << ud->down << endl;
 
@@ -475,5 +497,3 @@ else
 return 0;
 }
 //-----------------------------------------------------------------------------
-
-