X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=src%2Fchannels.cpp;h=320fcab784e081bf4e9aeb773514feb20a4528c5;hb=130e4e9b43bd6d9190474eadb4ddbb2c50f6279a;hp=befc1f133ea555de6c3f7e066ec42a5ed30402e8;hpb=f6b33a8facd6ca200292786c1061782c41cdd278;p=user%2Fhenk%2Fcode%2Finspircd.git diff --git a/src/channels.cpp b/src/channels.cpp index befc1f133..320fcab78 100644 --- a/src/channels.cpp +++ b/src/channels.cpp @@ -1,13 +1,15 @@ /* * InspIRCd -- Internet Relay Chat Daemon * + * Copyright (C) 2017 B00mX0r + * Copyright (C) 2013-2014, 2016-2019 Sadie Powell + * Copyright (C) 2013 Adam + * Copyright (C) 2012-2016, 2018 Attila Molnar + * Copyright (C) 2012, 2019 Robby * Copyright (C) 2009-2010 Daniel De Graaf - * Copyright (C) 2006-2008 Robin Burchell - * Copyright (C) 2006, 2008 Oliver Lupton - * Copyright (C) 2008 Pippijn van Steenhoven - * Copyright (C) 2003-2008 Craig Edwards - * Copyright (C) 2008 Thomas Stagner + * Copyright (C) 2007-2009 Robin Burchell * Copyright (C) 2007 Dennis Friis + * Copyright (C) 2006-2008, 2010 Craig Edwards * * This file is part of InspIRCd. InspIRCd is free software: you can * redistribute it and/or modify it under the terms of the GNU General Public @@ -176,6 +178,8 @@ Channel* Channel::JoinUser(LocalUser* user, std::string cname, bool override, co if (!override) { unsigned int maxchans = user->GetClass()->maxchans; + if (!maxchans) + maxchans = ServerInstance->Config->MaxChans; if (user->IsOper()) { unsigned int opermaxchans = ConvToNum(user->oper->getConfig("maxchans")); @@ -471,10 +475,11 @@ const char* Channel::ChanModes(bool showsecret) return scratch.c_str(); } -void Channel::WriteNotice(const std::string& text) +void Channel::WriteNotice(const std::string& text, char status) { - ClientProtocol::Messages::Privmsg privmsg(ClientProtocol::Messages::Privmsg::nocopy, ServerInstance->FakeClient, this, text, MSG_NOTICE); + ClientProtocol::Messages::Privmsg privmsg(ClientProtocol::Messages::Privmsg::nocopy, ServerInstance->FakeClient, this, text, MSG_NOTICE, status); Write(ServerInstance->GetRFCEvents().privmsg, privmsg); + ServerInstance->PI->SendMessage(this, status, text, MSG_NOTICE); } /* returns the status character for a given user on a channel, e.g. @ for op,