70 lines
1.3 KiB
C++
Executable File
70 lines
1.3 KiB
C++
Executable File
/*
|
|
* This file is a part of CMSLU -- Content Management System like Unix
|
|
* and is not publicly distributed
|
|
*
|
|
* Copyright (c) 2008, Tomasz Sowa
|
|
* All rights reserved.
|
|
*
|
|
*/
|
|
|
|
#include "content.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void Content::FunRm()
|
|
{
|
|
// !! narazie usuwanie tylko dla plikow
|
|
|
|
if( !request.is_item )
|
|
{
|
|
request.status = Error::permision_denied;
|
|
return;
|
|
}
|
|
|
|
if( !request.HasWriteAccess(*request.dir_table.back()) || !request.HasWriteAccess(request.item) )
|
|
{
|
|
request.status = Error::permision_denied;
|
|
return;
|
|
}
|
|
|
|
|
|
if( request.param_table.empty() )
|
|
{
|
|
// we'll put some information about the deleted item (on the next page)
|
|
request.session->item = request.item;
|
|
|
|
// !! zmienic interfejs dla db.DelItem
|
|
if( db.DelItem( request.item ) )
|
|
{
|
|
request.session->done_status = Error::ok;
|
|
log << log2 << "Content: deleted item: subject: " << request.item.subject << ", id: " << request.item.id << logend;
|
|
}
|
|
else
|
|
{
|
|
request.session->done_status = Error::db_no_item;
|
|
}
|
|
|
|
request.session->done = Done::deleted_item;
|
|
request.result = Request::redirect;
|
|
|
|
RedirectTo(*request.dir_table.back());
|
|
|
|
request.session->done_timer = 2;
|
|
}
|
|
else
|
|
{
|
|
if( request.IsParam("potwierdz") )
|
|
{
|
|
//request.result = Request::del_item_confirm;
|
|
}
|
|
else
|
|
request.result = Request::err404;
|
|
}
|
|
}
|
|
|
|
|
|
|