]> git.stg.codes - stg.git/commitdiff
Add verification exist parametr
authorNaffanya <naffanya@naffanya.(none)>
Tue, 31 Dec 2013 08:11:37 +0000 (10:11 +0200)
committerNaffanya <naffanya@naffanya.(none)>
Tue, 31 Dec 2013 08:11:37 +0000 (10:11 +0200)
include/stg/user_property.h
projects/stargazer/plugins/other/rscript/rscript.cpp
projects/stargazer/user_impl.cpp

index aee32e3e34a6bedb0949aeaac7e3c9344c7cb717..7d68e73410fc502ecf5ef8831dd4d7c090b474ba 100644 (file)
@@ -138,6 +138,7 @@ public:
     void SetProperties(const USER_PROPERTIES & p) { stat = p.stat; conf = p.conf; }
 
     std::string GetPropertyValue(const std::string & name) const;
+    bool                  Exists(const std::string & name) const;
 
     USER_PROPERTY_LOGGED<double>            cash;
     USER_PROPERTY_LOGGED<DIR_TRAFF>         up;
@@ -395,6 +396,13 @@ if (it == properties.end())
     return "";
 return it->second->ToString();
 }
+//-----------------------------------------------------------------------------
+inline
+bool USER_PROPERTIES::Exists(const std::string & name) const
+{
+if (properties.find(name)!=properties.end()) return true;
+return false;
+}
 //-------------------------------------------------------------------------
 //-------------------------------------------------------------------------
 //-------------------------------------------------------------------------
index fc733a67f4dcb744e99ecc3d623c9ada9648d496..640fc95ba20858325d9a037afb0adb317b9bcfb7 100644 (file)
@@ -516,86 +516,6 @@ for (size_t i = 0; i < netRouters.size(); ++i)
 return std::vector<uint32_t>();
 }
 //-----------------------------------------------------------------------------
-//std::string REMOTE_SCRIPT::GetUserParam(USER_PTR u, const std::string & paramName) const
-//{
-//std::string value = "";
-//if (strcasecmp(paramName.c_str(), "cash") == 0)
-//    strprintf(&value, "%f", u->GetProperty().cash.Get());
-//else
-//if (strcasecmp(paramName.c_str(), "freeMb") == 0)
-//    strprintf(&value, "%f", u->GetProperty().freeMb.Get());
-//else
-//if (strcasecmp(paramName.c_str(), "passive") == 0)
-//    strprintf(&value, "%d", u->GetProperty().passive.Get());
-//else
-//if (strcasecmp(paramName.c_str(), "disabled") == 0)
-//    strprintf(&value, "%d", u->GetProperty().disabled.Get());
-//else
-//if (strcasecmp(paramName.c_str(), "alwaysOnline") == 0)
-//    strprintf(&value, "%d", u->GetProperty().alwaysOnline.Get());
-//else
-//if (strcasecmp(paramName.c_str(), "tariffName") == 0 ||
-//    strcasecmp(paramName.c_str(), "tariff") == 0)
-//    value = "\"" + u->GetProperty().tariffName.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "nextTariff") == 0)
-//    value = "\"" + u->GetProperty().nextTariff.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "address") == 0)
-//    value = "\"" + u->GetProperty().address.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "note") == 0)
-//    value = "\"" + u->GetProperty().note.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "group") == 0)
-//    value = "\"" + u->GetProperty().group.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "email") == 0)
-//    value = "\"" + u->GetProperty().email.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "realName") == 0)
-//    value = "\"" + u->GetProperty().realName.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "credit") == 0)
-//    strprintf(&value, "%f", u->GetProperty().credit.Get());
-//else
-//if (strcasecmp(paramName.c_str(), "userdata0") == 0)
-//    value = "\"" + u->GetProperty().userdata0.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "userdata1") == 0)
-//    value = "\"" + u->GetProperty().userdata1.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "userdata2") == 0)
-//    value = "\"" + u->GetProperty().userdata2.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "userdata3") == 0)
-//    value = "\"" + u->GetProperty().userdata3.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "userdata4") == 0)
-//    value = "\"" + u->GetProperty().userdata4.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "userdata5") == 0)
-//    value = "\"" + u->GetProperty().userdata5.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "userdata6") == 0)
-//    value = "\"" + u->GetProperty().userdata6.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "userdata7") == 0)
-//    value = "\"" + u->GetProperty().userdata7.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "userdata8") == 0)
-//    value = "\"" + u->GetProperty().userdata8.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "userdata9") == 0)
-//    value = "\"" + u->GetProperty().userdata9.Get() + "\"";
-//else
-//if (strcasecmp(paramName.c_str(), "enabledDirs") == 0)
-//    value = u->GetEnabledDirs();
-//else
-//    printfd(__FILE__, "Unknown value name: %s\n", paramName.c_str());
-//return value;
-//}
-//-----------------------------------------------------------------------------
 void REMOTE_SCRIPT::SetUserNotifiers(USER_PTR u)
 {
 ipNotifierList.push_front(RS::IP_NOTIFIER(*this, u));
index f3228738b92913039488bb568f4f845699ac717b..51637a1b88775a287bf6412a0f8128388053f6f4 100644 (file)
@@ -1474,16 +1474,24 @@ while (it != messages.end())
 //-----------------------------------------------------------------------------
 std::string USER_IMPL::GetParamValue(const std::string & name) const
 {
-if (name == "id")
+if (property.Exists(name))
     {
-    std::ostringstream stream;
-    stream << id;
-    return stream.str();
+    if (name == "id")
+        {
+        std::ostringstream stream;
+        stream << id;
+        return stream.str();
+        }
+    if (name == "login")        return login;
+    if (name == "ip")           return currIP.ToString();
+    if (name == "enabledDirs")  return GetEnabledDirs();
+    return property.GetPropertyValue(name);
+    }
+else
+    {
+    WriteServLog("Error getting parametr value", name.c_str());
+    return "";
     }
-if (name == "login")        return login;
-if (name == "ip")           return currIP.ToString();
-if (name == "enabledDirs")  return GetEnabledDirs();
-return property.GetPropertyValue(name);
 }
 //-----------------------------------------------------------------------------
 //-----------------------------------------------------------------------------