added: Rebus

(when no logged user wants to send a message then he is asked a question)


git-svn-id: svn://ttmath.org/publicrep/cmslu/trunk@521 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
2009-11-16 23:36:38 +00:00
parent c62d48160a
commit 2ca44ec361
25 changed files with 509 additions and 193 deletions

View File

@@ -371,3 +371,53 @@ void Content::PrepareUrl(Item & item)
bool Content::CheckRebus()
{
if( request.session->puser )
// logged user don't have to use the rebus
return true;
if( !request.session->rebus_item )
{
log << log1 << "Content: rebus not set" << logend;
return false;
}
try
{
std::string & answer = request.PostVar("rebus");
if( data.rebus.IsAnswerOk(request.session->rebus_item, answer) )
return true;
}
catch(const Error &)
{
}
log << log1 << "Content: rebus has an incorrect answer" << logend;
return false;
}
void Content::SetUser()
{
if( request.session->puser )
{
request.item.user_id = request.session->puser->id;
request.item.guest_name.clear();
}
else
{
request.item.user_id = -1;
try
{
request.item.guest_name = request.PostVar("guestname");
}
catch(const Error &)
{
}
}
}