1 #include "../../../include/http/pages/recentlyaddedpage.h"
\r
2 #include "../../../include/global.h"
\r
3 #include "../../../include/stringfunctions.h"
\r
5 #include <Poco/DateTime.h>
\r
6 #include <Poco/DateTimeFormatter.h>
\r
7 #include <Poco/Timespan.h>
\r
9 const std::string RecentlyAddedPage::GeneratePage(const std::string &method, const std::map<std::string,std::string> &queryvars)
\r
11 std::string content="";
\r
12 Poco::DateTime date;
\r
14 std::string countstr="0";
\r
16 if(queryvars.find("formaction")!=queryvars.end() && (*queryvars.find("formaction")).second=="delete" && ValidateFormPassword(queryvars))
\r
18 std::vector<std::string> identityids;
\r
19 CreateArgArray(queryvars,"chkdel",identityids);
\r
21 SQLite3DB::Statement del=m_db->Prepare("DELETE FROM tblIdentity WHERE IdentityID=?;");
\r
23 for(std::vector<std::string>::iterator i=identityids.begin(); i!=identityids.end(); i++)
\r
35 content="<h2>Recently Added Peers</h2>";
\r
37 SQLite3DB::Statement st=m_db->Prepare("SELECT IdentityID, PublicKey, Name, DateAdded, AddedMethod FROM tblIdentity WHERE DateAdded>=? ORDER BY DateAdded DESC;");
\r
38 date-=Poco::Timespan(5,0,0,0,0);
\r
39 st.Bind(0,Poco::DateTimeFormatter::format(date,"%Y-%m-%d %H:%M:%S"));
\r
42 content+="<form name=\"frmdel\" method=\"post\">";
\r
43 content+=CreateFormPassword();
\r
44 content+="<input type=\"hidden\" name=\"formaction\" value=\"delete\">";
\r
45 content+="<table class=\"small90\">";
\r
46 content+="<tr><th>Name</th><th>Date Added</th><th>Added Method</th></tr>";
\r
48 while(st.RowReturned())
\r
50 std::string identityidstr="";
\r
51 std::string publickey="";
\r
52 std::string name="";
\r
53 std::string dateadded="";
\r
54 std::string addedmethod="";
\r
56 st.ResultText(0,identityidstr);
\r
57 st.ResultText(1,publickey);
\r
58 st.ResultText(2,name);
\r
59 st.ResultText(3,dateadded);
\r
60 st.ResultText(4,addedmethod);
\r
62 StringFunctions::Convert(count,countstr);
\r
65 content+="<td title=\""+publickey+"\">";
\r
66 content+="<a href=\"peerdetails.htm?identityid="+identityidstr+"\">";
\r
67 content+=SanitizeOutput(CreateShortIdentityName(name,publickey));
\r
70 content+="<td>"+dateadded+"</td>";
\r
71 content+="<td>"+SanitizeOutput(addedmethod)+"</td>";
\r
72 content+="<td><input type=\"checkbox\" name=\"chkdel["+countstr+"]\" value=\""+identityidstr+"\"></td>";
\r
79 content+="<tr><td colspan=\"4\"><center><input type=\"submit\" value=\"Delete Selected\"></center></td></tr>";
\r
80 content+="</table>";
\r
82 return StringFunctions::Replace(m_template,"[CONTENT]",content);
\r
85 const bool RecentlyAddedPage::WillHandleURI(const std::string &uri)
\r
87 if(uri.find("recentlyadded.")!=std::string::npos)
\r