From 48486e99479657edb70474ae9b18dbe713e1cae0 Mon Sep 17 00:00:00 2001 From: brettp Date: Wed, 14 Oct 2009 19:40:21 +0000 Subject: Standardized actions/admin/* git-svn-id: http://code.elgg.org/elgg/trunk@3540 36083f99-b078-4883-b0ff-0f9b5a30f544 --- actions/admin/user/ban.php | 62 +++++++++++++-------------- actions/admin/user/delete.php | 57 ++++++++++++------------- actions/admin/user/makeadmin.php | 60 +++++++++++++------------- actions/admin/user/removeadmin.php | 60 +++++++++++++------------- actions/admin/user/resetpassword.php | 83 +++++++++++++++++++----------------- actions/admin/user/unban.php | 71 +++++++++++++++--------------- 6 files changed, 194 insertions(+), 199 deletions(-) (limited to 'actions/admin/user') diff --git a/actions/admin/user/ban.php b/actions/admin/user/ban.php index 1033ec00a..030f5ae73 100644 --- a/actions/admin/user/ban.php +++ b/actions/admin/user/ban.php @@ -1,37 +1,35 @@ canEdit())) - { - // Now actually disable it - if ($obj->ban('banned')) { - system_message(elgg_echo('admin:user:ban:yes')); - } - else - register_error(elgg_echo('admin:user:ban:no')); +require_once(dirname(dirname(dirname(dirname(__FILE__)))) . "/engine/start.php"); + +// block non-admin users +admin_gatekeeper(); +action_gatekeeper(); + +// Get the user +$guid = get_input('guid'); +$obj = get_entity($guid); + +if (($obj instanceof ElggUser) && ($obj->canEdit())) { + // Now actually disable it + if ($obj->ban('banned')) { + system_message(elgg_echo('admin:user:ban:yes')); } else { - $canedit = $obj->canEdit(); - $isinstance = ($obj instanceof ElggUser); register_error(elgg_echo('admin:user:ban:no')); } - - forward('pg/admin/user/'); - exit; -?> \ No newline at end of file +} else { + $canedit = $obj->canEdit(); + $isinstance = ($obj instanceof ElggUser); + register_error(elgg_echo('admin:user:ban:no')); +} + +forward('pg/admin/user/'); +exit; \ No newline at end of file diff --git a/actions/admin/user/delete.php b/actions/admin/user/delete.php index b14b17278..7d9249424 100644 --- a/actions/admin/user/delete.php +++ b/actions/admin/user/delete.php @@ -1,33 +1,32 @@ canEdit())) - { - if ($obj->delete()) - system_message(elgg_echo('admin:user:delete:yes')); - else - register_error(elgg_echo('admin:user:delete:no')); - } - else +// block non-admin users +admin_gatekeeper(); +action_gatekeeper(); + +// Get the user +$guid = get_input('guid'); +$obj = get_entity($guid); + +if (($obj instanceof ElggUser) && ($obj->canEdit())) { + if ($obj->delete()) { + system_message(elgg_echo('admin:user:delete:yes')); + } else { register_error(elgg_echo('admin:user:delete:no')); - - forward($_SERVER['HTTP_REFERER']); - exit; -?> \ No newline at end of file + } +} else { + register_error(elgg_echo('admin:user:delete:no')); +} + +forward($_SERVER['HTTP_REFERER']); +exit; \ No newline at end of file diff --git a/actions/admin/user/makeadmin.php b/actions/admin/user/makeadmin.php index fbf4293c5..b3e5ae8fc 100644 --- a/actions/admin/user/makeadmin.php +++ b/actions/admin/user/makeadmin.php @@ -1,35 +1,33 @@ canEdit())) - { - $obj->admin = 'yes'; - if ($obj->admin) - system_message(elgg_echo('admin:user:makeadmin:yes')); - else - register_error(elgg_echo('admin:user:makeadmin:no')); - } - else +require_once(dirname(dirname(dirname(dirname(__FILE__)))) . "/engine/start.php"); +global $CONFIG; + +// block non-admin users +admin_gatekeeper(); +action_gatekeeper(); + +// Get the user +$guid = get_input('guid'); +$obj = get_entity($guid); + +if (($obj instanceof ElggUser) && ($obj->canEdit())) { + $obj->admin = 'yes'; + if ($obj->admin) { + system_message(elgg_echo('admin:user:makeadmin:yes')); + } else { register_error(elgg_echo('admin:user:makeadmin:no')); - - forward($_SERVER['HTTP_REFERER']); + } +} else { + register_error(elgg_echo('admin:user:makeadmin:no')); +} -?> \ No newline at end of file +forward($_SERVER['HTTP_REFERER']); \ No newline at end of file diff --git a/actions/admin/user/removeadmin.php b/actions/admin/user/removeadmin.php index 851a0aafd..2e1bbe180 100644 --- a/actions/admin/user/removeadmin.php +++ b/actions/admin/user/removeadmin.php @@ -1,35 +1,33 @@ canEdit())) - { - $obj->admin = ''; - if (!$obj->admin) - system_message(elgg_echo('admin:user:removeadmin:yes')); - else - register_error(elgg_echo('admin:user:removeadmin:no')); - } - else +require_once(dirname(dirname(dirname(dirname(__FILE__)))) . "/engine/start.php"); +global $CONFIG; + +// block non-admin users +admin_gatekeeper(); +action_gatekeeper(); + +// Get the user +$guid = get_input('guid'); +$obj = get_entity($guid); + +if (($obj instanceof ElggUser) && ($obj->canEdit())) { + $obj->admin = ''; + if (!$obj->admin) { + system_message(elgg_echo('admin:user:removeadmin:yes')); + } else { register_error(elgg_echo('admin:user:removeadmin:no')); - - forward($_SERVER['HTTP_REFERER']); + } +} else { + register_error(elgg_echo('admin:user:removeadmin:no')); +} -?> \ No newline at end of file +forward($_SERVER['HTTP_REFERER']); \ No newline at end of file diff --git a/actions/admin/user/resetpassword.php b/actions/admin/user/resetpassword.php index c2d3af160..50bdcb1ac 100644 --- a/actions/admin/user/resetpassword.php +++ b/actions/admin/user/resetpassword.php @@ -1,42 +1,45 @@ canEdit())) - { - $password = generate_random_cleartext_password(); - - $obj->salt = generate_random_cleartext_password(); // Reset the salt - $obj->password = generate_user_password($obj, $password); - - if ($obj->save()) - { - system_message(elgg_echo('admin:user:resetpassword:yes')); - - notify_user($obj->guid, $CONFIG->site->guid, elgg_echo('email:resetpassword:subject'), sprintf(elgg_echo('email:resetpassword:body'), $obj->username, $password), NULL, 'email'); - } else - register_error(elgg_echo('admin:user:resetpassword:no')); - } - else +/** + * Admin password reset. + * + * @package Elgg + * @subpackage Core + * @author Curverider Ltd + * @link http://elgg.org/ + */ + +require_once(dirname(dirname(dirname(dirname(__FILE__)))) . "/engine/start.php"); +global $CONFIG; + +// block non-admin users +admin_gatekeeper(); +action_gatekeeper(); + +// Get the user +$guid = get_input('guid'); +$obj = get_entity($guid); + +if (($obj instanceof ElggUser) && ($obj->canEdit())) { + $password = generate_random_cleartext_password(); + + $obj->salt = generate_random_cleartext_password(); // Reset the salt + $obj->password = generate_user_password($obj, $password); + + if ($obj->save()) { + system_message(elgg_echo('admin:user:resetpassword:yes')); + + notify_user($obj->guid, + $CONFIG->site->guid, + elgg_echo('email:resetpassword:subject'), + sprintf(elgg_echo('email:resetpassword:body'), $obj->username, $password), + NULL, + 'email'); + } else { register_error(elgg_echo('admin:user:resetpassword:no')); - - forward($_SERVER['HTTP_REFERER']); - exit; -?> \ No newline at end of file + } +} else { + register_error(elgg_echo('admin:user:resetpassword:no')); +} + +forward($_SERVER['HTTP_REFERER']); +exit; \ No newline at end of file diff --git a/actions/admin/user/unban.php b/actions/admin/user/unban.php index 64ba3516c..f78d291c5 100644 --- a/actions/admin/user/unban.php +++ b/actions/admin/user/unban.php @@ -1,39 +1,38 @@ canEdit())) - { - // Now actually disable it - if ($obj->unban()) - system_message(elgg_echo('admin:user:unban:yes')); - else - register_error(elgg_echo('admin:user:unban:no')); - } - else +require_once(dirname(dirname(dirname(dirname(__FILE__)))) . "/engine/start.php"); + +// block non-admin users +admin_gatekeeper(); +action_gatekeeper(); + +$access_status = access_get_show_hidden_status(); +access_show_hidden_entities(true); + +// Get the user +$guid = get_input('guid'); +$obj = get_entity($guid); + +if (($obj instanceof ElggUser) && ($obj->canEdit())) { + // Now actually disable it + if ($obj->unban()) { + system_message(elgg_echo('admin:user:unban:yes')); + } else { register_error(elgg_echo('admin:user:unban:no')); - - access_show_hidden_entities($access_status); - - forward($_SERVER['HTTP_REFERER']); - exit; -?> \ No newline at end of file + } +} else { + register_error(elgg_echo('admin:user:unban:no')); +} + +access_show_hidden_entities($access_status); + +forward($_SERVER['HTTP_REFERER']); +exit; \ No newline at end of file -- cgit v1.2.3