X-Git-Url: https://git.pterodactylus.net/?p=fms.git;a=blobdiff_plain;f=src%2Fhttp%2Fpages%2Fpeerdetailspage.cpp;h=7f06fd2eb51142d72224cad67eb87a084adcf4b7;hp=83b1b34200aa36972d3a73595d91ab2cb74b2952;hb=4430e7762844c66428b6f822288beb71b7f82b95;hpb=ee580d19b7920904587e18d72a3465d52eab6204 diff --git a/src/http/pages/peerdetailspage.cpp b/src/http/pages/peerdetailspage.cpp index 83b1b34..7f06fd2 100644 --- a/src/http/pages/peerdetailspage.cpp +++ b/src/http/pages/peerdetailspage.cpp @@ -9,35 +9,70 @@ const std::string PeerDetailsPage::GeneratePage(const std::string &method, const { std::string content=""; int identityid=0; + std::string identityidstr=""; std::string name; std::string publickey; std::string messagetrust; std::string trustlisttrust; std::string keypart=""; std::string lastseen=""; + std::string dateadded=""; if(queryvars.find("identityid")!=queryvars.end() && (*queryvars.find("identityid")).second!="") { + identityidstr=(*queryvars.find("identityid")).second; StringFunctions::Convert((*queryvars.find("identityid")).second,identityid); } - SQLite3DB::Statement st=m_db->Prepare("SELECT Name,PublicKey,LastSeen FROM tblIdentity WHERE IdentityID=?;"); + if(identityid!=0 && queryvars.find("formaction")!=queryvars.end() && (*queryvars.find("formaction")).second=="deletemessages") + { + SQLite3DB::Statement del=m_db->Prepare("DELETE FROM tblMessage WHERE IdentityID=?;"); + del.Bind(0,identityid); + del.Step(); + } + + SQLite3DB::Statement st=m_db->Prepare("SELECT Name,PublicKey,DateAdded,LastSeen FROM tblIdentity WHERE IdentityID=?;"); st.Bind(0,identityid); st.Step(); + content+=""; if(st.RowReturned()) { st.ResultText(0,name); st.ResultText(1,publickey); - st.ResultText(2,lastseen); + st.ResultText(2,dateadded); + st.ResultText(3,lastseen); - content+="
"; content+=""; - content+=""; + content+=""; + content+=""; content+=""; - content+="
Name"+SanitizeOutput(name)+"
Public Key"+SanitizeOutput(publickey)+"
Public Key"+SanitizeOutput(publickey)+"
Date Added"+dateadded+"
Last Seen"+lastseen+"
"; } + // get message count posted by this identity + st=m_db->Prepare("SELECT COUNT(MessageID) FROM tblMessage WHERE IdentityID=?;"); + st.Bind(0,identityid); + st.Step(); + + if(st.RowReturned()) + { + std::string messagecountstr="0"; + st.ResultText(0,messagecountstr); + content+=""; + content+="Message Count"; + content+=""+messagecountstr; + content+="  
"; + content+=""; + content+=""; + content+=""; + content+="
"; + content+=""; + content+=""; + } + + content+=""; + + st=m_db->Prepare("SELECT Name,PublicKey,MessageTrust,TrustListTrust,tblIdentity.IdentityID FROM tblPeerTrust INNER JOIN tblIdentity ON tblPeerTrust.TargetIdentityID=tblIdentity.IdentityID WHERE tblPeerTrust.IdentityID=? ORDER BY Name COLLATE NOCASE;"); st.Bind(0,identityid); st.Step();