From 5f72d1fda5e297990aee7e0be805df0a734ca87d Mon Sep 17 00:00:00 2001 From: Adam Date: Wed, 12 Dec 2012 01:04:08 -0500 Subject: Squashed commit of the following: commit 317ead6b395237fd0fcf8a39ef028404fcd0ece2 Author: MatthewM Date: Tue Dec 11 02:14:06 2012 -0500 Added the HostServ link to the navigation bar commit 6b15d7fc5e68809f282f5d8597f5bc198851b41c Author: MatthewM Date: Tue Dec 11 01:58:18 2012 -0500 Correct some slight over sights that was missed eariler commit b356a46789fabe4f69af8739e721bc069aa7a348 Author: MatthewM Date: Mon Dec 10 23:44:51 2012 -0500 Started work on adding HostServ to the web panel --- modules/extra/webcpanel/pages/hostserv/request.cpp | 36 ++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 modules/extra/webcpanel/pages/hostserv/request.cpp (limited to 'modules/extra/webcpanel/pages/hostserv/request.cpp') diff --git a/modules/extra/webcpanel/pages/hostserv/request.cpp b/modules/extra/webcpanel/pages/hostserv/request.cpp new file mode 100644 index 000000000..aad933c3a --- /dev/null +++ b/modules/extra/webcpanel/pages/hostserv/request.cpp @@ -0,0 +1,36 @@ +/* + * (C) 2003-2012 Anope Team + * Contact us at team@anope.org + * + * Please read COPYING and README for further details. + */ + +#include "../../webcpanel.h" + +WebCPanel::HostServ::Request::Request(const Anope::string &cat, const Anope::string &u) : WebPanelProtectedPage (cat, u) +{ +} + +bool WebCPanel::HostServ::Request::OnRequest(HTTPProvider *server, const Anope::string &page_name, HTTPClient *client, HTTPMessage &message, HTTPReply &reply, NickAlias *na, TemplateFileServer::Replacements &replacements) +{ + if (message.post_data.count("req") > 0) + { + std::vector params; + std::stringstream cmdstr; + + cmdstr << HTTPUtils::URLDecode(message.post_data["req"]); + params.push_back(cmdstr.str()); + WebPanel::RunCommand(na->nc->display, na->nc, Config->HostServ, "hostserv/request", params, replacements); + } + + if (na->HasVhost()) + { + if (na->GetVhostIdent().empty() == false) + replacements["VHOST"] = na->GetVhostIdent() + "@" + na->GetVhostHost(); + else + replacements["VHOST"] = na->GetVhostHost(); + } + TemplateFileServer page("hostserv/request.html"); + page.Serve(server, page_name, client, message, reply, replacements); + return true; +} -- cgit