diff options
Diffstat (limited to 'pages/account/register.php')
-rw-r--r-- | pages/account/register.php | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/pages/account/register.php b/pages/account/register.php new file mode 100644 index 000000000..2fe8b74c0 --- /dev/null +++ b/pages/account/register.php @@ -0,0 +1,58 @@ +<?php +/** + * Assembles and outputs the registration page. + * + * Since 1.8, registration can be disabled via administration. If this is + * the case, calls to this page will forward to the network front page. + * + * If the user is logged in, this page will forward to the network + * front page. + * + * @package Elgg.Core + * @subpackage Registration + */ + +// check new registration allowed +if (elgg_get_config('allow_registration') == false) { + register_error(elgg_echo('registerdisabled')); + forward(); +} + +$friend_guid = (int) get_input('friend_guid', 0); +$invitecode = get_input('invitecode'); + +// only logged out people need to register +if (elgg_is_logged_in()) { + forward(); +} + +$title = elgg_echo("register"); + +$content = elgg_view_title($title); + +// create the registration url - including switching to https if configured +$register_url = elgg_get_site_url() . 'action/register'; +if (elgg_get_config('https_login')) { + $register_url = str_replace("http:", "https:", $register_url); +} +$form_params = array( + 'action' => $register_url, + 'class' => 'elgg-form-account', +); + +$body_params = array( + 'friend_guid' => $friend_guid, + 'invitecode' => $invitecode +); +$content .= elgg_view_form('register', $form_params, $body_params); + +$content .= elgg_view('help/register'); + +if (elgg_get_config('walled_garden')) { + elgg_load_css('elgg.walled_garden'); + $body = elgg_view_layout('walled_garden', array('content' => $content)); + echo elgg_view_page($title, $body, 'walled_garden'); +} else { + $body = elgg_view_layout('one_column', array('content' => $content)); + echo elgg_view_page($title, $body); +} |