]> git.netwichtig.de Git - user/henk/code/inspircd.git/commitdiff
SVSNICK and SVSJOIN
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>
Tue, 6 Dec 2005 14:29:23 +0000 (14:29 +0000)
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>
Tue, 6 Dec 2005 14:29:23 +0000 (14:29 +0000)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2226 e03df62e-2008-0410-955e-edbf42e46eb7

src/modules/m_spanningtree.cpp

index e3aea5f0480d13fe5d3b255f620ed156b8fb69d5..dcce017205e18fda3ba284861ce864e275dc8b06 100644 (file)
@@ -950,6 +950,32 @@ class TreeSocket : public InspSocket
                return true;
        }
 
+       bool ForceNick(std::string prefix, std::deque<std::string> params)
+       {
+               if (params.size() < 3)
+                       return true;
+               userrec* u = Srv->FindNick(params[0]);
+               if (u)
+               {
+                       Srv->ChangeUserNick(u,params[1]);
+                       DoOneToAllButSender(prefix,"SVSNICK",params,prefix);
+               }
+               return true;
+       }
+
+       bool ServiceJoin(std::string prefix, std::deque<std::string> params)
+       {
+               if (params.size() < 2)
+                       return true;
+               userrec* u = Srv->FindNick(params[0]);
+               if (u)
+               {
+                       Srv->JoinUserToChannel(u,params[1],"");
+                       DoOneToAllButSender(prefix,"SVSJOIN",params,prefix);
+               }
+               return true;
+       }
+
        bool RemoteRehash(std::string prefix, std::deque<std::string> params)
        {
                if (params.size() < 1)
@@ -1407,6 +1433,14 @@ class TreeSocket : public InspSocket
                                {
                                        return this->AddLine(prefix,params);
                                }
+                               else if (command == "SVSNICK")
+                               {
+                                       return this->ForceNick(prefix,params);
+                               }
+                               else if (command == "SVSJOIN")
+                               {
+                                       return this->ServiceJoin(prefix,params);
+                               }
                                else if (command == "SQUIT")
                                {
                                        if (params.size() == 2)