$adminroot =& admin_get_root(true); //reload tree
}
-$newsettingshtml = admin_output_new_settings_by_page($adminroot);
+$newsettings = admin_output_new_settings_by_page($adminroot);
+if (isset($newsettings['frontpagesettings'])) {
+ $frontpage = $newsettings['frontpagesettings'];
+ unset($newsettings['frontpagesettings']);
+ array_unshift($newsettings, $frontpage);
+}
+$newsettingshtml = implode($newsettings);
+unset($newsettings);
+
$focus = '';
if (empty($adminroot->errors) and $newsettingshtml === '') {
$string['passwordhandling'] = 'Password field handling';
$string['plaintext'] = 'Plain text';
$string['selfregistration'] = 'Self registration';
-$string['selfregistration_help'] = 'Choose which auth plugin will handle user self-registration.';
+$string['selfregistration_help'] = 'If an authentication plugin, such as email-based self-registration, is selected, then it enables potential users to register themselves and create accounts. This results in the possibility of spammers creating accounts in order to use forum posts, blog entries etc. for spam. To avoid this risk, self-registration should be disabled or limited by <em>Allowed email domains</em> setting.';
$string['sha1'] = 'SHA-1 hash';
$string['showguestlogin'] = 'You can hide or show the guest login button on the login page.';
$string['stdchangepassword'] = 'Use standard Change Password Page';
*/
class admin_setting_special_registerauth extends admin_setting_configselect {
function admin_setting_special_registerauth() {
- parent::admin_setting_configselect('registerauth', get_string('selfregistration', 'auth'), get_string('selfregistration_help', 'auth'), 'email', null);
+ parent::admin_setting_configselect('registerauth', get_string('selfregistration', 'auth'), get_string('selfregistration_help', 'auth'), '', null);
}
function get_defaultsettings() {
}
/**
- * Internal function - prints list of uninitialised settings
+ * Internal function - returns arrays of html pages with uninitialised settings
*/
function admin_output_new_settings_by_page($node) {
- $return = '';
+ $return = array();
if (is_a($node, 'admin_category')) {
$entries = array_keys($node->children);
foreach ($entries as $entry) {
- $return .= admin_output_new_settings_by_page($node->children[$entry]);
+ $return += admin_output_new_settings_by_page($node->children[$entry]);
}
} else if (is_a($node, 'admin_settingpage')) {
}
if (count($newsettings) > 0) {
$adminroot =& admin_get_root();
- $return .= print_heading(get_string('upgradesettings','admin').' - '.$node->visiblename, '', 2, 'main', true);
- $return .= '<fieldset class="adminsettings">'."\n";
+ $page = print_heading(get_string('upgradesettings','admin').' - '.$node->visiblename, '', 2, 'main', true);
+ $page .= '<fieldset class="adminsettings">'."\n";
foreach ($newsettings as $setting) {
$fullname = $setting->get_full_name();
if (array_key_exists($fullname, $adminroot->errors)) {
$data = $setting->get_defaultsetting();
}
}
- $return .= '<div class="clearer"><!-- --></div>'."\n";
- $return .= $setting->output_html($data);
+ $page .= '<div class="clearer"><!-- --></div>'."\n";
+ $page .= $setting->output_html($data);
}
- $return .= '</fieldset>';
+ $page .= '</fieldset>';
+ $return[$node->name] = $page;
}
}