diff options
author | brettp <brettp@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2009-10-14 20:41:19 +0000 |
---|---|---|
committer | brettp <brettp@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2009-10-14 20:41:19 +0000 |
commit | 12d286988dbcdff5aad3620838e7ab777ac67a92 (patch) | |
tree | 9d73437fbfb39f3f9f3c27852e70ec1f71aed0eb /actions/register.php | |
parent | 501c0e13cc4db687abb36a937709f8e9de643339 (diff) | |
download | elgg-12d286988dbcdff5aad3620838e7ab777ac67a92.tar.gz elgg-12d286988dbcdff5aad3620838e7ab777ac67a92.tar.bz2 |
Standardized actions/*
git-svn-id: http://code.elgg.org/elgg/trunk@3542 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'actions/register.php')
-rw-r--r-- | actions/register.php | 137 |
1 files changed, 65 insertions, 72 deletions
diff --git a/actions/register.php b/actions/register.php index 5c69624b3..5abd55a4b 100644 --- a/actions/register.php +++ b/actions/register.php @@ -1,81 +1,74 @@ <?php +/** + * Elgg registration action + * + * @package Elgg + * @subpackage Core + * @author Curverider Ltd + * @link http://elgg.org/ + */ - /** - * Elgg registration action - * - * @package Elgg - * @subpackage Core +require_once(dirname(dirname(__FILE__)) . "/engine/start.php"); +global $CONFIG; - * @author Curverider Ltd +action_gatekeeper(); - * @link http://elgg.org/ - */ +// Get variables +$username = get_input('username'); +$password = get_input('password'); +$password2 = get_input('password2'); +$email = get_input('email'); +$name = get_input('name'); +$friend_guid = (int) get_input('friend_guid',0); +$invitecode = get_input('invitecode'); - require_once(dirname(dirname(__FILE__)) . "/engine/start.php"); - global $CONFIG; - - action_gatekeeper(); +$admin = get_input('admin'); +if (is_array($admin)) { + $admin = $admin[0]; +} - // Get variables - $username = get_input('username'); - $password = get_input('password'); - $password2 = get_input('password2'); - $email = get_input('email'); - $name = get_input('name'); - $friend_guid = (int) get_input('friend_guid',0); - $invitecode = get_input('invitecode'); - - $admin = get_input('admin'); - if (is_array($admin)) $admin = $admin[0]; - - - if (!$CONFIG->disable_registration) - { - // For now, just try and register the user - - try { - if ( - ( - (trim($password)!="") && - (strcmp($password, $password2)==0) - ) && - ($guid = register_user($username, $password, $name, $email, false, $friend_guid, $invitecode)) - ) { - - $new_user = get_entity($guid); - if (($guid) && ($admin)) - { - admin_gatekeeper(); // Only admins can make someone an admin - $new_user->admin = 'yes'; - } - - // Send user validation request on register only - global $registering_admin; - if (!$registering_admin) - request_user_validation($guid); - - if (!$new_user->admin) - $new_user->disable('new_user', false); // Now disable if not an admin - // Don't do a recursive disable. Any entities owned by the user at this point - // are products of plugins that - - system_message(sprintf(elgg_echo("registerok"),$CONFIG->sitename)); - - forward(); // Forward on success, assume everything else is an error... - } else { - register_error(elgg_echo("registerbad")); - } - } catch (RegistrationException $r) { - register_error($r->getMessage()); +if (!$CONFIG->disable_registration) { +// For now, just try and register the user + try { + $guid = register_user($username, $password, $name, $email, false, $friend_guid, $invitecode); + if (((trim($password) != "") && (strcmp($password, $password2) == 0)) && ($guid)) { + $new_user = get_entity($guid); + if (($guid) && ($admin)) { + // Only admins can make someone an admin + admin_gatekeeper(); + $new_user->admin = 'yes'; } + + // Send user validation request on register only + global $registering_admin; + if (!$registering_admin) { + request_user_validation($guid); + } + + if (!$new_user->admin) { + // Now disable if not an admin + // Don't do a recursive disable. Any entities owned by the user at this point + // are products of plugins that hook into create user and might need + // access to the entities. + $new_user->disable('new_user', false); + } + + system_message(sprintf(elgg_echo("registerok"),$CONFIG->sitename)); + + // Forward on success, assume everything else is an error... + forward(); + } else { + register_error(elgg_echo("registerbad")); } - else - register_error(elgg_echo('registerdisabled')); - - $qs = explode('?',$_SERVER['HTTP_REFERER']); - $qs = $qs[0]; - $qs .= "?u=" . urlencode($username) . "&e=" . urlencode($email) . "&n=" . urlencode($name) . "&friend_guid=" . $friend_guid; - - forward($qs); + } catch (RegistrationException $r) { + register_error($r->getMessage()); + } +} else { + register_error(elgg_echo('registerdisabled')); +} + +$qs = explode('?',$_SERVER['HTTP_REFERER']); +$qs = $qs[0]; +$qs .= "?u=" . urlencode($username) . "&e=" . urlencode($email) . "&n=" . urlencode($name) . "&friend_guid=" . $friend_guid; -?>
\ No newline at end of file +forward($qs);
\ No newline at end of file |