anope

- supernets anope source code & configuration
git clone git://git.acid.vegas/anope.git
Log | Files | Refs | Archive | README

access.cpp (1324B)

      1 /*
      2  * (C) 2003-2022 Anope Team
      3  * Contact us at team@anope.org
      4  *
      5  * Please read COPYING and README for further details.
      6  */
      7 
      8 #include "../../webcpanel.h"
      9 
     10 WebCPanel::NickServ::Access::Access(const Anope::string &cat, const Anope::string &u) : WebPanelProtectedPage(cat, u)
     11 {
     12 }
     13 
     14 bool WebCPanel::NickServ::Access::OnRequest(HTTPProvider *server, const Anope::string &page_name, HTTPClient *client, HTTPMessage &message, HTTPReply &reply, NickAlias *na, TemplateFileServer::Replacements &replacements)
     15 {
     16 	if (message.post_data.count("access") > 0)
     17 	{
     18 		std::vector<Anope::string> params;
     19 		params.push_back("ADD");
     20 		params.push_back(message.post_data["access"]);
     21 
     22 		WebPanel::RunCommand(client, na->nc->display, na->nc, "NickServ", "nickserv/access", params, replacements);
     23 	}
     24 	else if (message.get_data.count("del") > 0 && message.get_data.count("mask") > 0)
     25 	{
     26 		std::vector<Anope::string> params;
     27 		params.push_back("DEL");
     28 		params.push_back(message.get_data["mask"]);
     29 
     30 		WebPanel::RunCommand(client, na->nc->display, na->nc, "NickServ", "nickserv/access", params, replacements);
     31 	}
     32 
     33 	for (unsigned i = 0; i < na->nc->access.size(); ++i)
     34 		replacements["ACCESS"] = na->nc->access[i];
     35 
     36 	TemplateFileServer page("nickserv/access.html");
     37 	page.Serve(server, page_name, client, message, reply, replacements);
     38 	return true;
     39 }