From: pk910 Date: Sat, 8 Sep 2012 16:05:00 +0000 (+0200) Subject: fixed multi-/zerobot support for cmd_neonserv_set trigger X-Git-Url: http://git.pk910.de/?p=NeonServV5.git;a=commitdiff_plain;h=c1964490c160329a4067f08cdf6e2394c8622f7d fixed multi-/zerobot support for cmd_neonserv_set trigger --- diff --git a/src/modules/NeonServ.mod/cmd_neonserv_set.c b/src/modules/NeonServ.mod/cmd_neonserv_set.c index 56b9f2a..2b78097 100644 --- a/src/modules/NeonServ.mod/cmd_neonserv_set.c +++ b/src/modules/NeonServ.mod/cmd_neonserv_set.c @@ -367,7 +367,10 @@ static char* neonserv_cmd_set_trigger(struct ClientSocket *client, struct Client //get current trigger MYSQL_RES *res; MYSQL_ROW row; - printf_mysql_query("SELECT `trigger`, `defaulttrigger` FROM `bot_channels` LEFT JOIN `bots` ON `botid` = `bots`.`id` WHERE `chanid` = '%d' AND `botid` = '%d'", chan->channel_id, client->clientid); + if(client->botid) + printf_mysql_query("SELECT `trigger`, `defaulttrigger`, `id` FROM `bot_channels` LEFT JOIN `bots` ON `botid` = `bots`.`id` WHERE `chanid` = '%d' AND `botclass` = '%d'", chan->channel_id, client->botid); + else + printf_mysql_query("SELECT `trigger`, `defaulttrigger`, `id` FROM `bot_channels` LEFT JOIN `bots` ON `botid` = `bots`.`id` WHERE `chanid` = '%d' AND `botid` = '%d'", chan->channel_id, client->clientid); res = mysql_use(); row = mysql_fetch_row(res); trigger = (row[0] ? row[0] : row[1]); @@ -383,9 +386,12 @@ static char* neonserv_cmd_set_trigger(struct ClientSocket *client, struct Client } if(strlen(argument) > 15) argument[15] = '\0'; - printf_mysql_query("UPDATE `bot_channels` SET `trigger` = '%s' WHERE `chanid` = '%d' AND `botid` = '%d'", escape_string(argument), chan->channel_id, client->clientid); + printf_mysql_query("UPDATE `bot_channels` SET `trigger` = '%s' WHERE `id` = '%d'", escape_string(argument), row[2]); trigger = argument; - changeChannelTrigger(client->botid, chan, trigger); + if(client->botid) + changeChannelTrigger(client->botid, chan, trigger); + else + changeBotwiseChannelTrigger(client->botid, client->clientid, chan, trigger); logEvent(event); } if(setting) {