diff options
-rw-r--r-- | actions/user/default_access.php | 46 | ||||
-rw-r--r-- | views/default/user/settings/default_access.php | 30 |
2 files changed, 76 insertions, 0 deletions
diff --git a/actions/user/default_access.php b/actions/user/default_access.php new file mode 100644 index 000000000..264bfb45b --- /dev/null +++ b/actions/user/default_access.php @@ -0,0 +1,46 @@ +<?php + /** + * Action for changing a user's default access level + * + * @package Elgg + * @subpackage Core + * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 + * @author Curverider Ltd + * @copyright Curverider Ltd 2008-2009 + * @link http://elgg.org/ + */ + + require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php"); + global $CONFIG;
+
+ if ($CONFIG->allow_user_default_access) { + + gatekeeper(); + + $default_access = get_input('default_access'); + $user_id = get_input('guid'); + $user = ""; + + if (!$user_id) + $user = $_SESSION['user']; + else + $user = get_entity($user_id); + + if ($user) + {
+ $current_default_access = $user->getPrivateSetting('elgg_default_access'); + if ($default_access != $current_default_access) + { + if ($user->setPrivateSetting('elgg_default_access',$default_access)) + system_message(elgg_echo('user:default_access:success')); + else + register_error(elgg_echo('user:default_access:fail')); + } + } + else + register_error(elgg_echo('user:default_access:fail'));
+ } + + //forward($_SERVER['HTTP_REFERER']); + //exit; +?>
\ No newline at end of file diff --git a/views/default/user/settings/default_access.php b/views/default/user/settings/default_access.php new file mode 100644 index 000000000..c53b27233 --- /dev/null +++ b/views/default/user/settings/default_access.php @@ -0,0 +1,30 @@ +<?php
+ /**
+ * Provide a way of setting your default access
+ *
+ * @package Elgg
+ * @subpackage Core
+ * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2
+ * @author Curverider Ltd
+ * @copyright Curverider Ltd 2008-2009
+ * @link http://elgg.org/
+ */
+ if ($vars['config']->allow_user_default_access) {
+ $user = page_owner_entity();
+
+ if ($user) {
+ if (false === ($default_access = $user->getPrivateSetting('elgg_default_access'))) {
+ $default_access = $vars['config']->default_access;
+ }
+ ?>
+ <h3><?php echo elgg_echo('default_access:settings'); ?></h3>
+ <p>
+ <?php echo elgg_echo('default_access:label'); ?>:
+ <?php
+
+ echo elgg_view('input/access',array('internalname' => 'default_access', 'value' => $default_access));
+
+ ?>
+ </p>
+
+<?php }} ?>
\ No newline at end of file |