]> git.stg.codes - stg.git/blobdiff - projects/stargazer/users.cpp
Виправлено роботу з перекодуванням рядків
[stg.git] / projects / stargazer / users.cpp
index 9a219be6ca667a9b122833d5d5aac6a00cef374e..e2f326e05e84e1a565d015a9a669e63c68611199 100644 (file)
@@ -144,7 +144,7 @@ if (store->AddUser(login))
 
 USER u(settings, store, tariffs, sysAdmin, &ipIndex);
 
-struct tm * tms;
+/*struct tm * tms;
 time_t t = stgTime;
 
 tms = localtime(&t);
@@ -156,7 +156,7 @@ tms->tm_sec = 0;
 if (settings->GetDayResetTraff() > tms->tm_mday)
     tms->tm_mon -= 1;
 
-tms->tm_mday = settings->GetDayResetTraff();
+tms->tm_mday = settings->GetDayResetTraff();*/
 
 u.SetLogin(login);
 
@@ -352,9 +352,6 @@ return NULL;
 //-----------------------------------------------------------------------------
 void USERS::NewMinute(const struct tm * t)
 {
-int usersCnt = 0;
-list<USER>::iterator usr;
-
 //Write traff, reset session traff. Fake disconnect-connect
 if (t->tm_hour == 23 && t->tm_min == 59)
     {
@@ -365,11 +362,10 @@ if (t->tm_hour == 23 && t->tm_min == 59)
 if (TimeToWriteDetailStat(t))
     {
     //printfd(__FILE__, "USER::WriteInetStat\n");
-    //for_each(users.begin(), users.end(), mem_fun_ref(&USER::SwapDetailStat));
-    usersCnt = 0;
+    int usersCnt = 0;
 
     // ðÉÛÅÍ ÀÚÅÒÏ× ÞÁÓÔÑÍÉ. ÷ ÐÅÒÅÒÙ×ÁÈ ×ÙÚÙ×ÁÅÍ USER::Run
-    usr = users.begin();
+    list<USER>::iterator usr = users.begin();
     while (usr != users.end())
         {
         usersCnt++;
@@ -378,8 +374,6 @@ if (TimeToWriteDetailStat(t))
         if (usersCnt % 10 == 0)
             for_each(users.begin(), users.end(), mem_fun_ref(&USER::Run));
         }
-
-    //for_each(users.begin(), users.end(), mem_fun_ref(&USER::ResetDetailStat));
     }
 
 RealDelUser();
@@ -495,8 +489,13 @@ if (isRunning)
 
 printfd(__FILE__, "Before USERS::Run()\n");
 for_each(users.begin(), users.end(), mem_fun_ref(&USER::Run));
-//for_each(users.begin(), users.end(), mem_fun_ref(&USER::SwapDetailStat));
-for_each(users.begin(), users.end(), bind2nd(mem_fun_ref(&USER::WriteDetailStat), true));
+
+// 'cause bind2st accepts only constant first param
+for (list<USER>::iterator it = users.begin();
+     it != users.end();
+     ++it)
+    it->WriteDetailStat(true);
+
 for_each(users.begin(), users.end(), mem_fun_ref(&USER::WriteStat));
 for_each(users.begin(), users.end(), mem_fun_ref(&USER::WriteConf));
 
@@ -753,16 +752,3 @@ switch (statTime)
     }
 return false;
 }
-//-----------------------------------------------------------------------------
-/*int USERS::SendMessage(const string & login,
-                       time_t sndTtime,
-                       time_t showTime,
-                       char type,
-                       const string & text) const
-{
-return 0;
-}*/
-//-----------------------------------------------------------------------------
-
-
-