]> git.netwichtig.de Git - user/henk/code/inspircd.git/blob - src/modules/m_spanningtree/misccommands.cpp
Lower the acceptable drift for clocks on link.
[user/henk/code/inspircd.git] / src / modules / m_spanningtree / misccommands.cpp
1 /*
2  * InspIRCd -- Internet Relay Chat Daemon
3  *
4  *   Copyright (C) 2013 Attila Molnar <attilamolnar@hush.com>
5  *   Copyright (C) 2007-2008, 2012 Robin Burchell <robin+git@viroteck.net>
6  *   Copyright (C) 2009-2010 Daniel De Graaf <danieldg@inspircd.org>
7  *   Copyright (C) 2007-2008 Craig Edwards <craigedwards@brainbox.cc>
8  *   Copyright (C) 2008 Pippijn van Steenhoven <pip88nl@gmail.com>
9  *   Copyright (C) 2008 Thomas Stagner <aquanight@inspircd.org>
10  *   Copyright (C) 2007 Dennis Friis <peavey@inspircd.org>
11  *
12  * This file is part of InspIRCd.  InspIRCd is free software: you can
13  * redistribute it and/or modify it under the terms of the GNU General Public
14  * License as published by the Free Software Foundation, version 2.
15  *
16  * This program is distributed in the hope that it will be useful, but WITHOUT
17  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
18  * FOR A PARTICULAR PURPOSE.  See the GNU General Public License for more
19  * details.
20  *
21  * You should have received a copy of the GNU General Public License
22  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
23  */
24
25
26 #include "inspircd.h"
27
28 #include "main.h"
29 #include "commands.h"
30 #include "treeserver.h"
31
32 void CmdBuilder::FireEvent(Server* target, const char* cmd, ClientProtocol::TagMap& taglist)
33 {
34         FOREACH_MOD_CUSTOM(Utils->Creator->GetMessageEventProvider(), ServerProtocol::MessageEventListener, OnBuildMessage, (target, cmd, taglist));
35         UpdateTags();
36 }
37
38 void CmdBuilder::FireEvent(User* target, const char* cmd, ClientProtocol::TagMap& taglist)
39 {
40         FOREACH_MOD_CUSTOM(Utils->Creator->GetMessageEventProvider(), ServerProtocol::MessageEventListener, OnBuildMessage, (target, cmd, taglist));
41         UpdateTags();
42 }
43
44 void CmdBuilder::UpdateTags()
45 {
46         std::string taglist;
47         if (!tags.empty())
48         {
49                 char separator = '@';
50                 for (ClientProtocol::TagMap::const_iterator iter = tags.begin(); iter != tags.end(); ++iter)
51                 {
52                         taglist.push_back(separator);
53                         separator = ';';
54                         taglist.append(iter->first);
55                         if (!iter->second.value.empty())
56                         {
57                                 taglist.push_back('=');
58                                 taglist.append(iter->second.value);
59                         }
60                 }
61                 taglist.push_back(' ');
62         }
63         content.replace(0, tagsize, taglist);
64         tagsize = taglist.length();
65 }
66
67 CmdResult CommandSNONotice::Handle(User* user, Params& params)
68 {
69         ServerInstance->SNO->WriteToSnoMask(params[0][0], "From " + user->nick + ": " + params[1]);
70         return CMD_SUCCESS;
71 }
72
73 CmdResult CommandEndBurst::HandleServer(TreeServer* server, Params& params)
74 {
75         server->FinishBurst();
76         return CMD_SUCCESS;
77 }