diff --git a/bot.c b/bot.c index 5044dec..f3a00cc 100644 --- a/bot.c +++ b/bot.c @@ -13,18 +13,48 @@ unsigned int i = 0x0; res = dbQuery("SELECT channel,topic,modes FROM channels",1); - - for (i = 0;i < mysql_num_rows(res);i++) { - row = mysql_fetch_row(res); - sWriteSocket("JOIN %s\n",row[0]); - if (row[1] != 0x0) { - //sleep(1); - sWriteSocket("TOPIC %s:%s\n",row[0],row[1]); - } - if (row[2] != 0x0) { - //sleep(1); - sWriteSocket("MSG %s:.tv mode %s\n",row[0],row[2]); - } + + if (mysql_num_rows(res) > 0) { + for (i = 0;i < mysql_num_rows(res);i++) { + sleep(2); + row = mysql_fetch_row(res); + /* Set Access Level */ + tmpVal = atoi(row[1]); + if (tmpVal > 0) + sWriteSocket("MSG %s:.tv mode +A %i",row[0],tmpVal); + else + sWriteSocket("MSG %s:.tv mode -A",row[0]); + + /* Set Classification */ + tmpVal = atoi(row[2]); + if (tmpVal > 0) + sWriteSocket("MSG %s:.tv mode +C %i",row[0],tmpVal); + else + sWriteSocket("MSG %s:.tv mode -C",row[0]); + /* Set Random */ + if (row[3][0] == '1') + sWriteSocket("MSG %s:.tv mode +R",row[0]); + else + sWriteSocket("MSG %s:.tv mode -R",row[0]); + /* Set Queue */ + if (row[4][0] == '1') + sWriteSocket("MSG %s:.tv mode +Q",row[0]); + else + sWriteSocket("MSG %s:.tv mode -Q",row[0]); + /* Set Exclusive */ + if (row[5][0] == '1') + sWriteSocket("MSG %s:.tv mode +E",row[0]); + else + sWriteSocket("MSG %s:.tv mode -E",row[0]); + /* Set Time */ + tmpVal = atoi(row[6]); + if (tmpVal > 0) + sWriteSocket("MSG %s:.tv mode +T %i",row[0],tmpVal); + else + sWriteSocket("MSG %s:.tv mode -T",row[0]); + + sWriteSocket("TOPIC %s:%s",row[0],row[7]); + } } return(0x0); }