X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=src%2Fhttp%2Fpages%2Fpeerdetailspage.cpp;h=1ff0493504d4a93b0b10279de4752149829ca48a;hb=175f098e7e712b839db433b93fe8649a402c6784;hp=83b1b34200aa36972d3a73595d91ab2cb74b2952;hpb=f60495a029c54358f82956482fe203fe2b7b5b23;p=fms.git diff --git a/src/http/pages/peerdetailspage.cpp b/src/http/pages/peerdetailspage.cpp index 83b1b34..1ff0493 100644 --- a/src/http/pages/peerdetailspage.cpp +++ b/src/http/pages/peerdetailspage.cpp @@ -9,36 +9,74 @@ 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=""; + std::string addedmethod=""; 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,AddedMethod 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); + st.ResultText(4,addedmethod); - content+="
"; content+=""; - content+=""; + content+=""; + content+=""; content+=""; - content+="
Name"+SanitizeOutput(name)+"
Public Key"+SanitizeOutput(publickey)+"
Public Key"+SanitizeOutput(publickey)+"
Date Added"+dateadded+"
Last Seen"+lastseen+"
"; + content+="Added Method"+SanitizeOutput(addedmethod)+""; + } + + // 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+=""; } - 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;"); + content+=""; + + + st=m_db->Prepare("SELECT Name,PublicKey,MessageTrust,TrustListTrust,tblIdentity.IdentityID,tblPeerTrust.MessageTrustComment,tblPeerTrust.TrustListTrustComment FROM tblPeerTrust INNER JOIN tblIdentity ON tblPeerTrust.TargetIdentityID=tblIdentity.IdentityID WHERE tblPeerTrust.IdentityID=? ORDER BY Name COLLATE NOCASE;"); st.Bind(0,identityid); st.Step(); @@ -46,16 +84,20 @@ const std::string PeerDetailsPage::GeneratePage(const std::string &method, const content+=""; content+="Trust List of this identity"; content+=""; - content+="Message TrustTrust List Trust"; + content+="Message TrustMessage CommentTrust List TrustTrust Comment"; while(st.RowReturned()) { std::string thisid=""; + std::string messagetrustcomment=""; + std::string trustlisttrustcomment=""; st.ResultText(0,name); st.ResultText(1,publickey); st.ResultText(2,messagetrust); st.ResultText(3,trustlisttrust); st.ResultText(4,thisid); + st.ResultText(5,messagetrustcomment); + st.ResultText(6,trustlisttrustcomment); if(publickey.size()>8) { @@ -65,29 +107,35 @@ const std::string PeerDetailsPage::GeneratePage(const std::string &method, const content+=""; content+=""+SanitizeOutput(name+keypart)+"..."; content+=""+messagetrust+""; + content+=""+SanitizeOutput(messagetrustcomment)+""; content+=""+trustlisttrust+""; + content+=""+SanitizeOutput(trustlisttrustcomment)+""; content+="\r\n"; st.Step(); } - st=m_db->Prepare("SELECT Name,PublicKey,MessageTrust,TrustListTrust,tblIdentity.IdentityID FROM tblPeerTrust INNER JOIN tblIdentity ON tblPeerTrust.IdentityID=tblIdentity.IdentityID WHERE tblPeerTrust.TargetIdentityID=? ORDER BY Name COLLATE NOCASE;"); + st=m_db->Prepare("SELECT Name,PublicKey,MessageTrust,TrustListTrust,tblIdentity.IdentityID,tblPeerTrust.MessageTrustComment,tblPeerTrust.TrustListTrustComment FROM tblPeerTrust INNER JOIN tblIdentity ON tblPeerTrust.IdentityID=tblIdentity.IdentityID WHERE tblPeerTrust.TargetIdentityID=? ORDER BY Name COLLATE NOCASE;"); st.Bind(0,identityid); st.Step(); content+=""; content+="Trust of this identity from other identities"; content+=""; - content+="Message TrustTrust List Trust"; + content+="Message TrustMessage CommentTrust List TrustTrust Comment"; while(st.RowReturned()) { std::string thisid=""; + std::string messagetrustcomment=""; + std::string trustlisttrustcomment=""; st.ResultText(0,name); st.ResultText(1,publickey); st.ResultText(2,messagetrust); st.ResultText(3,trustlisttrust); st.ResultText(4,thisid); + st.ResultText(5,messagetrustcomment); + st.ResultText(6,trustlisttrustcomment); if(publickey.size()>8) { @@ -97,7 +145,9 @@ const std::string PeerDetailsPage::GeneratePage(const std::string &method, const content+=""; content+=""+SanitizeOutput(name+keypart)+"..."; content+=""+messagetrust+""; + content+=""+SanitizeOutput(messagetrustcomment)+""; content+=""+trustlisttrust+""; + content+=""+SanitizeOutput(trustlisttrustcomment)+""; content+=""; st.Step();