mirror of
https://github.com/RetroShare/RetroShare.git
synced 2025-08-02 11:16:34 -04:00
added config saving feature to distrib services. you can now save configurations that is local to
a particular distrib service (forum, channels, and blogs) -- needs full rs-gui recompile - added ability of forum's to save 'msg read' status (meant to supercede current similar feature implement in qt gui side) - updated test for distrib items, added forum items test - added doxygen comments for rsinit and others. git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@3314 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
parent
cee8600a93
commit
e40c469aa4
12 changed files with 227 additions and 21 deletions
|
@ -262,9 +262,18 @@ bool p3Forums::ForumMessageSend(ForumMsgInfo &info)
|
|||
{
|
||||
bool signIt = (info.msgflags == RS_DISTRIB_AUTHEN_REQ);
|
||||
|
||||
createForumMsg(info.forumId, info.parentId,
|
||||
std::string mId = createForumMsg(info.forumId, info.parentId,
|
||||
info.title, info.msg, signIt);
|
||||
|
||||
setMessageStatus(info.forumId, mId, FORUM_MSG_STATUS_READ);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool p3Forums::setMessageStatus(const std::string& fId,const std::string& mId,const uint32_t status)
|
||||
{
|
||||
setReadStatus(fId, mId, status);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -517,4 +526,60 @@ void p3Forums::loadDummyData()
|
|||
mForumsChanged = true;
|
||||
}
|
||||
|
||||
std::list<RsItem* > p3Forums::childSaveList()
|
||||
{
|
||||
return mSaveList;
|
||||
}
|
||||
|
||||
void p3Forums::setReadStatus(const std::string& forumId, const std::string& msgId, const uint32_t status)
|
||||
{
|
||||
RsStackMutex stack(distribMtx);
|
||||
|
||||
std::list<RsForumReadStatus *>::iterator lit = mReadStatus.begin();
|
||||
|
||||
for(; lit != mReadStatus.end(); lit++)
|
||||
{
|
||||
|
||||
if((*lit)->forumId == forumId)
|
||||
{
|
||||
(*lit)->msgReadStatus[msgId] = status;
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// if forum id does not exist create one
|
||||
if(lit == mReadStatus.end())
|
||||
{
|
||||
RsForumReadStatus* rsi = new RsForumReadStatus();
|
||||
rsi->forumId = forumId;
|
||||
rsi->msgReadStatus[msgId] = status;
|
||||
mReadStatus.push_back(rsi);
|
||||
mSaveList.push_back(rsi);
|
||||
}
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
bool p3Forums::childLoadList(std::list<RsItem* >& configSaves)
|
||||
{
|
||||
RsForumReadStatus* drs = NULL;
|
||||
std::list<RsItem* >::iterator it;
|
||||
|
||||
for(it = configSaves.begin(); it != configSaves.end(); it++)
|
||||
{
|
||||
if(NULL != (drs = dynamic_cast<RsForumReadStatus* >(*it)))
|
||||
{
|
||||
mReadStatus.push_back(drs);
|
||||
mSaveList.push_back(drs);
|
||||
}
|
||||
else
|
||||
{
|
||||
std::cerr << "p3Forums::childLoadList(): Configs items loaded were incorrect!"
|
||||
<< std::endl;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue