added: winix function: rmuser
changed: UGContainer<> now uses std::list as a storage
(previously it was using std::vector with pointers)
removed: now we don't have the operator[] for UGContainer<>
git-svn-id: svn://ttmath.org/publicrep/winix/trunk@816 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
82
functions/rmuser.cpp
Executable file
82
functions/rmuser.cpp
Executable file
@@ -0,0 +1,82 @@
|
||||
/*
|
||||
* This file is a part of Winix
|
||||
* and is not publicly distributed
|
||||
*
|
||||
* Copyright (c) 2012, Tomasz Sowa
|
||||
* All rights reserved.
|
||||
*
|
||||
*/
|
||||
|
||||
#include "rmuser.h"
|
||||
#include "core/log.h"
|
||||
#include "core/misc.h"
|
||||
#include "core/plugin.h"
|
||||
#include "functions/functions.h"
|
||||
|
||||
|
||||
|
||||
namespace Fun
|
||||
{
|
||||
|
||||
RmUser::RmUser()
|
||||
{
|
||||
fun.url = L"rmuser";
|
||||
}
|
||||
|
||||
|
||||
bool RmUser::HasAccess()
|
||||
{
|
||||
return cur->session->puser && cur->session->puser->super_user;
|
||||
}
|
||||
|
||||
|
||||
bool RmUser::RemoveUser(long user_id)
|
||||
{
|
||||
User * puser = system->users.GetUser(user_id);
|
||||
bool result = false;
|
||||
|
||||
if( puser )
|
||||
{
|
||||
name = puser->name;
|
||||
|
||||
if( system->users.Remove(user_id) )
|
||||
{
|
||||
result = true;
|
||||
log << log2 << "RmUser: user id: " << user_id << " name: " << name << " was removed" << logend;
|
||||
|
||||
if( db->RemoveUser(user_id) != WINIX_ERR_OK )
|
||||
log << log1 << "RmUser: I cannot remove a user id: " << user_id << " from database" << logend;
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
void RmUser::MakePost()
|
||||
{
|
||||
if( cur->session->puser )
|
||||
{
|
||||
long user_id;
|
||||
|
||||
if( cur->session->puser->super_user )
|
||||
user_id = Tol(cur->request->PostVar(L"userid"));
|
||||
else
|
||||
user_id = cur->session->puser->id;
|
||||
|
||||
RemoveUser(user_id);
|
||||
}
|
||||
|
||||
system->RedirectToLastItem();
|
||||
}
|
||||
|
||||
|
||||
void RmUser::MakeGet()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
} // namespace
|
||||
|
||||
Reference in New Issue
Block a user