From 1d4db8b86d02a48c3c74c5f8c6a0bc3e62e0e49c Mon Sep 17 00:00:00 2001 From: "dane dane@31f1291d-b8d6-0310-a050-a5561fc1590b" Date: Tue, 15 Mar 2005 15:39:14 +0000 Subject: BUILD : 1.7.8 (625) BUGS : 319 NOTES : Globalized do_getkey by DrStein. git-svn-id: svn://svn.anope.org/anope/trunk@625 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@473 5417fbe8-f217-4b02-8779-1006273d7864 --- src/chanserv.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'src') diff --git a/src/chanserv.c b/src/chanserv.c index 801e6c47c..d373e9f95 100644 --- a/src/chanserv.c +++ b/src/chanserv.c @@ -6234,14 +6234,20 @@ static int do_getkey(User * u) char *chan = strtok(NULL, " "); ChannelInfo *ci; - if (chan && (ci = cs_findchan(chan)) && !(ci->flags & CI_VERBOTEN) - && check_access(u, ci, CA_GETKEY)) { - notice_user(s_ChanServ, u, "KEY %s %s", ci->name, - (ci-> - c ? (ci->c->key ? ci->c->key : "NO KEY") : "NO KEY")); + if (!chan) { + syntax_error(s_ChanServ, u, "GETKEY", CHAN_GETKEY_SYNTAX); + } else if (!(ci = cs_findchan(chan))) { + notice_lang(s_ChanServ, u, CHAN_X_NOT_REGISTERED, chan); + } else if (ci->flags & CI_VERBOTEN) { + notice_lang(s_ChanServ, u, CHAN_X_FORBIDDEN, chan); + } else if (!check_access(u, ci, CA_GETKEY)) { + notice_lang(s_ChanServ, u, ACCESS_DENIED); + } else if (!ci->c || !ci->c->key) { + notice_lang(s_ChanServ, u, CHAN_GETKEY_NOKEY, chan); } else { - notice_user(s_ChanServ, u, "KEY %s ERROR", chan); + notice_lang(s_ChanServ, u, CHAN_GETKEY_KEY, chan, ci->c->key); } + return MOD_CONT; } -- cgit