X-Git-Url: http://git.pk910.de/?p=NeonServV5.git;a=blobdiff_plain;f=src%2Fcmd_global_register.c;h=61d3e909479900f8465cc558729054a732a49090;hp=08c172a17b7bc6eb9b969c2323e6e5a9e67292c1;hb=441876fc5090b0327600370347b7ef923636a508;hpb=1b3cffe710e805d2d95bc622f906d7d15440931d diff --git a/src/cmd_global_register.c b/src/cmd_global_register.c index 08c172a..61d3e90 100644 --- a/src/cmd_global_register.c +++ b/src/cmd_global_register.c @@ -53,6 +53,23 @@ CMD_BIND(global_cmd_register) { } else multibot = 1; } + printf_mysql_query("SELECT `user_user`, `dnr_timeout`, `dnr_reason`, `dnr_id` FROM `donotregister` LEFT JOIN `users` ON `dnr_user` = `user_id` WHERE `dnr_target` = '%s'", escape_string(channel)); + res = mysql_use(); + if((row = mysql_fetch_row(res)) != NULL) { + int expire_time = atoi(row[1]); + if(expire_time) { + if(expire_time - time(0) <= 0) { + printf_mysql_query("DELETE FROM `donotregister` WHERE `dnr_id` = '%s'", row[3]); + } else { + char expireBuf[MAXLEN]; + reply(getTextBot(), user, "NS_DNR_SET_EXPIRES", channel, row[0], timeToStr(user, (expire_time - time(0)), 2, expireBuf), row[2]); + return; + } + } else { + reply(getTextBot(), user, "NS_DNR_SET", channel, row[0], row[2]); + return; + } + } //if theres already another bot in the channel we don't need a owner parameter... if(multibot && argc < 2) { //skip all these owner check lines @@ -157,6 +174,23 @@ static void global_cmd_register_async1(struct ClientSocket *client, struct Clien else adminid = 0; if(multibot != 2) { + printf_mysql_query("SELECT `user_user`, `dnr_timeout`, `dnr_reason`, `dnr_id` FROM `donotregister` LEFT JOIN `users` ON `dnr_user` = `user_id` WHERE `dnr_target` = '%s'", escape_string(auth)); + res = mysql_use(); + if((row = mysql_fetch_row(res)) != NULL) { + int expire_time = atoi(row[1]); + if(expire_time) { + if(expire_time - time(0) <= 0) { + printf_mysql_query("DELETE FROM `donotregister` WHERE `dnr_id` = '%s'", row[3]); + } else { + char expireBuf[MAXLEN]; + reply(getTextBot(), user, "NS_DNR_SET_EXPIRES", auth, row[0], timeToStr(user, (expire_time - time(0)), 2, expireBuf), row[2]); + return; + } + } else { + reply(getTextBot(), user, "NS_DNR_SET", auth, row[0], row[2]); + return; + } + } printf_mysql_query("SELECT `user_id` FROM `users` WHERE `user_user` = '%s'", escape_string(auth)); res = mysql_use(); if ((row = mysql_fetch_row(res)) != NULL) {