/*
* InspIRCd -- Internet Relay Chat Daemon
*
- * Copyright (C) 2019 Peter Powell <petpow@saberuk.com>
- * Copyright (C) 2007 Craig Edwards <craigedwards@brainbox.cc>
+ * Copyright (C) 2013, 2017, 2019-2020 Sadie Powell <sadie@witchery.services>
+ * Copyright (C) 2012, 2019 Robby <robby@chatbelgie.be>
+ * Copyright (C) 2012 Attila Molnar <attilamolnar@hush.com>
+ * Copyright (C) 2009-2010 Daniel De Graaf <danieldg@inspircd.org>
+ * Copyright (C) 2007 Craig Edwards <brain@inspircd.org>
*
* 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
private:
SimpleUserModeHandler mode;
- ModResult HandleMessage(User* user, const MessageTarget& target) CXX11_OVERRIDE
+ ModResult HandleMessage(User* user, const MessageTarget& target)
{
if (target.type != MessageTarget::TYPE_USER)
return MOD_RES_PASSTHRU;
User* targuser = target.Get<User>();
- if (!targuser->IsModeSet(mode) || !user->SharesChannelWith(targuser))
+ if (!targuser->IsModeSet(mode) || user->SharesChannelWith(targuser))
return MOD_RES_PASSTHRU;
if (user->HasPrivPermission("users/ignore-commonchans") || user->server->IsULine())
return MOD_RES_PASSTHRU;
- user->WriteNumeric(ERR_CANTSENDTOUSER, targuser->nick, "You are not permitted to send private messages to this user (+c set)");
+ user->WriteNumeric(Numerics::CannotSendTo(targuser, "messages", &mode));
return MOD_RES_DENY;
}
Version GetVersion() CXX11_OVERRIDE
{
- return Version("Adds user mode +c which requires users to share a common channel with you to private message you", VF_VENDOR);
+ return Version("Adds user mode c (deaf_commonchan) which requires users to have a common channel before they can privately message each other.", VF_VENDOR);
}
ModResult OnUserPreMessage(User* user, const MessageTarget& target, MessageDetails& details) CXX11_OVERRIDE