]>
jfr.im git - irc/quakenet/newserv.git/blob - chanserv/chancmds/cleartopic.c
3 * CMDLEVEL: QCMD_AUTHED
5 * CMDDESC: Clears the topic on a channel.
6 * CMDFUNC: csc_docleartopic
7 * CMDPROTO: int csc_docleartopic(void *source, int cargc, char **cargv);
8 * CMDHELP: Usage: CLEARTOPIC <channel>
9 * CMDHELP: Clears the topic on a channel, where:
10 * CMDHELP: channel - channel to use
11 * CMDHELP: CLEARTOPIC requires topic (+t) or master (+m) access on the named channel.
14 #include "../chanserv.h"
15 #include "../../nick/nick.h"
16 #include "../../lib/flags.h"
17 #include "../../lib/irc_string.h"
18 #include "../../channel/channel.h"
19 #include "../../parser/parser.h"
20 #include "../../irc/irc.h"
21 #include "../../localuser/localuserchannel.h"
25 int csc_docleartopic(void *source
, int cargc
, char **cargv
) {
31 chanservstdmessage(sender
, QM_NOTENOUGHPARAMS
, "cleartopic");
35 if (!(cip
=cs_checkaccess(sender
, cargv
[0], CA_TOPICPRIV
,
36 NULL
, "cleartopic", 0, 0)))
39 rcp
=cip
->exts
[chanservext
];
42 freesstring(rcp
->topic
);
47 localsettopic(chanservnick
, cip
->channel
, "");
50 chanservstdmessage(sender
, QM_DONE
);
51 csdb_updatechannel(rcp
);