2 #include "cmd_neonserv.h"
7 CMD_BIND(neonserv_cmd_unregister) {
10 char *channel = argv[0];
11 if(!is_valid_chan(channel)) {
12 reply(getTextBot(), user, "NS_INVALID_CHANNEL_NAME", argv[0]);
16 printf_mysql_query("SELECT `channel_id` FROM `channels` WHERE `channel_name` = '%s'", escape_string(channel));
18 if ((row = mysql_fetch_row(res)) != NULL) {
19 chanid = atoi(row[0]);
21 reply(getTextBot(), user, "NS_UNREGISTER_NOT_REGISTERED", argv[0], client->user->nick);
24 printf_mysql_query("SELECT `botid`, `bot_channels`.`id`, `suspended` FROM `bot_channels` LEFT JOIN `bots` ON `bot_channels`.`botid` = `bots`.`id` WHERE `chanid` = '%d' AND `botclass` = '%d'", chanid, client->botid);
26 if ((row = mysql_fetch_row(res)) == NULL) {
27 reply(getTextBot(), user, "NS_UNREGISTER_NOT_REGISTERED", argv[0], client->user->nick);
30 int botid = atoi(row[0]);
31 struct ClientSocket *bot;
32 for(bot = getBots(SOCKET_FLAG_READY, NULL); bot; bot = getBots(SOCKET_FLAG_READY, bot)) {
33 if(bot->clientid == botid)
36 if(bot && strcmp(row[2], "1")) {
37 putsock(bot, "PART %s :Channel unregistered.", channel);
39 printf_mysql_query("DELETE FROM `bot_channels` WHERE `id` = '%s'", row[1]);
40 reply(getTextBot(), user, "NS_UNREGISTER_DONE", channel);