void Splice(std::vector<RESETABLE<std::string> > & lhs, const std::vector<RESETABLE<std::string> > & rhs)
{
-for (size_t i = 0; i < lhs.size(); ++i)
+for (size_t i = 0; i < lhs.size() && i < rhs.size(); ++i)
lhs[i].splice(rhs[i]);
}
void ConvStringList(std::string value, std::vector<RESETABLE<std::string> > & res)
{
-value.erase(std::remove(value.begin(), value.end(), ' '), value.end());
Splice(res, Split<std::vector<RESETABLE<std::string> > >(value, ',', ConvString));
}
{
STG::SERVCONF proto(config.server.data(),
config.port.data(),
+ config.localAddress.data(),
+ config.localPort.data(),
config.userName.data(),
config.userPass.data());
return proto.GetUsers(GetUsersCallback, NULL) == STG::st_ok;
{
STG::SERVCONF proto(config.server.data(),
config.port.data(),
+ config.localAddress.data(),
+ config.localPort.data(),
config.userName.data(),
config.userPass.data());
return proto.GetUser(arg, GetUserCallback, NULL) == STG::st_ok;
{
STG::SERVCONF proto(config.server.data(),
config.port.data(),
+ config.localAddress.data(),
+ config.localPort.data(),
config.userName.data(),
config.userPass.data());
return proto.DelUser(arg, SimpleCallback, NULL) == STG::st_ok;
SGCONF::MaybeSet(options, "month-traffic", stat, ConvMonthTraff);
STG::SERVCONF proto(config.server.data(),
config.port.data(),
+ config.localAddress.data(),
+ config.localPort.data(),
config.userName.data(),
config.userPass.data());
return proto.AddUser(arg, conf, stat, SimpleCallback, NULL) == STG::st_ok;
SGCONF::MaybeSet(options, "month-traffic", stat, ConvMonthTraff);
STG::SERVCONF proto(config.server.data(),
config.port.data(),
+ config.localAddress.data(),
+ config.localPort.data(),
config.userName.data(),
config.userPass.data());
return proto.ChgUser(arg, conf, stat, SimpleCallback, NULL) == STG::st_ok;
throw SGCONF::ACTION::ERROR("Password is not specified.");
STG::SERVCONF proto(config.server.data(),
config.port.data(),
+ config.localAddress.data(),
+ config.localPort.data(),
config.userName.data(),
config.userPass.data());
return proto.CheckUser(arg, it->second, SimpleCallback, NULL) == STG::st_ok;
std::string text = it->second;
STG::SERVCONF proto(config.server.data(),
config.port.data(),
+ config.localAddress.data(),
+ config.localPort.data(),
config.userName.data(),
config.userPass.data());
return proto.SendMessage(logins, text, SimpleCallback, NULL) == STG::st_ok;
.Add("get-users", SGCONF::MakeAPIAction(commands, GetUsersFunction), "\tget user list")
.Add("get-user", SGCONF::MakeAPIAction(commands, "<login>", GetUserFunction), "get user")
.Add("add-user", SGCONF::MakeAPIAction(commands, "<login>", params, AddUserFunction), "add user")
- .Add("del-user", SGCONF::MakeAPIAction(commands, "<login>", DelUserFunction), "del user")
+ .Add("del-user", SGCONF::MakeAPIAction(commands, "<login>", DelUserFunction), "delete user")
.Add("chg-user", SGCONF::MakeAPIAction(commands, "<login>", params, ChgUserFunction), "change user")
.Add("check-user", SGCONF::MakeAPIAction(commands, "<login>", GetCheckParams(), CheckUserFunction), "check user existance and credentials")
.Add("send-message", SGCONF::MakeAPIAction(commands, GetMessageParams(), SendMessageFunction), "send message");