]>
jfr.im git - irc/quakenet/newserv.git/blob - chanserv/chancmds/chantype.c
1 /* Automatically generated by refactor.pl.
7 * CMDDESC: Shows or changes a channel's type.
8 * CMDFUNC: csc_dochantype
9 * CMDPROTO: int csc_dochantype(void *source, int cargc, char **cargv);
10 * CMDHELP: Usage: chantype <channel> [<channel type>]
11 * CMDHELP: Views or changes the channel type for the specified 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_dochantype(void *source
, int cargc
, char **cargv
) {
32 chanservstdmessage(sender
, QM_NOTENOUGHPARAMS
, "chantype");
36 if (!(cip
=findchanindex(cargv
[0])) || !(rcp
=cip
->exts
[chanservext
])) {
37 chanservstdmessage(sender
, QM_UNKNOWNCHAN
, cargv
[0]);
43 for (type
=CHANTYPES
-1;type
;type
--) {
44 if (!ircd_strcmp(chantypes
[type
]->content
, cargv
[1]))
48 chanservstdmessage(sender
, QM_UNKNOWNCHANTYPE
, cargv
[1]);
53 csdb_updatechannel(rcp
);
54 chanservstdmessage(sender
, QM_DONE
);
57 chanservstdmessage(sender
, QM_CHANTYPEIS
, cip
->name
->content
, chantypes
[rcp
->chantype
]->content
);