/* * This file is a part of Winix * and is not publicly distributed * * Copyright (c) 2012-2014, 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 Winix { 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 } // namespace Winix