- return Version(1,1,0,0,VF_COMMON|VF_VENDOR,API_VERSION);
+ return Version(1,2,0,0,VF_COMMON|VF_VENDOR,API_VERSION);
+ }
+
+ virtual void OnUserConnect(User* user)
+ {
+ // Apply lines on user connect
+ XLine *rl = ServerInstance->XLines->MatchesLine("R", user);
+
+ if (rl)
+ {
+ // Bang. :P
+ rl->Apply(user);
+ }
+ }
+
+ virtual void OnRehash(User *user, const std::string ¶meter)
+ {
+ ConfigReader Conf(ServerInstance);
+
+ MatchOnNickChange = Conf.ReadFlag("rline", "matchonnickchange", 1);
+ }
+
+ virtual void OnUserPostNick(User *user, const std::string &oldnick)
+ {
+ if (!IS_LOCAL(user))
+ return;
+
+ if (!MatchOnNickChange)
+ return;
+
+ XLine *rl = ServerInstance->XLines->MatchesLine("R", user);
+
+ if (rl)
+ {
+ // Bang! :D
+ rl->Apply(user);
+ }