diff --git a/ChangeLog b/ChangeLog index d2db628bb..32b58d3bb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,7 @@ WeeChat ChangeLog ================= FlashCode -v0.3.3-dev, 2010-05-22 +v0.3.3-dev, 2010-05-23 Version 0.3.3 (under dev!) @@ -13,6 +13,8 @@ Version 0.3.3 (under dev!) process) * api: add function "string_expand_home", fix bug with replacement of home in paths +* irc: add command /wallchops, fix bug with display of notice for ops + (task #10021, bug #29932) * irc: add isupport value in servers (content of IRC message 005), with new infos: irc_server_isupport and irc_server_isupport_value * irc: add message in private buffer when nick is back on server after a /quit diff --git a/doc/en/autogen/user/irc_commands.txt b/doc/en/autogen/user/irc_commands.txt index ec2a8a5e9..f19d8cc1b 100644 --- a/doc/en/autogen/user/irc_commands.txt +++ b/doc/en/autogen/user/irc_commands.txt @@ -646,6 +646,15 @@ give voice to nickname(s) ........................................ +• *`/wallchops`* `[channel] text`:: + +........................................ + send a notice to channel ops + + channel: channel name + test: text to send +........................................ + • *`/wallops`* `text`:: ........................................ diff --git a/doc/fr/autogen/user/irc_commands.txt b/doc/fr/autogen/user/irc_commands.txt index 64d677a7c..d59d8db25 100644 --- a/doc/fr/autogen/user/irc_commands.txt +++ b/doc/fr/autogen/user/irc_commands.txt @@ -646,6 +646,15 @@ donne la voix à/aux pseudo(s) ........................................ +• *`/wallchops`* `[canal] texte`:: + +........................................ + envoyer une notice aux opérateurs du canal + + canal: nom du canal + texte: texte à envoyer +........................................ + • *`/wallops`* `texte`:: ........................................ diff --git a/doc/it/autogen/user/irc_commands.txt b/doc/it/autogen/user/irc_commands.txt index c407d1965..ee904d7f7 100644 --- a/doc/it/autogen/user/irc_commands.txt +++ b/doc/it/autogen/user/irc_commands.txt @@ -646,6 +646,15 @@ concede il voice ad uno (o più) utenti ........................................ +• *`/wallchops`* `[channel] text`:: + +........................................ + send a notice to channel ops + + channel: channel name + test: text to send +........................................ + • *`/wallops`* `testo`:: ........................................ diff --git a/po/cs.po b/po/cs.po index ebe61bf2f..108fe378a 100644 --- a/po/cs.po +++ b/po/cs.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.3-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-05-22 09:52+0200\n" +"POT-Creation-Date: 2010-05-23 09:58+0200\n" "PO-Revision-Date: 2010-05-20 12:20+0200\n" "Last-Translator: Jiri Golembiovsky \n" "Language-Team: weechat-dev \n" @@ -3206,6 +3206,10 @@ msgstr "" msgid "%s%s: wrong argument count for \"%s\" command" msgstr "%s%s: špatný počet parametrů pro příkaz \"%s\"" +#, fuzzy, c-format +msgid "%s%s: you are not on channel \"%s\"" +msgstr "%s%s: nemohu vytvořit nový kanál \"%s\"" + msgid "find information about the administrator of the server" msgstr "najít informace o administrátorovi serveru" @@ -4131,6 +4135,22 @@ msgstr "" msgid "give voice to nickname(s)" msgstr "dá hlas přezdívce (přezdívkám)" +#, fuzzy +msgid "send a notice to channel ops" +msgstr "poslat zprávu přezdívce nebo kanálu" + +#, fuzzy +msgid "[channel] text" +msgstr "[kanál] [téma]" + +#, fuzzy +msgid "" +"channel: channel name\n" +" test: text to send" +msgstr "" +"kanál: jméno kanálu\n" +" mód: mód pro kanál" + msgid "" "send a message to all currently connected users who have set the 'w' user " "mode for themselves" diff --git a/po/de.po b/po/de.po index 27cdc6679..ca007c62f 100644 --- a/po/de.po +++ b/po/de.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.3-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-05-22 09:52+0200\n" +"POT-Creation-Date: 2010-05-23 09:58+0200\n" "PO-Revision-Date: 2010-05-22 22:28+0200\n" "Last-Translator: Nils G \n" "Language-Team: weechat-dev \n" @@ -3338,6 +3338,10 @@ msgstr "" msgid "%s%s: wrong argument count for \"%s\" command" msgstr "%s%s: Fehlerhafte Anzahl von Argumenten für den Befehl \"%s\"" +#, fuzzy, c-format +msgid "%s%s: you are not on channel \"%s\"" +msgstr "%s%s: Konnte den neuen Channel \"%s\" nicht erzeugen" + msgid "find information about the administrator of the server" msgstr "Information über den Server-Administrator abfragen" @@ -4284,6 +4288,22 @@ msgstr "" msgid "give voice to nickname(s)" msgstr "Voice an Nickname(n) vergeben" +#, fuzzy +msgid "send a notice to channel ops" +msgstr "Nachricht an Nick/Channel verschicken" + +#, fuzzy +msgid "[channel] text" +msgstr "[Channel] [Topic]" + +#, fuzzy +msgid "" +"channel: channel name\n" +" test: text to send" +msgstr "" +"Channel: Name des Channel\n" +" Mode: neuer Modus für Channel" + msgid "" "send a message to all currently connected users who have set the 'w' user " "mode for themselves" diff --git a/po/es.po b/po/es.po index 0d6ac37ae..01104228c 100644 --- a/po/es.po +++ b/po/es.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.3-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-05-22 09:52+0200\n" +"POT-Creation-Date: 2010-05-23 09:58+0200\n" "PO-Revision-Date: 2010-05-20 12:31+0200\n" "Last-Translator: Elián Hanisch \n" "Language-Team: weechat-dev \n" @@ -3255,6 +3255,10 @@ msgstr "" msgid "%s%s: wrong argument count for \"%s\" command" msgstr "%s%s: número de argumentos incorrecto para el comando \"%s\"" +#, fuzzy, c-format +msgid "%s%s: you are not on channel \"%s\"" +msgstr "%s%s: no es posible crear el nuevo canal \"%s\"" + msgid "find information about the administrator of the server" msgstr "busca información sobre el administrador del servidor" @@ -4186,6 +4190,22 @@ msgstr "" msgid "give voice to nickname(s)" msgstr "da voz a el/los apodo(s)" +#, fuzzy +msgid "send a notice to channel ops" +msgstr "envía mensaje a un usuario o canal" + +#, fuzzy +msgid "[channel] text" +msgstr "[canal] [tema]" + +#, fuzzy +msgid "" +"channel: channel name\n" +" test: text to send" +msgstr "" +"canal: nombre del canal\n" +" modo: modo para el canal" + msgid "" "send a message to all currently connected users who have set the 'w' user " "mode for themselves" diff --git a/po/fr.po b/po/fr.po index 4f99eaf9a..498aacf7d 100644 --- a/po/fr.po +++ b/po/fr.po @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.3-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-05-22 09:52+0200\n" -"PO-Revision-Date: 2010-05-22 09:53+0200\n" +"POT-Creation-Date: 2010-05-23 09:58+0200\n" +"PO-Revision-Date: 2010-05-23 09:44+0200\n" "Last-Translator: FlashCode \n" "Language-Team: weechat-dev \n" "Language: French\n" @@ -3285,6 +3285,10 @@ msgstr "" msgid "%s%s: wrong argument count for \"%s\" command" msgstr "%s%s: nombre de paramètres erroné pour la commande \"%s\"" +#, c-format +msgid "%s%s: you are not on channel \"%s\"" +msgstr "%s%s: vous n'êtes pas sur le canal \"%s\"" + msgid "find information about the administrator of the server" msgstr "trouver les informations sur l'administrateur du serveur" @@ -4225,6 +4229,19 @@ msgstr "" msgid "give voice to nickname(s)" msgstr "donne la voix à/aux pseudo(s)" +msgid "send a notice to channel ops" +msgstr "envoyer une notice aux opérateurs du canal" + +msgid "[channel] text" +msgstr "[canal] texte" + +msgid "" +"channel: channel name\n" +" test: text to send" +msgstr "" +"canal: nom du canal\n" +"texte: texte à envoyer" + msgid "" "send a message to all currently connected users who have set the 'w' user " "mode for themselves" diff --git a/po/hu.po b/po/hu.po index 7dd7e3d81..a046ad8ef 100644 --- a/po/hu.po +++ b/po/hu.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.3-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-05-22 09:52+0200\n" +"POT-Creation-Date: 2010-05-23 09:58+0200\n" "PO-Revision-Date: 2010-05-20 12:20+0200\n" "Last-Translator: Andras Voroskoi \n" "Language-Team: weechat-dev \n" @@ -3051,6 +3051,10 @@ msgstr "" msgid "%s%s: wrong argument count for \"%s\" command" msgstr "%s rossz argumentum szám a \"%s\" parancsnak\n" +#, fuzzy, c-format +msgid "%s%s: you are not on channel \"%s\"" +msgstr "%s nem sikerült új szobát nyitni \"%s\"\n" + msgid "find information about the administrator of the server" msgstr "információ lekérdezése a szerver adminisztrátorról" @@ -3935,6 +3939,22 @@ msgstr "" msgid "give voice to nickname(s)" msgstr "voice jog biztosítása a felhasználó(k)nak" +#, fuzzy +msgid "send a notice to channel ops" +msgstr "üzenet küldése egy felhasználónak vagy szobának" + +#, fuzzy +msgid "[channel] text" +msgstr "[szoba] [téma]" + +#, fuzzy +msgid "" +"channel: channel name\n" +" test: text to send" +msgstr "" +"szoba: a szoba neve, ahová csatlakozni szeretnénk\n" +"kulcs: a csatlakozáshoz szükséges kulcs" + msgid "" "send a message to all currently connected users who have set the 'w' user " "mode for themselves" diff --git a/po/it.po b/po/it.po index e007d17db..00bd81362 100644 --- a/po/it.po +++ b/po/it.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: Weechat 0.3.3-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-05-22 09:52+0200\n" +"POT-Creation-Date: 2010-05-23 09:58+0200\n" "PO-Revision-Date: 2010-05-20 12:26+0200\n" "Last-Translator: Marco Paolone \n" "Language-Team: weechat-dev \n" @@ -3261,6 +3261,10 @@ msgstr "" msgid "%s%s: wrong argument count for \"%s\" command" msgstr "%s%s: argomento contatore errato per il comando \"%s\"" +#, fuzzy, c-format +msgid "%s%s: you are not on channel \"%s\"" +msgstr "%s%s: impossibile creare il nuovo canale \"%s\"" + msgid "find information about the administrator of the server" msgstr "informazioni sull'amministratore del server" @@ -4193,6 +4197,22 @@ msgstr "" msgid "give voice to nickname(s)" msgstr "concede il voice ad uno (o più) utenti" +#, fuzzy +msgid "send a notice to channel ops" +msgstr "invia un messaggio ad un nick o a un canale" + +#, fuzzy +msgid "[channel] text" +msgstr "[canale] [argomento]" + +#, fuzzy +msgid "" +"channel: channel name\n" +" test: text to send" +msgstr "" +"canale: nome del canale\n" +"modalità: modalità per il canale" + msgid "" "send a message to all currently connected users who have set the 'w' user " "mode for themselves" diff --git a/po/pl.po b/po/pl.po index bf6c6b580..9f52e4741 100644 --- a/po/pl.po +++ b/po/pl.po @@ -9,7 +9,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.3-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-05-22 09:52+0200\n" +"POT-Creation-Date: 2010-05-23 09:58+0200\n" "PO-Revision-Date: 2010-05-20 12:22+0200\n" "Last-Translator: Krzysztof Koroscik \n" "Language-Team: weechat-dev \n" @@ -3246,6 +3246,10 @@ msgstr "" msgid "%s%s: wrong argument count for \"%s\" command" msgstr "%s%s: niewłaściwa ilość argumentów dla komędy \"%s\" " +#, fuzzy, c-format +msgid "%s%s: you are not on channel \"%s\"" +msgstr "%s%s: nie można utworzyć nowego kanału \"%s\"" + msgid "find information about the administrator of the server" msgstr "wyszukuje informacje o administratorze serwera" @@ -4172,6 +4176,22 @@ msgstr "" msgid "give voice to nickname(s)" msgstr "daje głos (voice) nickowi" +#, fuzzy +msgid "send a notice to channel ops" +msgstr "wysyła wiadomość do użytkownika albo kanału" + +#, fuzzy +msgid "[channel] text" +msgstr "[kanał] [temat]" + +#, fuzzy +msgid "" +"channel: channel name\n" +" test: text to send" +msgstr "" +"kanał: nazwa kanału\n" +" atrybuty: atrybuty kanału" + msgid "" "send a message to all currently connected users who have set the 'w' user " "mode for themselves" diff --git a/po/ru.po b/po/ru.po index 30c386684..1123497e5 100644 --- a/po/ru.po +++ b/po/ru.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: WeeChat 0.3.3-dev\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-05-22 09:52+0200\n" +"POT-Creation-Date: 2010-05-23 09:58+0200\n" "PO-Revision-Date: 2010-05-20 12:22+0200\n" "Last-Translator: Pavel Shevchuk \n" "Language-Team: weechat-dev \n" @@ -3062,6 +3062,10 @@ msgstr "" msgid "%s%s: wrong argument count for \"%s\" command" msgstr "%s некорректное количество аргументов команды \"%s\"\n" +#, fuzzy, c-format +msgid "%s%s: you are not on channel \"%s\"" +msgstr "%s не могу создать новый канал \"%s\"\n" + msgid "find information about the administrator of the server" msgstr "найти информацию об администрации сервера" @@ -3938,6 +3942,22 @@ msgstr "" msgid "give voice to nickname(s)" msgstr "даёт право голоса нику(-ам)" +#, fuzzy +msgid "send a notice to channel ops" +msgstr "отправить сообщение нику или на канал" + +#, fuzzy +msgid "[channel] text" +msgstr "[канал] [тема]" + +#, fuzzy +msgid "" +"channel: channel name\n" +" test: text to send" +msgstr "" +"канал: название канала\n" +" ключ: ключ для входа на канал" + msgid "" "send a message to all currently connected users who have set the 'w' user " "mode for themselves" diff --git a/po/weechat.pot b/po/weechat.pot index 1a632c655..0b7158727 100644 --- a/po/weechat.pot +++ b/po/weechat.pot @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: flashcode@flashtux.org\n" -"POT-Creation-Date: 2010-05-22 09:52+0200\n" +"POT-Creation-Date: 2010-05-23 09:58+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -2671,6 +2671,10 @@ msgstr "" msgid "%s%s: wrong argument count for \"%s\" command" msgstr "" +#, c-format +msgid "%s%s: you are not on channel \"%s\"" +msgstr "" + msgid "find information about the administrator of the server" msgstr "" @@ -3371,6 +3375,17 @@ msgstr "" msgid "give voice to nickname(s)" msgstr "" +msgid "send a notice to channel ops" +msgstr "" + +msgid "[channel] text" +msgstr "" + +msgid "" +"channel: channel name\n" +" test: text to send" +msgstr "" + msgid "" "send a message to all currently connected users who have set the 'w' user " "mode for themselves" diff --git a/src/plugins/irc/irc-command.c b/src/plugins/irc/irc-command.c index 653740dbe..1fd77c938 100644 --- a/src/plugins/irc/irc-command.c +++ b/src/plugins/irc/irc-command.c @@ -1233,7 +1233,7 @@ irc_command_devoice (void *data, struct t_gui_buffer *buffer, int argc, } /* - * irc_command_die: shotdown the server + * irc_command_die: shutdown the server */ int @@ -3992,7 +3992,8 @@ irc_command_users (void *data, struct t_gui_buffer *buffer, int argc, } /* - * irc_command_version: gives the version info of nick or server (current or specified) + * irc_command_version: gives the version info of nick or server (current or + * specified) */ int @@ -4069,9 +4070,119 @@ irc_command_voice (void *data, struct t_gui_buffer *buffer, int argc, return WEECHAT_RC_OK; } +/* + * irc_command_wallchops: send a notice to channel ops + */ + +int +irc_command_wallchops (void *data, struct t_gui_buffer *buffer, int argc, + char **argv, char **argv_eol) +{ + char *pos_channel; + int pos_args; + const char *support_wallchops, *support_statusmsg; + struct t_irc_nick *ptr_nick; + + IRC_BUFFER_GET_SERVER_CHANNEL(buffer); + IRC_COMMAND_CHECK_SERVER("wallchops", 1); + + /* make C compiler happy */ + (void) data; + + if (argc > 1) + { + if (irc_channel_is_channel (argv[1])) + { + pos_channel = argv[1]; + pos_args = 2; + } + else + { + pos_channel = NULL; + pos_args = 1; + } + + /* channel not given, use default buffer */ + if (!pos_channel) + { + if (ptr_channel && (ptr_channel->type == IRC_CHANNEL_TYPE_CHANNEL)) + pos_channel = ptr_channel->name; + else + { + weechat_printf (ptr_server->buffer, + _("%s%s: \"%s\" command can only be " + "executed in a channel buffer"), + weechat_prefix ("error"), IRC_PLUGIN_NAME, + "wallchops"); + return WEECHAT_RC_OK; + } + } + + ptr_channel = irc_channel_search (ptr_server, pos_channel); + if (!ptr_channel) + { + weechat_printf (ptr_server->buffer, + _("%s%s: you are not on channel \"%s\""), + weechat_prefix ("error"), IRC_PLUGIN_NAME, + pos_channel); + return WEECHAT_RC_OK; + } + + weechat_printf (ptr_channel->buffer, + "%s%sNoticeOp%s -> %s%s%s: %s", + weechat_prefix ("network"), + IRC_COLOR_NOTICE, + IRC_COLOR_CHAT, + IRC_COLOR_CHAT_CHANNEL, + ptr_channel->name, + IRC_COLOR_CHAT, + argv_eol[pos_args]); + + support_wallchops = irc_server_get_isupport_value (ptr_server, + "WALLCHOPS"); + support_statusmsg = irc_server_get_isupport_value (ptr_server, + "STATUSMSG"); + if (support_wallchops + || (support_statusmsg && strchr (support_statusmsg, '@'))) + { + /* + * if WALLCHOPS is supported, or if STATUSMSG includes '@', + * then send a notice to @#channel + */ + irc_server_sendf (ptr_server, IRC_SERVER_OUTQUEUE_PRIO_HIGH, + "NOTICE @%s :%s", + ptr_channel->name, argv_eol[pos_args]); + } + else + { + /* + * if WALLCHOPS is not supported and '@' not in STATUSMSG, + * then send a notice to each op of channel + */ + for (ptr_nick = ptr_channel->nicks; ptr_nick; + ptr_nick = ptr_nick->next_nick) + { + if (IRC_NICK_IS_OP(ptr_nick) + && (strcmp (ptr_nick->name, ptr_server->nick) != 0)) + { + irc_server_sendf (ptr_server, IRC_SERVER_OUTQUEUE_PRIO_LOW, + "NOTICE %s :%s", + ptr_nick->name, argv_eol[pos_args]); + } + } + } + } + else + { + IRC_COMMAND_TOO_FEW_ARGUMENTS(ptr_server->buffer, "wallchops"); + } + + return WEECHAT_RC_OK; +} + /* * irc_command_wallops: send a message to all currently connected users who - * have set the 'w' user mode for themselves + * have set the 'w' user mode for themselves */ int @@ -4771,6 +4882,12 @@ irc_command_init () N_("[nickname [nickname]]"), "", "%(nicks)|%*", &irc_command_voice, NULL); + weechat_hook_command ("wallchops", + N_("send a notice to channel ops"), + N_("[channel] text"), + N_("channel: channel name\n" + " test: text to send"), + NULL, &irc_command_wallchops, NULL); weechat_hook_command ("wallops", N_("send a message to all currently connected users " "who have set the 'w' user mode for themselves"), diff --git a/src/plugins/irc/irc-nick.c b/src/plugins/irc/irc-nick.c index 6d0d3c47f..1e82a1d84 100644 --- a/src/plugins/irc/irc-nick.c +++ b/src/plugins/irc/irc-nick.c @@ -517,10 +517,7 @@ irc_nick_count (struct t_irc_channel *channel, int *total, int *count_op, ptr_nick = ptr_nick->next_nick) { (*total)++; - if ((ptr_nick->flags & IRC_NICK_CHANOWNER) || - (ptr_nick->flags & IRC_NICK_CHANADMIN) || - (ptr_nick->flags & IRC_NICK_CHANADMIN2) || - (ptr_nick->flags & IRC_NICK_OP)) + if (IRC_NICK_IS_OP(ptr_nick)) (*count_op)++; else { diff --git a/src/plugins/irc/irc-nick.h b/src/plugins/irc/irc-nick.h index f27ab1973..38705203e 100644 --- a/src/plugins/irc/irc-nick.h +++ b/src/plugins/irc/irc-nick.h @@ -38,6 +38,12 @@ else \ nick->flags &= 0xFFFF - flag; +#define IRC_NICK_IS_OP(__nick) \ + ((__nick->flags & IRC_NICK_CHANOWNER) || \ + (__nick->flags & IRC_NICK_CHANADMIN) || \ + (__nick->flags & IRC_NICK_CHANADMIN2) || \ + (__nick->flags & IRC_NICK_OP)) + #define IRC_NICK_GROUP_CHANOWNER "01|chanowner" #define IRC_NICK_GROUP_CHANADMIN "02|chanadmin" #define IRC_NICK_GROUP_CHANADMIN2 "03|chanadmin2" diff --git a/src/plugins/irc/irc-protocol.c b/src/plugins/irc/irc-protocol.c index 2dc44bcfb..40de6c864 100644 --- a/src/plugins/irc/irc-protocol.c +++ b/src/plugins/irc/irc-protocol.c @@ -994,7 +994,7 @@ IRC_PROTOCOL_CALLBACK(notice) char *pos_target, *pos_args; struct t_irc_channel *ptr_channel; struct t_irc_nick *ptr_nick; - int notify_private; + int notify_private, notice_op; struct t_gui_buffer *ptr_buffer; /* @@ -1009,10 +1009,19 @@ IRC_PROTOCOL_CALLBACK(notice) if (ignored) return WEECHAT_RC_OK; + notice_op = 0; + if (argv[0][0] == ':') { pos_target = argv[2]; + if ((pos_target[0] == '@') && (irc_channel_is_channel (pos_target + 1))) + { + pos_target++; + notice_op = 1; + } pos_args = (argv_eol[3][0] == ':') ? argv_eol[3] + 1 : argv_eol[3]; + if (notice_op && (pos_args[0] == '@') && (pos_args[1] == ' ')) + pos_args += 2; } else { @@ -1034,9 +1043,10 @@ IRC_PROTOCOL_CALLBACK(notice) ptr_nick = irc_nick_search (ptr_channel, nick); weechat_printf_tags ((ptr_channel) ? ptr_channel->buffer : server->buffer, irc_protocol_tags (command, "notify_message"), - "%s%sNotice%s(%s%s%s)%s: %s", + "%s%sNotice%s%s(%s%s%s)%s: %s", weechat_prefix ("network"), IRC_COLOR_NOTICE, + (notice_op) ? "Op" : "", IRC_COLOR_CHAT_DELIMITERS, IRC_COLOR_NICK_IN_SERVER_MESSAGE(ptr_nick), (nick && nick[0]) ? nick : "?",