X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=src%2Fbot_NeonServ.c;h=a0937b9b5f0abb60e6713ae36681788c1a3ac3ca;hb=f90d21daf31f8d69e24406678be696afa8cae962;hp=46074d47bbef45b3c5131c3ffbe7ca6de4ba989a;hpb=72394307a3a18504f08c703a722c717aa834182b;p=NeonServV5.git diff --git a/src/bot_NeonServ.c b/src/bot_NeonServ.c index 46074d4..a0937b9 100644 --- a/src/bot_NeonServ.c +++ b/src/bot_NeonServ.c @@ -34,6 +34,7 @@ #include "timeq.h" #include "EventLogger.h" #include "cmd_neonserv.h" +#include "ConfigParser.h" #define BOTID 1 #define BOTALIAS "NeonServ" @@ -115,16 +116,22 @@ static const struct default_language_entry msgtab[] = { {"NS_GIVEOWNER_DONE", "Ownership of $b%s$b has been transferred to account $b%s$b."}, /* {ARGS: "#TestChan", "TestUser"} */ {"NS_OP_FAIL", "$b%s$b could not op some of the nicks you provided."}, /* {ARGS: "NeonServ"} */ {"NS_OP_DONE", "Opped users in $b%s$b."}, /* {ARGS: "#TestChan"} */ + {"NS_HALFOP_FAIL", "$b%s$b could not halfop some of the nicks you provided."}, /* {ARGS: "NeonServ"} */ + {"NS_HALFOP_DONE", "Half-Opped users in $b%s$b."}, /* {ARGS: "#TestChan"} */ {"NS_VOICE_FAIL", "$b%s$b could not voice some of the nicks you provided."}, /* {ARGS: "NeonServ"} */ {"NS_VOICE_DONE", "Voiced users in $b%s$b."}, /* {ARGS: "#TestChan"} */ {"NS_DEOP_FAIL", "$b%s$b could not deop some of the nicks you provided."}, /* {ARGS: "NeonServ"} */ {"NS_DEOP_DONE", "Deopped users in $b%s$b."}, /* {ARGS: "#TestChan"} */ + {"NS_DEHALFOP_FAIL", "$b%s$b could not dehalfop some of the nicks you provided."}, /* {ARGS: "NeonServ"} */ + {"NS_DEHALFOP_DONE", "Dehalfopped users in $b%s$b."}, /* {ARGS: "#TestChan"} */ {"NS_DEVOICE_FAIL", "$b%s$b could not devoice some of the nicks you provided."}, /* {ARGS: "NeonServ"} */ {"NS_DEVOICE_DONE", "Devoiced users in $b%s$b."}, /* {ARGS: "#TestChan"} */ {"NS_OPALL_SECURITY", "$bWARNING$b: Opping all users on a channel is very insecure! If you still want do op all users on %s use: '$bopall FORCE$b [nick mask]'"}, {"NS_OPALL_DONE", "Opped $b%d$b users in %s."}, /* {ARGS: 20, "#TestChan"} */ + {"NS_HALFOPALL_DONE", "Half-Opped $b%d$b users in %s."}, /* {ARGS: 20, "#TestChan"} */ {"NS_VOICEALL_DONE", "Voiced $b%d$b users in %s."}, /* {ARGS: 20, "#TestChan"} */ {"NS_DEOPALL_DONE", "Deopped $b%d$b users in %s."}, /* {ARGS: 20, "#TestChan"} */ + {"NS_DEHALFOPALL_DONE", "Dehalfopped $b%d$b users in %s."}, /* {ARGS: 20, "#TestChan"} */ {"NS_DEVOICEALL_DONE", "Devoiced $b%d$b users in %s."}, /* {ARGS: 20, "#TestChan"} */ {"NS_KICK_DONE", "Kicked $b%d$b users from %s"}, /* {ARGS: 20, "#TestChan"} */ {"NS_KICK_FAIL", "$b%s$b could not kick some of the nicks you provided."}, /* {ARGS: "NeonServ"} */ @@ -207,6 +214,7 @@ static const struct default_language_entry msgtab[] = { {"NS_NETINFO_USER", " User:"}, {"NS_NETINFO_CHANUSER", " Channel-User:"}, {"NS_NETINFO_OTHER", " Other:"}, + {"NS_NETINFO_THREADS", "Threads:"}, {"NS_NETINFO_VERSION", "Version:"}, {"NS_NETINFO_CODE", "Code:"}, {"NS_NETINFO_CODE_VALUE", "%s lines c code (view it at http://git.pk910.de/?p=NeonServV5.git;a=summary)"}, /* {ARGS: 20} */ @@ -244,6 +252,7 @@ static const struct default_language_entry msgtab[] = { {"NS_PEEK_TOPIC", "Topic: %s"}, /* {ARGS: "TOPIC"} */ {"NS_PEEK_MODES", "Modes: %s"}, /* {ARGS: "+xyz"} */ {"NS_PEEK_USERS", "Total Users: %d (%d ops, %d voices, %d regulars, %d invisible)"}, /* {ARGS: 20, 4, 6, 8, 2} */ + {"NS_PEEK_USERS_HALFOP", "Total Users: %d (%d ops, %d halfops, %d voices, %d regulars, %d invisible)"}, /* {ARGS: 25, 5, 4, 6, 8, 2} */ {"NS_PEEK_OPS", "Ops:"}, {"NS_USET_GLOBAL", "$b--- Global ---$b"}, {"NS_USET_CHANNEL", "$b--- User options (channel) ---$b"}, @@ -425,7 +434,10 @@ static void neonserv_trigger_callback(int clientid, struct ChanNode *chan, char } printf_mysql_query("SELECT `trigger`, `defaulttrigger` FROM `bot_channels` LEFT JOIN `bots` ON `botid` = `bots`.`id` WHERE `chanid` = '%d' AND `botclass` = '%d'", chan->channel_id, BOTID); res = mysql_use(); - row = mysql_fetch_row(res); + if(!(row = mysql_fetch_row(res))) { + strcpy(trigger, "+"); + return; + } if(row[0] && *row[0]) strcpy(trigger, row[0]); else