diff options
Diffstat (limited to 'pages/account/register.php')
-rw-r--r-- | pages/account/register.php | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/pages/account/register.php b/pages/account/register.php new file mode 100644 index 000000000..cbbc40060 --- /dev/null +++ b/pages/account/register.php @@ -0,0 +1,44 @@ +<?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 + */ + +/** + * Start the Elgg engine + * + * Why? In the case this file is called thru a page handler: $CONFIG + * is not within the global scope (the page handler function does not include it). + * BUT, there _might_ exist direct calls to this file, requiring the engine + * to be started. Logic for both cases follow. + */ +require_once(dirname(dirname(dirname(__FILE__))) . "/engine/start.php"); +global $CONFIG; + +// check new registration allowed +if (!$CONFIG->allow_registration) { + register_error(elgg_echo('registerdisabled')); + forward(); +} + +$friend_guid = (int) get_input('friend_guid',0); +$invitecode = get_input('invitecode'); + +// If we're not logged in, display the registration page +if (!isloggedin()) { + $area1 = elgg_view_title(elgg_echo("register")); + $area2 = elgg_view("account/forms/register", array('friend_guid' => $friend_guid, 'invitecode' => $invitecode)); + page_draw(elgg_echo("register"), elgg_view_layout("one_column_with_sidebar", $area1 . $area2)); + +// Otherwise, forward to the index page +} else { + forward(); +} |