version 0.2.22
[fms.git] / src / http / pages / confirmpage.cpp
1 #include "../../../include/http/pages/confirmpage.h"\r
2 #include "../../../include/stringfunctions.h"\r
3 \r
4 const std::string ConfirmPage::GeneratePage(const std::string &method, const std::map<std::string,std::string> &queryvars)\r
5 {\r
6         std::string content="";\r
7         std::string target="";\r
8         std::string confirmdescription="";\r
9         \r
10         if(queryvars.find("targetpage")!=queryvars.end())\r
11         {\r
12                 target=(*queryvars.find("targetpage")).second;\r
13         }\r
14         if(queryvars.find("confirmdescription")!=queryvars.end())\r
15         {\r
16                 confirmdescription=(*queryvars.find("confirmdescription")).second;\r
17         }\r
18         \r
19         content+="<h1>Confirm</h1>";\r
20         content+=confirmdescription+"<br>";\r
21         content+="<form name=\"confirm\" method=\"POST\" action=\""+target+"\">";\r
22         for(std::map<std::string,std::string>::const_iterator i=queryvars.begin(); i!=queryvars.end(); i++)\r
23         {\r
24                 if((*i).first!="targetpage" && (*i).first!="confirmdescription")\r
25                 {\r
26                         content+="<input type=\"hidden\" name=\""+(*i).first+"\" value=\""+(*i).second+"\">";   \r
27                 }\r
28         }\r
29         content+="<input type=\"submit\" value=\"Continue\">";\r
30         content+="</form>";\r
31         content+="<form name=\"cancel\" method=\"POST\" action=\""+target+"\">";\r
32         content+="<input type=\"submit\" value=\"Cancel\">";\r
33         content+="</form>";\r
34 \r
35         return "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n"+StringFunctions::Replace(m_template,"[CONTENT]",content);\r
36 }\r
37 \r
38 \r
39 const bool ConfirmPage::WillHandleURI(const std::string &uri)\r
40 {\r
41         if(uri.find("confirm.")!=std::string::npos)\r
42         {\r
43                 return true;\r
44         }\r
45         else\r
46         {\r
47                 return false;\r
48         }\r
49 }\r