X-Git-Url: http://git.pk910.de/?p=NeonServV5.git;a=blobdiff_plain;f=src%2Fevent_neonserv_topic.c;h=577e0a349d3a45beb2fe6fafa7a8f0d2b882eaa2;hp=dbd1f5fb5199b36f3012d8e9328669f974b353b1;hb=b013fcf166b6b84f7b946412dacfe84ba5cfe6b6;hpb=95fed4deda0319bee515e44ceec0c77061a2c04e diff --git a/src/event_neonserv_topic.c b/src/event_neonserv_topic.c index dbd1f5f..577e0a3 100644 --- a/src/event_neonserv_topic.c +++ b/src/event_neonserv_topic.c @@ -1,5 +1,5 @@ -/* event_neonserv_topic.c - NeonServ v5.0 - * Copyright (C) 2011 Philipp Kreil (pk910) +/* event_neonserv_topic.c - NeonServ v5.3 + * Copyright (C) 2011-2012 Philipp Kreil (pk910) * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -28,7 +28,7 @@ static void neonserv_event_topic_async1(struct ClientSocket *client, struct User static void neonserv_event_topic(struct UserNode *user, struct ChanNode *chan, const char *new_topic) { struct ClientSocket *client = getBotForChannel(chan); if(!client) return; //we can't "see" this event - if(user->flags & (USERFLAG_ISBOT | USERFLAG_ISIRCOP)) return; + if(isNetworkService(user)) return; loadChannelSettings(chan); if(!(chan->flags & CHANFLAG_CHAN_REGISTERED)) return; if(!(user->flags & USERFLAG_ISAUTHED)) { @@ -90,13 +90,14 @@ static void neonserv_event_topic_async1(struct ClientSocket *client, struct User //BOTWAR! chanuser->changeTime = time(0); if(chanuser->chageEvents > 0) { - putsock(client, "NOTICE @%s :%s %s", chan->name, get_language_string(user, "NS_BOTWAR_DETECTED"), (BOTWAR_ALERT_CHAN ? get_language_string(user, "NS_BOTWAR_REPORTED") : "")); - if(BOTWAR_ALERT_CHAN) { - struct ChanNode *alertchan = getChanByName(BOTWAR_ALERT_CHAN); + char *alertchan = get_string_field("General.alertchan"); + putsock(client, "NOTICE @%s :%s %s", chan->name, get_language_string(user, "NS_BOTWAR_DETECTED"), (alertchan ? get_language_string(user, "NS_BOTWAR_REPORTED") : "")); + if(alertchan) { + struct ChanNode *alertchan_chan = getChanByName(alertchan); struct ClientSocket *alertclient; - if(alertchan && (alertclient = getBotForChannel(chan)) != NULL) { + if(alertchan_chan && (alertclient = getBotForChannel(chan)) != NULL) { char msgBuf[MAXLEN]; - putsock(alertclient, "PRIVMSG %s :%s", alertchan->name, build_language_string(NULL, msgBuf, "NS_BOTWAR_ALERT", chan->name, user->nick)); + putsock(alertclient, "PRIVMSG %s :%s", alertchan_chan->name, build_language_string(NULL, msgBuf, "NS_BOTWAR_ALERT", chan->name, user->nick)); } } }