From de27f66b59439e6d6db01f30dc5eee9807028db4 Mon Sep 17 00:00:00 2001 From: Mattes D Date: Tue, 21 Apr 2015 10:54:43 +0200 Subject: Added URL member to the HTTPRequest API class. --- src/WebAdmin.cpp | 3 ++- src/WebAdmin.h | 9 +++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/WebAdmin.cpp b/src/WebAdmin.cpp index aff3b4710..484626de3 100644 --- a/src/WebAdmin.cpp +++ b/src/WebAdmin.cpp @@ -234,7 +234,7 @@ void cWebAdmin::HandleWebadminRequest(cHTTPConnection & a_Connection, cHTTPReque bool ShouldWrapInTemplate = ((BareURL.length() > 1) && (BareURL[1] != '~')); // Retrieve the request data: - cWebadminRequestData * Data = (cWebadminRequestData *)(a_Request.GetUserData()); + cWebadminRequestData * Data = reinterpret_cast(a_Request.GetUserData()); if (Data == nullptr) { a_Connection.SendStatusAndReason(500, "Bad UserData"); @@ -244,6 +244,7 @@ void cWebAdmin::HandleWebadminRequest(cHTTPConnection & a_Connection, cHTTPReque // Wrap it all up for the Lua call: AString Template; HTTPTemplateRequest TemplateRequest; + TemplateRequest.Request.URL = a_Request.GetURL(); TemplateRequest.Request.Username = a_Request.GetAuthUsername(); TemplateRequest.Request.Method = a_Request.GetMethod(); TemplateRequest.Request.Path = BareURL.substr(1); diff --git a/src/WebAdmin.h b/src/WebAdmin.h index 1e1a9bfa9..4dbcc57a6 100644 --- a/src/WebAdmin.h +++ b/src/WebAdmin.h @@ -50,9 +50,18 @@ struct HTTPRequest typedef std::map< std::string, std::string > StringStringMap; typedef std::map< std::string, HTTPFormData > FormDataMap; + /** The entire URL presented to the HTTP server. */ + AString URL; + + /** HTTP method used for the request ("GET", "POST" etc.) */ AString Method; + + /** The Path part of the request's URL (excluding GET params). */ AString Path; + + /** Name of the logged-in user. Empty if not logged in. */ AString Username; + // tolua_end /** Parameters given in the URL, after the questionmark */ -- cgit v1.2.3