version 0.2.11
[fms.git] / src / http / httpthread.cpp
index a1f51c7..4760f80 100644 (file)
 #include "../../include/http/pages/peertrustpage.h"\r
 #include "../../include/http/pages/controlboardpage.h"\r
 #include "../../include/http/pages/peerdetailspage.h"\r
+#include "../../include/http/pages/peermaintenancepage.h"\r
+#include "../../include/http/pages/execquerypage.h"\r
+#include "../../include/http/pages/boardspage.h"\r
+#include "../../include/http/pages/insertedfilespage.h"\r
 \r
 #include <iostream>\r
 \r
@@ -26,8 +30,11 @@ HTTPThread::HTTPThread()
        Option::Instance()->Get("HTTPListenPort",portstr);\r
        StringFunctions::Convert(portstr,port);\r
 \r
+       std::string aclstr;\r
+       Option::Instance()->Get("HTTPAccessControl",aclstr);\r
+\r
        // set template\r
-       templatestr="<html><head></head><body><a href=\"home.htm\">Home</a><br>[CONTENT]</body></html>";\r
+       templatestr="<html><head></head><body><a href=\"home.htm\">Home</a><br><h1>Could not find template.htm!  Place in program directory and restart!</h1><br>[CONTENT]</body></html>";\r
        FILE *infile=fopen("template.htm","r+b");\r
        if(infile)\r
        {\r
@@ -54,12 +61,17 @@ HTTPThread::HTTPThread()
        m_pagehandlers.push_back(new PeerTrustPage(templatestr));\r
        m_pagehandlers.push_back(new ControlBoardPage(templatestr));\r
        m_pagehandlers.push_back(new PeerDetailsPage(templatestr));\r
+       m_pagehandlers.push_back(new PeerMaintenancePage(templatestr));\r
+       m_pagehandlers.push_back(new ExecQueryPage(templatestr));\r
+       m_pagehandlers.push_back(new BoardsPage(templatestr));\r
+       m_pagehandlers.push_back(new InsertedFilesPage(templatestr));\r
        // homepage must be last - catch all page handler\r
        m_pagehandlers.push_back(new HomePage(templatestr));\r
 \r
        m_ctx=0;\r
-       m_ctx=shttpd_init(NULL,"listen_ports",portstr.c_str(),NULL);\r
-       shttpd_listen(m_ctx,port,false);\r
+       m_ctx=shttpd_init();\r
+       shttpd_set_option(m_ctx,"ports",portstr.c_str());\r
+       shttpd_set_option(m_ctx,"acl",aclstr.c_str());\r
 \r
        shttpd_register_uri(m_ctx,"*",HTTPThread::PageCallback,this);\r
 \r