diff options
author | nickw <nickw@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-05-07 21:49:19 +0000 |
---|---|---|
committer | nickw <nickw@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-05-07 21:49:19 +0000 |
commit | 7682706a46a20e3e58a9afd8ba208d5b0c040499 (patch) | |
tree | c8cb5e3d75609aa2b8f52748626bde7ffa7a041b | |
parent | ff31226fdeb972aac2f37f0098240cb366a9bb26 (diff) | |
download | elgg-7682706a46a20e3e58a9afd8ba208d5b0c040499.tar.gz elgg-7682706a46a20e3e58a9afd8ba208d5b0c040499.tar.bz2 |
Adding an option to restrict new user registration in advanced site settings.
This is the first step in fully merging "Walled Garden" plugin into core Elgg engine.
git-svn-id: http://code.elgg.org/elgg/trunk@5981 36083f99-b078-4883-b0ff-0f9b5a30f544
-rw-r--r-- | actions/admin/site/update_advanced.php | 7 | ||||
-rw-r--r-- | actions/register.php | 2 | ||||
-rw-r--r-- | actions/systemsettings/install.php | 1 | ||||
-rw-r--r-- | engine/lib/upgrades/2010050701.php | 15 | ||||
-rw-r--r-- | version.php | 2 | ||||
-rw-r--r-- | views/default/account/forms/login.php | 4 | ||||
-rw-r--r-- | views/default/account/forms/login_dropdown.php | 7 | ||||
-rw-r--r-- | views/default/admin/site/advanced.php | 8 |
8 files changed, 36 insertions, 10 deletions
diff --git a/actions/admin/site/update_advanced.php b/actions/admin/site/update_advanced.php index c9b78c261..7e6bd0cc6 100644 --- a/actions/admin/site/update_advanced.php +++ b/actions/admin/site/update_advanced.php @@ -49,6 +49,13 @@ if (datalist_get('default_site')) { } else { unset_config('debug', $site->getGUID()); } + + // allow new user registration? + if (get_input('allow_registration', FALSE)) { + set_config('allow_registration', TRUE, $site->getGUID()); + } else { + set_config('allow_registration', FALSE, $site->getGUID()); + } $https_login = get_input('https_login'); if ($https_login) { diff --git a/actions/register.php b/actions/register.php index 081a4e454..556bad4cd 100644 --- a/actions/register.php +++ b/actions/register.php @@ -24,7 +24,7 @@ if (is_array($admin)) { $admin = $admin[0]; } -if (!$CONFIG->disable_registration) { +if ($CONFIG->allow_registration) { // For now, just try and register the user try { $guid = register_user($username, $password, $name, $email, false, $friend_guid, $invitecode); diff --git a/actions/systemsettings/install.php b/actions/systemsettings/install.php index 589e3a06c..3516a2ff2 100644 --- a/actions/systemsettings/install.php +++ b/actions/systemsettings/install.php @@ -68,6 +68,7 @@ if (get_input('settings') == 'go') { set_config('view', get_input('view'), $site->getGUID()); set_config('language', get_input('language'), $site->getGUID()); set_config('default_access', get_input('default_access'), $site->getGUID()); + set_config('allow_registration', TRUE, $site->getGUID()); $debug = get_input('debug'); if ($debug) { diff --git a/engine/lib/upgrades/2010050701.php b/engine/lib/upgrades/2010050701.php new file mode 100644 index 000000000..33e4b5bae --- /dev/null +++ b/engine/lib/upgrades/2010050701.php @@ -0,0 +1,15 @@ +<?php +/** + * Removes the Walled Garden plugin in favor of new system settings + */ + +$access = elgg_set_ignore_access(TRUE); + +if (is_plugin_enabled('walledgarden')) { + disable_plugin('walledgarden'); + set_config('allow_registration', FALSE); +} else { + set_config('allow_registration', TRUE); +} + +elgg_set_ignore_access($access); diff --git a/version.php b/version.php index 20d459ee5..62fb107ef 100644 --- a/version.php +++ b/version.php @@ -12,7 +12,7 @@ // YYYYMMDD = Elgg Date // XX = Interim incrementer -$version = 2010040201; +$version = 2010050701; // Human-friendly version name $release = '1.8-svn'; diff --git a/views/default/account/forms/login.php b/views/default/account/forms/login.php index ec6e61cfc..baea51770 100644 --- a/views/default/account/forms/login.php +++ b/views/default/account/forms/login.php @@ -8,8 +8,6 @@ * @link http://elgg.org/ */ -global $CONFIG; - $form_body = "<label>" . elgg_echo('username') . "<br />" . elgg_view('input/text', array('internalname' => 'username', 'class' => 'login_textarea')) . "</label>"; $form_body .= "<br />"; $form_body .= "<label>" . elgg_echo('password') . "<br />" . elgg_view('input/password', array('internalname' => 'password', 'class' => 'login_textarea')) . "</label><br />"; @@ -19,7 +17,7 @@ $form_body .= elgg_view('input/hidden', array('internalname' => 'returntoreferer $form_body .= elgg_view('input/submit', array('value' => elgg_echo('login'))); $form_body .= "<div class='persistent_login'><label><input type='checkbox' name='persistent' value='true' />".elgg_echo('user:persistent')."</label></div>"; $form_body .= "<p class='loginbox'>"; -$form_body .= (!isset($CONFIG->disable_registration) || !($CONFIG->disable_registration)) ? "<a href=\"{$vars['url']}pg/register/\">" . elgg_echo('register') . "</a> | " : ""; +$form_body .= $CONFIG->allow_registration ? "<a href=\"{$vars['url']}pg/register/\">" . elgg_echo('register') . '</a> | ' : ''; $form_body .= "<a href=\"{$vars['url']}account/forgotten_password.php\">" . elgg_echo('user:password:lost') . "</a></p>"; $login_url = $vars['url']; diff --git a/views/default/account/forms/login_dropdown.php b/views/default/account/forms/login_dropdown.php index 352e32e60..16f7ee78b 100644 --- a/views/default/account/forms/login_dropdown.php +++ b/views/default/account/forms/login_dropdown.php @@ -4,10 +4,7 @@ * */ -if (!isloggedin()){ - - global $CONFIG; - +if (!isloggedin()) { $form_body = "<p class='loginbox'><label>" . elgg_echo('username') . "</label>" . elgg_view('input/text', array('internalname' => 'username', 'class' => 'login_textarea name')); $form_body .= "<label>" . elgg_echo('password') . "</label>" . elgg_view('input/password', array('internalname' => 'password', 'class' => 'login_textarea')); $form_body .= elgg_view('input/submit', array('value' => elgg_echo('login'))) . " <span class='remember'><label><input type=\"checkbox\" name=\"persistent\" value=\"true\" />".elgg_echo('user:persistent')."</label></span></p>"; @@ -15,7 +12,7 @@ if (!isloggedin()){ $form_body .= elgg_view('login/extend'); $form_body .= "<p class='loginbox'>"; - $form_body .= (!isset($CONFIG->disable_registration) || !($CONFIG->disable_registration)) ? "<a href=\"{$vars['url']}account/register.php\">" . elgg_echo('register') . "</a> | " : ""; + $form_body .= $CONFIG->allow_registration ? "<a href=\"{$vars['url']}account/register.php\">" . elgg_echo('register') . '</a> | ' : ''; $form_body .= "<a href=\"{$vars['url']}account/forgotten_password.php\">" . elgg_echo('user:password:lost') . "</a></p>"; $form_body .= "<input type='hidden' name='returntoreferer' value='true' />"; diff --git a/views/default/admin/site/advanced.php b/views/default/admin/site/advanced.php index da7b98a1a..e8c6e9b9a 100644 --- a/views/default/admin/site/advanced.php +++ b/views/default/admin/site/advanced.php @@ -33,6 +33,14 @@ $form_body .= "<p>" . elgg_echo('installation:debug'); $form_body .= elgg_view('input/pulldown', array('options_values' => $debug_options, 'internalname' => 'debug', 'value' => $vars['config']->debug)); $form_body .= '</p>'; +$options = array( + 'options' => array(elgg_echo('installation:registration:label')), + 'internalname' => 'allow_registration', + 'value' => $vars['config']->allow_registration ? elgg_echo('installation:registration:label') : '', +); +$form_body .= '<p>' . elgg_echo('installation:registration:description'); +$form_body .= '<br />' .elgg_view('input/checkboxes', $options) . '</p>'; + $form_body .= "<p>" . elgg_echo('installation:httpslogin') . "<br />" .elgg_view("input/checkboxes", array('options' => array(elgg_echo('installation:httpslogin:label')), 'internalname' => 'https_login', 'value' => ($vars['config']->https_login ? elgg_echo('installation:httpslogin:label') : "") )) . "</p>"; $form_body .= "<p>" . elgg_echo('installation:disableapi') . "<br />"; |