\r
const std::string ForumViewThreadPage::FixBody(const std::string &body)\r
{\r
- static std::string whitespace=" \t\r\n";\r
std::string output=body;\r
\r
output=StringFunctions::Replace(output,"\r\n","\n");\r
\r
UnicodeFormatter::LineWrap(output,80,"",output);\r
- /*\r
- // put \n after 80 contiguous characters in the body\r
- std::string::size_type prevpos=0;\r
- std::string::size_type pos=output.find_first_of(whitespace);\r
- while(pos!=std::string::npos)\r
- {\r
- while(pos-prevpos>80)\r
- {\r
- output.insert(prevpos+80,"\n");\r
- prevpos+=81; // 81 because of the extra newline we just inserted\r
- }\r
- prevpos=pos;\r
- pos=output.find_first_of(whitespace,pos+1);\r
- }\r
- while(output.size()-prevpos>80) // check the last line of the message (no whitespace after it)\r
- {\r
- output.insert(prevpos+80,"\n");\r
- prevpos+=81;\r
- }\r
- */\r
\r
output=StringFunctions::Replace(output,"<","<");\r
output=StringFunctions::Replace(output,">",">");\r
firstunreadst.ResultText(0,firstunreadidstr);\r
}\r
\r
- SQLite3DB::Statement updateread=m_db->Prepare("UPDATE tblMessage SET Read=1 WHERE tblMessage.MessageID IN (SELECT MessageID FROM tblThreadPost WHERE ThreadID=?);");\r
- updateread.Bind(0,threadidstr);\r
- updateread.Step();\r
+ if(queryvars.find("formaction")!=queryvars.end() && (*queryvars.find("formaction")).second=="markunread")\r
+ {\r
+ SQLite3DB::Statement updateread=m_db->Prepare("UPDATE tblMessage SET Read=0 WHERE tblMessage.MessageID IN (SELECT MessageID FROM tblThreadPost WHERE ThreadID=?);");\r
+ updateread.Bind(0,threadidstr);\r
+ updateread.Step();\r
+ }\r
+ else\r
+ {\r
+ SQLite3DB::Statement updateread=m_db->Prepare("UPDATE tblMessage SET Read=1 WHERE tblMessage.MessageID IN (SELECT MessageID FROM tblThreadPost WHERE ThreadID=?);");\r
+ updateread.Bind(0,threadidstr);\r
+ updateread.Step();\r
+ }\r
\r
SQLite3DB::Statement trustst=m_db->Prepare("SELECT LocalMessageTrust, LocalTrustListTrust, PeerMessageTrust, PeerTrustListTrust, Name FROM tblIdentity WHERE IdentityID=?;");\r
\r
content+="<a href=\"#"+firstunreadidstr+"\">First Unread Message</a>";\r
content+="</td>";\r
}\r
+ content+="<td>";\r
+ content+="<a href=\""+m_pagename+"?formaction=markunread&threadid="+threadidstr+"&boardid="+boardidstr+"¤tpage="+currentpagestr+"\">Mark Unread</a>";\r
+ content+="</td>";\r
content+="</tr>";\r
content+="</table>\r\n";\r
\r