1d001c95df7c3a27ced00ab2126501086acda631
[NeonServV5.git] / src / cmd_neonserv_downall.c
1
2 #include "cmd_neonserv.h"
3
4 /*
5 * no arguments
6 */
7
8 CMD_BIND(neonserv_cmd_downall) {
9     struct ChanUser *chanuser;
10     for(chanuser = getUserChannels(user, NULL); chanuser; chanuser = getUserChannels(user, chanuser)) {
11         chan = chanuser->chan;
12         loadChannelSettings(chan);
13         if(!(chan->flags & CHANFLAG_CHAN_REGISTERED)) continue;
14         printf_mysql_query("SELECT `botid` FROM `bot_channels` LEFT JOIN `bots` ON `bot_channels`.`botid` = `bots`.`id` WHERE `chanid` = '%d' AND `botclass` = '%d'", chan->channel_id, client->botid);
15         if (mysql_fetch_row(mysql_use()) == NULL) continue;
16         int done = 0;
17         if((chanuser->flags & CHANUSERFLAG_OPPED)) {
18             putsock(client, "MODE %s -o %s", chan->name, user->nick);
19             done = 1;
20         }
21         if((chanuser->flags & CHANUSERFLAG_VOICED)) {
22             putsock(client, "MODE %s -v %s", chan->name, user->nick);
23             done = 1;
24         }
25         if(done) {
26             //event hack
27             event->chan = chan;
28             logEvent(event);
29         }
30     }
31 }