+void IPageHandler::CreateQueryVarMap(Poco::Net::HTTPServerRequest &request, std::map<std::string,std::string> &vars)\r
+{\r
+ for(Poco::Net::HTTPServerRequest::ConstIterator i=request.begin(); i!=request.end(); i++)\r
+ {\r
+ vars[(*i).first]=(*i).second;\r
+ }\r
+\r
+ // handle HTMLForm and multiparts\r
+ MultiPartParser mpp;\r
+ Poco::Net::HTMLForm form(request,request.stream(),mpp);\r
+ for(Poco::Net::HTMLForm::ConstIterator i=form.begin(); i!=form.end(); i++)\r
+ {\r
+ vars[(*i).first]=(*i).second;\r
+ }\r
+\r
+ // for a POST method, the HTMLForm won't grab vars off the query string so we\r
+ // temporarily set the method to GET and parse with the HTMLForm again\r
+ if(request.getMethod()=="POST")\r
+ {\r
+ request.setMethod("GET");\r
+ Poco::Net::HTMLForm form1(request,request.stream(),mpp);\r
+ for(Poco::Net::HTMLForm::ConstIterator i=form1.begin(); i!=form1.end(); i++)\r
+ {\r
+ vars[(*i).first]=(*i).second;\r