]> git.stg.codes - stg.git/blobdiff - projects/stargazer/plugins/configuration/rpcconfig/info_methods.cpp
Do not flush indexes on stop (fixes #44).
[stg.git] / projects / stargazer / plugins / configuration / rpcconfig / info_methods.cpp
index fdb56048f5b112d4626dd1a473213dd2aff9661f..7d3afacaecaf1134682bb99c2bc3839f350d6bea 100644 (file)
@@ -1,7 +1,10 @@
-#include "info_methods.h"
-
 #include <sys/utsname.h>
-#include "version.h"
+
+#include <ostream> // xmlrpc-c devs have missed something :)
+
+#include "stg/version.h"
+#include "stg/common.h"
+#include "info_methods.h"
 #include "rpcconfig.h"
 
 void METHOD_INFO::execute(xmlrpc_c::paramList const & paramList,
@@ -25,20 +28,18 @@ un += " ";
 un += utsn.nodename;
 
 structVal["version"] = xmlrpc_c::value_string(SERVER_VERSION);
-structVal["tariff_num"] = xmlrpc_c::value_int(tariffs->GetTariffsNum());
+structVal["tariff_num"] = xmlrpc_c::value_int(static_cast<int>(tariffs->Count()));
 structVal["tariff"] = xmlrpc_c::value_int(2);
-structVal["users_num"] = xmlrpc_c::value_int(users->GetUserNum());
+structVal["users_num"] = xmlrpc_c::value_int(static_cast<int>(users->Count()));
 structVal["uname"] = xmlrpc_c::value_string(un);
 structVal["dir_num"] = xmlrpc_c::value_int(DIR_NUM);
-structVal["day_fee"] = xmlrpc_c::value_int(settings->GetDayFee());
+structVal["day_fee"] = xmlrpc_c::value_int(static_cast<int>(dayFee));
 
 std::vector<xmlrpc_c::value> dirnameVal;
 
 for (int i = 0; i< DIR_NUM; i++)
     {
-    string dn2e;
-    Encode12str(dn2e, settings->GetDirName(i));
-    dirnameVal.push_back(xmlrpc_c::value_string(dn2e));
+    dirnameVal.push_back(xmlrpc_c::value_string(IconvString(dirNames[i], "KOI8-RU", "UTF-8")));
     }
 
 structVal["dir_names"] = xmlrpc_c::value_array(dirnameVal);
@@ -76,8 +77,6 @@ void METHOD_LOGOUT::execute(xmlrpc_c::paramList const & paramList,
 std::string cookie = paramList.getString(0);
 paramList.verifyEnd(1);
 
-std::map<std::string, xmlrpc_c::value> structVal;
-
 if (config->LogoutAdmin(cookie))
     {
     *retvalPtr = xmlrpc_c::value_boolean(false);