diff options
26 files changed, 1598 insertions, 1517 deletions
diff --git a/data/inspircd20.example.conf b/data/inspircd20.example.conf index 347fb52ea..5eaccf3ce 100644 --- a/data/inspircd20.example.conf +++ b/data/inspircd20.example.conf @@ -338,6 +338,14 @@ channelmode character = "T" } +#channelmode +{ + name = "OFFICIALJOIN" + character = "Y" + status = "!" + level = 6 +} + channelmode { name = "OP" @@ -353,6 +361,14 @@ channelmode oper_only = yes } +#channelmode +{ + name = "OPERPREFIX" + character = "y" + status = "!" + level = 6 +} + channelmode { name = "PERM" diff --git a/include/config.h b/include/config.h index b6b36b726..25c8f6166 100644 --- a/include/config.h +++ b/include/config.h @@ -26,7 +26,7 @@ namespace Configuration { class CoreExport Block { - friend struct Conf; + friend class Conf; public: typedef Anope::map<Anope::string> item_map; diff --git a/include/defs.h b/include/defs.h index 989ce3e5b..bd4f2871e 100644 --- a/include/defs.h +++ b/include/defs.h @@ -33,7 +33,6 @@ struct ChanUserContainer; class ClientSocket; class Command; class CommandSource; -namespace Configuration { struct Conf; } class ConnectionSocket; class Entry; class ExtensibleBase; diff --git a/include/modes.h b/include/modes.h index 706b0b716..49e923cda 100644 --- a/include/modes.h +++ b/include/modes.h @@ -23,6 +23,8 @@ #include "anope.h" #include "base.h" +namespace Configuration { class Conf; } + /** The different types of modes */ enum ModeType diff --git a/include/modules/chanserv/chanaccess.h b/include/modules/chanserv/chanaccess.h index dff39c0f8..ec05a7ae5 100644 --- a/include/modules/chanserv/chanaccess.h +++ b/include/modules/chanserv/chanaccess.h @@ -83,40 +83,17 @@ class CoreExport ChanAccess : public Serialize::Object */ virtual void AccessUnserialize(const Anope::string &data) anope_abstract; + virtual int Compare(ChanAccess *other) anope_abstract; + /* Comparison operators to other Access entries */ - virtual bool operator>(ChanAccess &other) + bool operator>(ChanAccess &other) { -// const std::vector<Privilege> &privs = service->GetPrivileges(); -// for (unsigned i = privs.size(); i > 0; --i) -// { -// bool this_p = this->HasPriv(privs[i - 1].name), -// other_p = other.HasPriv(privs[i - 1].name); -// -// if (!this_p && !other_p) -// continue; -// -// return this_p && !other_p; -// } - - return false; + return Compare(&other) > 0; } -#warning "move this out" - virtual bool operator<(ChanAccess &other) + bool operator<(ChanAccess &other) { -// const std::vector<Privilege> &privs = service->GetPrivileges(); -// for (unsigned i = privs.size(); i > 0; --i) -// { -// bool this_p = this->HasPriv(privs[i - 1].name), -// other_p = other.HasPriv(privs[i - 1].name); -// -// if (!this_p && !other_p) -// continue; -// -// return !this_p && other_p; -// } - - return false; + return Compare(&other) < 0; } bool operator>=(ChanAccess &other) diff --git a/include/modules/chanserv/main/chanaccess.h b/include/modules/chanserv/main/chanaccess.h index fb78056ea..ca6661a5b 100644 --- a/include/modules/chanserv/main/chanaccess.h +++ b/include/modules/chanserv/main/chanaccess.h @@ -45,4 +45,6 @@ class ChanAccessImpl : public ChanServ::ChanAccess Anope::string Mask() override; bool Matches(const User *u, NickServ::Account *acc) override; + + int Compare(ChanAccess *other) override; }; diff --git a/include/modules/nickserv/account.h b/include/modules/nickserv/account.h index ebe1061b6..8dc5ad7c8 100644 --- a/include/modules/nickserv/account.h +++ b/include/modules/nickserv/account.h @@ -30,9 +30,6 @@ class CoreExport Account : public Serialize::Object public: static constexpr const char *const NAME = "account"; -#warning "move lastmail to a field" - /* Last time an email was sent to this user */ - time_t lastmail = 0; /* Users online now logged into this account */ std::vector<User *> users; @@ -120,6 +117,9 @@ class CoreExport Account : public Serialize::Object virtual MemoServ::MemoInfo *GetMemos() anope_abstract; virtual unsigned int GetChannelCount() anope_abstract; + + virtual time_t GetLastMail() anope_abstract; + virtual void SetLastMail(time_t) anope_abstract; }; } // namespace NickServ diff --git a/include/modules/protocol/plexus.h b/include/modules/protocol/plexus.h index 4afbc391e..4d35cdd1f 100644 --- a/include/modules/protocol/plexus.h +++ b/include/modules/protocol/plexus.h @@ -53,6 +53,14 @@ class NOOP : public messages::NOOP void Send(Server *s, bool mode) override; }; +class SASL : public messages::SASL +{ + public: + using messages::SASL::SASL; + + void Send(const ::SASL::Message &) override; +}; + class Topic : public messages::Topic { public: @@ -69,6 +77,14 @@ class SVSJoin : public messages::SVSJoin void Send(const MessageSource &source, User *u, const Anope::string &chan, const Anope::string &key) override; }; +class SVSLogin : public messages::SVSLogin +{ + public: + using messages::SVSLogin::SVSLogin; + + void Send(const Anope::string &uid, const Anope::string &acc, const Anope::string &vident, const Anope::string &vhost) override; +}; + class SVSNick : public messages::SVSNick { public: @@ -113,8 +129,10 @@ class Proto : public ts6::Proto class Encap : public IRCDMessage { + ServiceReference<SASL::Service> sasl; + public: - Encap(Module *creator) : IRCDMessage(creator, "ENCAP", 4) { SetFlag(IRCDMESSAGE_REQUIRE_SERVER); } + Encap(Module *creator) : IRCDMessage(creator, "ENCAP", 4) { SetFlag(IRCDMESSAGE_REQUIRE_SERVER); SetFlag(IRCDMESSAGE_SOFT_LIMIT); } void Run(MessageSource &source, const std::vector<Anope::string> ¶ms) override; }; diff --git a/include/serialize.h b/include/serialize.h index 8137e18e9..497e28866 100644 --- a/include/serialize.h +++ b/include/serialize.h @@ -718,7 +718,7 @@ class Serialize::ObjectField : public CommonFieldBase<TypeImpl, T> this->is_object = true; } - T GetField(TypeImpl *s) + T GetField(TypeImpl *s) override { T *t = this->Get_(s); diff --git a/language/anope.fr_FR.po b/language/anope.fr_FR.po index 4059d8790..9bcb405e9 100644 --- a/language/anope.fr_FR.po +++ b/language/anope.fr_FR.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: Anope\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2014-10-25 00:23+0200\n" -"PO-Revision-Date: 2014-10-28 18:47+0100\n" +"POT-Creation-Date: 2017-01-16 18:59-0500\n" +"PO-Revision-Date: 2017-02-04 20:52+0100\n" "Last-Translator: Thomas Fargeix <t.fargeix@gmail.com>\n" "Language-Team: French\n" "Language: fr_FR\n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -"X-Generator: Poedit 1.5.4\n" +"X-Generator: Poedit 1.8.7.1\n" #: modules/commands/os_forbid.cpp:312 #, c-format @@ -28,17 +28,17 @@ msgstr "%d canau(x) vidé(s) et %d canau(x) supprimé(s)." msgid "%d nickname(s) dropped." msgstr "%d pseudo(s) effacé(s)." -#: modules/commands/cs_xop.cpp:222 +#: modules/commands/cs_xop.cpp:219 #, c-format msgid "%s added to %s %s list." msgstr "%1$s ajouté à la liste des %3$s de %2$s." -#: modules/commands/cs_access.cpp:223 +#: modules/commands/cs_access.cpp:225 #, c-format msgid "%s added to %s access list at level %d." msgstr "%s ajouté à la liste d'accès de %s avec le niveau %d." -#: modules/commands/cs_access.cpp:221 +#: modules/commands/cs_access.cpp:223 #, c-format msgid "%s added to %s access list at privilege %s (level %d)" msgstr "%s ajouté à la liste d'accès de %s avec le privilège %s (niveau %d)" @@ -68,12 +68,12 @@ msgstr "%s ajouté à la liste des certificats de %s." msgid "%s added to ignore list." msgstr "%s ajouté à la liste d'ignore." -#: modules/commands/os_sxline.cpp:408 modules/commands/os_sxline.cpp:641 +#: modules/commands/os_sxline.cpp:415 modules/commands/os_sxline.cpp:649 #, c-format msgid "%s added to the %s list." msgstr "%s ajouté à la liste des %s." -#: modules/commands/os_akill.cpp:202 +#: modules/commands/os_akill.cpp:203 #, c-format msgid "%s added to the AKILL list." msgstr "%s ajouté à la liste d'AKILL." @@ -83,8 +83,7 @@ msgstr "%s ajouté à la liste d'AKILL." msgid "" "%s allows you to execute \"fantasy\" commands in the channel.\n" "Fantasy commands are commands that can be executed from messaging a\n" -"channel, and provide a more convenient way to execute commands. Commands " -"that\n" +"channel, and provide a more convenient way to execute commands. Commands that\n" "require a channel as a parameter will automatically have that parameter\n" "given.\n" msgstr "" @@ -92,8 +91,7 @@ msgstr "" "Les commandes fantaisie sont des commandes qui peuvent être exécutées en\n" "envoyant un message sur un canal, et fournissent une façon plus pratique " "d'exécuter\n" -"les commandes. Les commandes qui nécessitent un paramètre de canal auront " -"ce\n" +"les commandes. Les commandes qui nécessitent un paramètre de canal auront ce\n" "paramètre automatiquement.\n" #: modules/pseudoclients/botserv.cpp:148 @@ -116,7 +114,7 @@ msgstr "" "%s%s commande. Pour plus d'informations sur\n" "une commande spécifique, tapez %s%s %s commande.\n" -#: modules/pseudoclients/nickserv.cpp:462 +#: modules/pseudoclients/nickserv.cpp:466 #, c-format msgid "" "%s allows you to register a nickname and\n" @@ -133,7 +131,7 @@ msgstr "" "d'informations sur une certaine commande, tapez\n" "%s%s %s commande.\n" -#: modules/pseudoclients/nickserv.cpp:469 +#: modules/pseudoclients/nickserv.cpp:473 #, c-format msgid "" "%s allows you to register an account.\n" @@ -149,7 +147,7 @@ msgstr "" "Pour plus d'informations sur une commande spécifique, tapez\n" "%s%s %s commande.\n" -#: modules/pseudoclients/chanserv.cpp:248 +#: modules/pseudoclients/chanserv.cpp:255 #, c-format msgid "" "%s allows you to register and control various\n" @@ -184,28 +182,28 @@ msgstr "%s existe déjà dans la liste de kicks automatiques de %s." msgid "%s already exists on the EXCEPTION list." msgstr "%s existe déjà dans la liste des exceptions." -#: modules/commands/bs_kick.cpp:216 modules/commands/bs_kick.cpp:391 -#: modules/commands/bs_kick.cpp:522 modules/commands/bs_kick.cpp:653 +#: modules/commands/bs_kick.cpp:214 modules/commands/bs_kick.cpp:389 +#: modules/commands/bs_kick.cpp:520 modules/commands/bs_kick.cpp:651 #, c-format msgid "%s cannot be taken as times to ban." msgstr "%s ne peut être utilisé comme nombre de fois avant un ban." -#: modules/commands/os_mode.cpp:157 +#: modules/commands/os_mode.cpp:163 #, c-format msgid "%s changed your usermodes to %s." msgstr "%s a changé vos modes utilisateur en %s." -#: modules/commands/os_list.cpp:46 +#: modules/commands/os_list.cpp:47 #, c-format msgid "%s channel list:" msgstr "Liste de canaux de %s :" -#: modules/commands/cs_xop.cpp:350 +#: modules/commands/cs_xop.cpp:343 #, c-format msgid "%s deleted from %s %s list." msgstr "%1$s supprimé de la liste des %3$s de %2$s." -#: modules/commands/cs_access.cpp:324 +#: modules/commands/cs_access.cpp:326 #, c-format msgid "%s deleted from %s access list." msgstr "%s supprimé de la liste d'accès de %s." @@ -240,12 +238,12 @@ msgstr "%s supprimé de la liste des exceptions à la limitation de sessions." msgid "%s deleted from the %s list." msgstr "%s supprimé de la liste des %s." -#: modules/commands/os_akill.cpp:245 +#: modules/commands/os_akill.cpp:246 #, c-format msgid "%s deleted from the AKILL list." msgstr "%s supprimé de la liste d'AKILL." -#: modules/commands/cs_access.cpp:683 +#: modules/commands/cs_access.cpp:685 #, c-format msgid "%s disabled on channel %s." msgstr "Le niveau %s est maintenant désactivé sur le canal %s." @@ -270,7 +268,7 @@ msgstr "%s a été PART de %s." msgid "%s has been unbanned from %s." msgstr "%s a été débanni de %s." -#: modules/commands/ns_alist.cpp:101 +#: modules/commands/ns_alist.cpp:110 #, c-format msgid "%s has no access in any channels." msgstr "%s n'a accès à aucun canal." @@ -290,7 +288,7 @@ msgstr "%s a trop de canaux enregistrés." msgid "%s is a super administrator." msgstr "%s est un super-administrateur." -#: modules/pseudoclients/memoserv.cpp:202 +#: modules/pseudoclients/memoserv.cpp:214 #, c-format msgid "" "%s is a utility allowing IRC users to send short\n" @@ -328,7 +326,7 @@ msgstr "%s ajouté à votre liste d'ignore." msgid "%s is already suspended." msgstr "%s est déjà suspendu." -#: modules/commands/ms_rsend.cpp:56 modules/commands/ms_send.cpp:55 +#: modules/commands/ms_send.cpp:55 modules/commands/ms_rsend.cpp:56 #, c-format msgid "%s is not a registered unforbidden nick or channel." msgstr "%s n'est pas un pseudo ou canal enregistré qui n'est pas interdit." @@ -338,17 +336,17 @@ msgstr "%s n'est pas un pseudo ou canal enregistré qui n'est pas interdit." msgid "%s is not a valid ban type." msgstr "%s n'est pas un type de ban valide." -#: modules/commands/bs_info.cpp:102 +#: modules/commands/bs_info.cpp:101 #, c-format msgid "%s is not a valid bot or registered channel." msgstr "%s n'est pas un bot ou canal enregistré valide." -#: include/language.h:87 +#: include/language.h:86 #, c-format msgid "%s is not a valid e-mail address." msgstr "%s n'est pas une adresse email valide." -#: include/language.h:81 +#: include/language.h:80 #, c-format msgid "%s is not currently on channel %s." msgstr "%s n'est pas actuellement sur le canal %s." @@ -363,7 +361,7 @@ msgstr "%s n'est pas sur %s." msgid "%s is not on the ignore list." msgstr "%s n'a pas été trouvé dans la liste des ignorés." -#: modules/commands/cs_status.cpp:75 +#: modules/commands/cs_status.cpp:90 #, c-format msgid "%s is on the auto kick list of %s (%s)." msgstr "%s est dans la liste de kicks automatiques de %s (%s)." @@ -373,31 +371,35 @@ msgstr "%s est dans la liste de kicks automatiques de %s (%s)." msgid "%s is the founder of %s." msgstr "%s est le fondateur de %s." -#: modules/commands/cs_status.cpp:64 +#: modules/commands/cs_status.cpp:78 +#, c-format +msgid "%s matches access entry %s (from entry %s), which has privilege %s." +msgstr "%s correspond à l'entrée d'accès %s (venant de %s), qui a le privilège %s." + +#: modules/commands/cs_status.cpp:71 #, c-format msgid "%s matches access entry %s, which has privilege %s." msgstr "%s correspond à l'entrée d'accès %s, qui a le privilège %s." -#: include/language.h:110 +#: include/language.h:109 #, c-format msgid "" -"%s matches an except on %s and cannot be banned until the except has been " -"removed." +"%s matches an except on %s and cannot be banned until the except has been removed." msgstr "" "%s correspond à une exception sur %s et ne peut pas être banni tant que " "l'exception n'a pas été supprimée." -#: modules/commands/cs_status.cpp:81 +#: modules/commands/cs_status.cpp:96 #, c-format msgid "%s matches auto kick entry %s on %s (%s)." msgstr "%s correspond à l'entrée d'auto kick %s sur %s (%s)." -#: modules/commands/cs_xop.cpp:360 +#: modules/commands/cs_xop.cpp:353 #, c-format msgid "%s not found on %s %s list." msgstr "%1$s introuvable sur la liste des %3$s de %2$s." -#: modules/commands/cs_access.cpp:336 modules/commands/cs_flags.cpp:254 +#: modules/commands/cs_flags.cpp:255 modules/commands/cs_access.cpp:338 #, c-format msgid "%s not found on %s access list." msgstr "%s introuvable sur la liste d'accès de %s." @@ -430,11 +432,10 @@ msgstr "%s n'a pas été trouvé dans la liste des ignorés." #: modules/commands/os_session.cpp:238 #, c-format msgid "" -"%s not found on session list, but has a limit of %d because it matches entry:" -" %s." +"%s not found on session list, but has a limit of %d because it matches entry: %s." msgstr "" -"%s non trouvé sur la liste de sessions, mais a une limite de %d parce " -"l'entrée suivante correspond : %s." +"%s non trouvé sur la liste de sessions, mais a une limite de %d parce l'entrée " +"suivante correspond : %s." #: modules/commands/os_session.cpp:418 #, c-format @@ -446,12 +447,12 @@ msgstr "%s non trouvé sur la liste des exceptions à la limitation de session msgid "%s not found on the %s list." msgstr "%s introuvable sur la liste des %s." -#: modules/commands/os_akill.cpp:236 +#: modules/commands/os_akill.cpp:237 #, c-format msgid "%s not found on the AKILL list." msgstr "%s introuvable sur la liste d'AKILL." -#: modules/commands/cs_flags.cpp:250 +#: modules/commands/cs_flags.cpp:251 #, c-format msgid "%s removed from the %s access list." msgstr "%s supprimé de la liste d'accès de %s." @@ -461,7 +462,7 @@ msgstr "%s supprimé de la liste d'accès de %s." msgid "%s removed from the ignore list." msgstr "%s supprimé de la liste d'ignorés." -#: modules/commands/os_list.cpp:151 +#: modules/commands/os_list.cpp:157 #, c-format msgid "%s users list:" msgstr "Liste des utilisateurs de %s :" @@ -481,24 +482,24 @@ msgstr "%s est ignoré pour %s." msgid "%s will now permanently be ignored." msgstr "%s est ignoré définitivement." -#: include/language.h:67 +#: include/language.h:66 #, c-format msgid "%s%s HELP %s for more information." msgstr "%s%s HELP %s pour plus d'informations." -#: modules/commands/bs_bot.cpp:254 +#: modules/commands/bs_bot.cpp:270 msgid "ADD nick user host real" msgstr "ADD pseudo user host realname" -#: modules/commands/bs_bot.cpp:255 +#: modules/commands/bs_bot.cpp:271 msgid "CHANGE oldnick newnick [user [host [real]]]" -msgstr "CHANGE ancien-nick nouveau-nick [user [host [realname]]]" +msgstr "CHANGE ancien-pseudo nouveau-pseudo [user [host [realname]]]" -#: modules/commands/bs_bot.cpp:256 +#: modules/commands/bs_bot.cpp:272 msgid "DEL nick" msgstr "DEL pseudo" -#: modules/commands/os_session.cpp:601 +#: modules/commands/os_session.cpp:560 msgid "" "EXCEPTION ADD adds the given host mask to the exception list.\n" "Note that nick!user@host and user@host masks are invalid!\n" @@ -512,9 +513,6 @@ msgid "" " \n" "EXCEPTION DEL removes the given mask from the exception list.\n" " \n" -"EXCEPTION MOVE moves exception num to position. The\n" -"sessions inbetween will be shifted up or down to fill the gap.\n" -" \n" "EXCEPTION LIST and EXCEPTION VIEW show all current\n" "sessions if the optional mask is given, the list is limited\n" "to those sessions matching the mask. The difference is that\n" @@ -526,13 +524,12 @@ msgid "" "their host matches." msgstr "" "EXCEPTION ADD ajoute le masque donné à la liste des exceptions.\n" -"Notez que les masques nick!user@host et user@host sont invalides !\n" +"Notez que les masques pseudo!user@host et user@host sont invalides !\n" "Seuls les masques d'hôtes réels, tels que box.host.dom ou *.host.dom,\n" -"sont autorisés parce que la limitation de sessions ne prend pas en compte " -"le\n" +"sont autorisés parce que la limitation de sessions ne prend pas en compte le\n" "pseudo ou l'utilisateur. limite doit être un nombre supérieur ou égal à\n" -"zéro. Ceci détermine combien de sessions sont autorisées simultanément pour\n" -"cet hôte. Une valeur de zéro signifie que l'hôte n'a pas de limite de\n" +"zéro. Cette limite définit combien de sessions sont autorisées simultanément\n" +"pour cet hôte. Une valeur de zéro signifie que l'hôte n'a pas de limite de\n" "sessions. Consultez l'aide de AKILL pour les détails sur le format du\n" "paramètre optionnel expiration.\n" " \n" @@ -546,7 +543,7 @@ msgstr "" "exceptions actuelles. Si un masque est indiqué, la liste ne montre que\n" "les exceptions correspondantes au masque. La différence est que\n" "EXCEPTION VIEW est plus détaillée, puisqu'elle affiche\n" -"également le pseudo de la personne qui a ajouté l'exception, sa \n" +"également le pseudo de la personne qui a ajouté l'exception, la \n" "limite de sessions, la raison, le masque et la date d'échéance.\n" " \n" "Notez qu'un client se connectant \"utilisera\" la première \n" @@ -563,7 +560,7 @@ msgstr "" "et empêche les opérateurs d'opérer sur le serveur indiqué.\n" "REVOKE supprime cette restriction." -#: modules/commands/cs_access.cpp:609 +#: modules/commands/cs_access.cpp:611 #, c-format msgid "" "User access levels can be seen by using the\n" @@ -583,7 +580,7 @@ msgstr "[auto-memo] Le mémo que vous avez envoyé a %s a été vu." msgid "[target] [password]" msgstr "[cible] [motdepasse]" -#: modules/commands/ns_set.cpp:435 +#: modules/commands/ns_set.cpp:448 msgid "address" msgstr "adresse" @@ -591,11 +588,11 @@ msgstr "adresse" msgid "botname {ON|OFF}" msgstr "nom-du-bot {ON|OFF}" +#: modules/commands/bs_assign.cpp:91 modules/commands/cs_info.cpp:20 +#: modules/commands/cs_suspend.cpp:152 modules/commands/cs_getkey.cpp:20 +#: modules/commands/cs_log.cpp:106 modules/commands/cs_sync.cpp:20 #: modules/extra/stats/cs_fantasy_top.cpp:39 -#: modules/extra/stats/cs_fantasy_top.cpp:51 modules/commands/cs_info.cpp:20 -#: modules/commands/cs_sync.cpp:20 modules/commands/cs_suspend.cpp:152 -#: modules/commands/cs_log.cpp:106 modules/commands/bs_assign.cpp:91 -#: modules/commands/cs_getkey.cpp:20 +#: modules/extra/stats/cs_fantasy_top.cpp:51 msgid "channel" msgstr "canal" @@ -619,8 +616,8 @@ msgstr "canal masque [raison]" msgid "channel modes" msgstr "canal modes" -#: modules/commands/cs_set.cpp:264 modules/commands/cs_set.cpp:962 -#: modules/commands/bs_assign.cpp:20 +#: modules/commands/bs_assign.cpp:20 modules/commands/cs_set.cpp:264 +#: modules/commands/cs_set.cpp:961 msgid "channel nick" msgstr "canal pseudo" @@ -628,7 +625,7 @@ msgstr "canal pseudo" msgid "channel nick [reason]" msgstr "canal pseudo [raison]" -#: modules/commands/cs_clone.cpp:21 +#: modules/commands/cs_clone.cpp:115 msgid "channel target [what]" msgstr "canal cible [quoi]" @@ -648,11 +645,11 @@ msgstr "canal utilisateur raison" msgid "channel what" msgstr "canal [quoi]" -#: modules/commands/cs_xop.cpp:488 +#: modules/commands/cs_xop.cpp:481 msgid "channel ADD mask" msgstr "canal ADD masque" -#: modules/commands/cs_access.cpp:497 +#: modules/commands/cs_access.cpp:499 msgid "channel ADD mask level" msgstr "canal ADD masque niveau" @@ -672,13 +669,13 @@ msgstr "canal ADD {pseudo | masque} [raison]" msgid "channel APPEND topic" msgstr "canal APPEND sujet" -#: modules/commands/cs_access.cpp:501 modules/commands/cs_xop.cpp:491 -#: modules/commands/cs_akick.cpp:428 modules/commands/cs_flags.cpp:375 -#: modules/commands/cs_entrymsg.cpp:197 modules/commands/bs_badwords.cpp:374 +#: modules/commands/bs_badwords.cpp:374 modules/commands/cs_xop.cpp:484 +#: modules/commands/cs_entrymsg.cpp:197 modules/commands/cs_flags.cpp:376 +#: modules/commands/cs_akick.cpp:428 modules/commands/cs_access.cpp:503 msgid "channel CLEAR" msgstr "canal CLEAR" -#: modules/commands/cs_mode.cpp:678 +#: modules/commands/cs_mode.cpp:726 msgid "channel CLEAR [what]" msgstr "canal CLEAR [quoi]" @@ -690,7 +687,7 @@ msgstr "canal CLEAR [ALL]" msgid "channel DEL num" msgstr "canal DEL num" -#: modules/commands/cs_access.cpp:498 modules/commands/cs_xop.cpp:489 +#: modules/commands/cs_xop.cpp:482 modules/commands/cs_access.cpp:500 msgid "channel DEL {mask | entry-num | list}" msgstr "canal DEL {masque | numéro-entrée | liste}" @@ -706,7 +703,7 @@ msgstr "canal DEL {mot | numéro-entrée | liste}" msgid "channel ENFORCE" msgstr "canal ENFORCE" -#: modules/commands/cs_access.cpp:742 modules/commands/cs_entrymsg.cpp:196 +#: modules/commands/cs_entrymsg.cpp:196 modules/commands/cs_access.cpp:744 msgid "channel LIST" msgstr "canal LIST" @@ -714,28 +711,28 @@ msgstr "canal LIST" msgid "channel LIST [mask | entry-num | list]" msgstr "canal LIST [masque | numéro-entrée | liste]" -#: modules/commands/cs_access.cpp:499 modules/commands/cs_xop.cpp:490 -#: modules/commands/bs_badwords.cpp:373 +#: modules/commands/bs_badwords.cpp:373 modules/commands/cs_xop.cpp:483 +#: modules/commands/cs_access.cpp:501 msgid "channel LIST [mask | list]" msgstr "canal LIST [masque | liste]" -#: modules/commands/cs_flags.cpp:374 +#: modules/commands/cs_flags.cpp:375 msgid "channel LIST [mask | +flags]" msgstr "canal LIST [masque | +flags]" -#: modules/commands/cs_mode.cpp:676 +#: modules/commands/cs_mode.cpp:724 msgid "channel LOCK {ADD|DEL|SET|LIST} [what]" msgstr "canal LOCK {ADD|DEL|SET|LIST} [quoi]" -#: modules/commands/cs_access.cpp:743 +#: modules/commands/cs_access.cpp:745 msgid "channel RESET" msgstr "canal RESET" -#: modules/commands/cs_mode.cpp:677 +#: modules/commands/cs_mode.cpp:725 msgid "channel SET modes" msgstr "canal SET modes" -#: modules/commands/cs_access.cpp:740 +#: modules/commands/cs_access.cpp:742 msgid "channel SET type level" msgstr "canal SET type niveau" @@ -743,7 +740,7 @@ msgstr "canal SET type niveau" msgid "channel VIEW [mask | entry-num | list]" msgstr "canal VIEW [masque | numéro-entrée | liste]" -#: modules/commands/cs_access.cpp:500 +#: modules/commands/cs_access.cpp:502 msgid "channel VIEW [mask | list]" msgstr "canal VIEW [masque | liste]" @@ -755,11 +752,11 @@ msgstr "canal [description]" msgid "channel [nick]" msgstr "canal [pseudo]" -#: modules/commands/cs_set_misc.cpp:95 +#: modules/commands/cs_set_misc.cpp:96 msgid "channel [parameters]" msgstr "canal [paramètres]" -#: modules/commands/cs_mode.cpp:749 modules/commands/cs_status.cpp:20 +#: modules/commands/cs_status.cpp:20 modules/commands/cs_mode.cpp:797 msgid "channel [user]" msgstr "canal [user]" @@ -767,11 +764,11 @@ msgstr "canal [user]" msgid "channel [+expiry] [reason]" msgstr "canal [+expiration] [raison]" -#: modules/commands/cs_ban.cpp:41 +#: modules/commands/cs_ban.cpp:40 msgid "channel [+expiry] {nick | mask} [reason]" msgstr "canal [+expiration] {pseudo | masque} [raison]" -#: modules/commands/cs_flags.cpp:373 +#: modules/commands/cs_flags.cpp:374 msgid "channel [MODIFY] mask changes" msgstr "canal [MODIFY] masque modifications" @@ -783,53 +780,53 @@ msgstr "canal [SET] [sujet]" msgid "channel [UNLOCK|LOCK]" msgstr "canal [UNLOCK|LOCK]" -#: modules/commands/greet.cpp:20 modules/commands/bs_assign.cpp:154 +#: modules/commands/bs_assign.cpp:154 modules/commands/greet.cpp:20 #: modules/fantasy.cpp:20 msgid "channel {ON|OFF}" msgstr "canal {ON|OFF}" -#: modules/commands/bs_kick.cpp:493 +#: modules/commands/bs_kick.cpp:491 msgid "channel {ON|OFF} [ttb [ln [secs]]]" msgstr "canal {ON|OFF} [ttb [ln [secs]]]" -#: modules/commands/bs_kick.cpp:363 +#: modules/commands/bs_kick.cpp:361 msgid "channel {ON|OFF} [ttb [min [percent]]]" msgstr "canal {ON|OFF} [ttb [min [pourcentage]]]" -#: modules/commands/bs_kick.cpp:625 +#: modules/commands/bs_kick.cpp:623 msgid "channel {ON|OFF} [ttb [num]]" msgstr "canal {ON|OFF} [ttb [num]]" -#: modules/commands/bs_kick.cpp:254 modules/commands/bs_kick.cpp:290 -#: modules/commands/bs_kick.cpp:329 modules/commands/bs_kick.cpp:459 -#: modules/commands/bs_kick.cpp:591 modules/commands/bs_kick.cpp:713 -#: modules/commands/bs_kick.cpp:747 +#: modules/commands/bs_kick.cpp:252 modules/commands/bs_kick.cpp:288 +#: modules/commands/bs_kick.cpp:327 modules/commands/bs_kick.cpp:457 +#: modules/commands/bs_kick.cpp:589 modules/commands/bs_kick.cpp:724 +#: modules/commands/bs_kick.cpp:758 msgid "channel {ON|OFF} [ttb]" msgstr "canal {ON|OFF} [ttb]" -#: modules/commands/cs_access.cpp:741 +#: modules/commands/cs_access.cpp:743 msgid "channel {DIS | DISABLE} type" msgstr "canal {DIS | DISABLE} type" -#: modules/commands/cs_set.cpp:885 +#: modules/commands/cs_set.cpp:884 msgid "channel {ON | LEVEL | OFF}" msgstr "canal {ON | LEVEL | OFF}" -#: modules/extra/stats/m_chanstats.cpp:10 modules/commands/cs_set.cpp:72 -#: modules/commands/cs_set.cpp:333 modules/commands/cs_set.cpp:398 -#: modules/commands/cs_set.cpp:470 modules/commands/cs_set.cpp:633 -#: modules/commands/cs_set.cpp:695 |
