diff options
author | marcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2008-06-30 16:24:51 +0000 |
---|---|---|
committer | marcus <marcus@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2008-06-30 16:24:51 +0000 |
commit | 2733869001f3cab50d78a79277e6438e258863af (patch) | |
tree | 33effaaa9bac4a431de3b1e3df3b0ee828d7c924 | |
parent | b9795ea06b667d0320cb31ae087852444b5f255e (diff) | |
download | elgg-2733869001f3cab50d78a79277e6438e258863af.tar.gz elgg-2733869001f3cab50d78a79277e6438e258863af.tar.bz2 |
Closes #105: Make admin option
http://trac.elgg.org/elgg/ticket/105
git-svn-id: https://code.elgg.org/elgg/trunk@1210 36083f99-b078-4883-b0ff-0f9b5a30f544
-rw-r--r-- | actions/admin/user/makeadmin.php | 36 | ||||
-rw-r--r-- | languages/en.php | 6 | ||||
-rw-r--r-- | mod/profile/views/default/profile/userdetails.php | 2 |
3 files changed, 43 insertions, 1 deletions
diff --git a/actions/admin/user/makeadmin.php b/actions/admin/user/makeadmin.php new file mode 100644 index 000000000..b81f24b9d --- /dev/null +++ b/actions/admin/user/makeadmin.php @@ -0,0 +1,36 @@ +<?php + /** + * Make another user an admin. + * + * @package Elgg + * @subpackage Core + * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 + * @author Marcus Povey + * @copyright Curverider Ltd 2008 + * @link http://elgg.org/ + */ + + require_once(dirname(dirname(dirname(dirname(__FILE__)))) . "/engine/start.php"); + global $CONFIG; + + // block non-admin users + admin_gatekeeper(); + + // Get the user + $guid = get_input('guid'); + $obj = get_entity($guid); + + if ( ($obj instanceof ElggUser) && ($obj->canEdit())) + { + $result = $obj->admin = 'yes'; + if ($result) + system_message(elgg_echo('admin:user:makeadmin:yes')); + else + system_message(elgg_echo('admin:user:makeadmin:no')); + } + else + system_message(elgg_echo('admin:user:makeadmin:no')); + + forward($_SERVER['HTTP_REFERER']); + exit; +?>
\ No newline at end of file diff --git a/languages/en.php b/languages/en.php index 49b2a6d9d..b792b2fc5 100644 --- a/languages/en.php +++ b/languages/en.php @@ -318,7 +318,10 @@ 'admin:user:delete:yes' => "User deleted", 'admin:user:resetpassword:yes' => "Password reset, user notified.", - 'admin:user:resetpassword:no' => "Password could not be reset.",
+ 'admin:user:resetpassword:no' => "Password could not be reset.", + + 'admin:user:makeadmin:yes' => "User is now an admin.", + 'admin:user:makeadmin:no' => "We could not make this user an admin.",
/** * User settings @@ -365,6 +368,7 @@ 'disable' => "Disable", 'resetpassword' => "Reset password", + 'makeadmin' => "Make admin", 'option:yes' => "Yes", 'option:no' => "No",
diff --git a/mod/profile/views/default/profile/userdetails.php b/mod/profile/views/default/profile/userdetails.php index a6f381328..160ff4abe 100644 --- a/mod/profile/views/default/profile/userdetails.php +++ b/mod/profile/views/default/profile/userdetails.php @@ -125,6 +125,8 @@ <a href="<?php echo $vars['url']; ?>actions/admin/user/delete?guid=<?php echo $vars['entity']->guid; ?>"><?php echo elgg_echo("delete"); ?></a> <a href="<?php echo $vars['url']; ?>actions/admin/user/resetpassword?guid=<?php echo $vars['entity']->guid; ?>"><?php echo elgg_echo("resetpassword"); ?></a> + + <?php if (!$vars['entity']->admin) { ?> <a href="<?php echo $vars['url']; ?>actions/admin/user/makeadmin?guid=<?php echo $vars['entity']->guid; ?>"><?php echo elgg_echo("makeadmin"); ?></a> <?php } ?> <?php } |