X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fusers.cpp;h=7437e8a209f83baea1e3345608785616883e1732;hb=5fbb5a0b2c5c08f76f99bd03b51bce2164feade3;hp=11f103e9ddcba87646893540ceff7260ebfd141a;hpb=42b7f65a06e9307bf18deff2837535730b895d4a;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/users.cpp b/src/users.cpp index 11f103e9d..7437e8a20 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -811,7 +811,8 @@ void User::WriteNumeric(const Numeric::Numeric& numeric) if (MOD_RESULT == MOD_RES_DENY) return; - this->Write(BuildNumeric(ServerInstance->Config->ServerName, this, numeric.GetNumeric(), numeric.GetParams())); + const std::string& servername = (numeric.GetServer() ? numeric.GetServer()->GetName() : ServerInstance->Config->ServerName); + this->Write(BuildNumeric(servername, this, numeric.GetNumeric(), numeric.GetParams())); } void User::WriteFrom(User *user, const std::string &text) @@ -830,6 +831,16 @@ void User::WriteFrom(User *user, const char* text, ...) this->WriteFrom(user, textbuffer); } +void User::WriteRemoteNotice(const std::string& text) +{ + ServerInstance->PI->SendUserNotice(this, text); +} + +void LocalUser::WriteRemoteNotice(const std::string& text) +{ + WriteNotice(text); +} + namespace { class WriteCommonRawHandler : public User::ForEachNeighborHandler @@ -937,27 +948,9 @@ void User::SendText(const char *text, ...) SendText(line); } -void User::SendText(const std::string& linePrefix, std::stringstream& textStream) -{ - std::string line; - std::string word; - while (textStream >> word) - { - size_t lineLength = linePrefix.length() + line.length() + word.length() + 3; // "\s\n\r" - if (lineLength > ServerInstance->Config->Limits.MaxLine) - { - SendText(linePrefix + line); - line.clear(); - } - line += " " + word; - } - SendText(linePrefix + line); -} - void User::WriteRemoteNumeric(const Numeric::Numeric& numeric) { - const std::string& servername = (numeric.GetServer() ? numeric.GetServer()->GetName() : ServerInstance->Config->ServerName); - SendText(BuildNumeric(servername, this, numeric.GetNumeric(), numeric.GetParams())); + WriteNumeric(numeric); } /* return 0 or 1 depending if users u and u2 share one or more common channels