|
|
|
|
@ -13,9 +13,21 @@ if (!empty($_POST['language'])) { |
|
|
|
|
$_GET['language'] = $_POST['language']; |
|
|
|
|
} |
|
|
|
|
require_once '../inc/global.inc.php'; |
|
|
|
|
|
|
|
|
|
$hideHeaders = isset($_GET['hide_headers']); |
|
|
|
|
|
|
|
|
|
$allowedFields = [ |
|
|
|
|
'official_code', |
|
|
|
|
'phone', |
|
|
|
|
'status', |
|
|
|
|
'language', |
|
|
|
|
'extra_fields' |
|
|
|
|
]; |
|
|
|
|
|
|
|
|
|
$allowedFieldsConfiguration = api_get_configuration_value('allow_fields_inscription'); |
|
|
|
|
if ($allowedFieldsConfiguration != false) { |
|
|
|
|
$allowedFields = $allowedFieldsConfiguration; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$htmlHeadXtra[] = api_get_password_checker_js('#username', '#pass1'); |
|
|
|
|
|
|
|
|
|
// User is not allowed if Terms and Conditions are disabled and |
|
|
|
|
@ -88,7 +100,13 @@ if ($user_already_registered_show_terms == false) { |
|
|
|
|
|
|
|
|
|
// OFFICIAL CODE |
|
|
|
|
if (CONFVAL_ASK_FOR_OFFICIAL_CODE) { |
|
|
|
|
$form->addElement('text', 'official_code', get_lang('OfficialCode'), array('size' => 40)); |
|
|
|
|
if (in_array('official_code', $allowedFields)) { |
|
|
|
|
$form->addElement( |
|
|
|
|
'text', |
|
|
|
|
'official_code', |
|
|
|
|
get_lang('OfficialCode'), |
|
|
|
|
array('size' => 40) |
|
|
|
|
); |
|
|
|
|
if (api_get_setting('registration', 'officialcode') == 'true') { |
|
|
|
|
$form->addRule( |
|
|
|
|
'official_code', |
|
|
|
|
@ -97,6 +115,7 @@ if ($user_already_registered_show_terms == false) { |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// USERNAME |
|
|
|
|
if (api_get_setting('login_is_email') != 'true') { |
|
|
|
|
@ -131,19 +150,50 @@ if ($user_already_registered_show_terms == false) { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// PHONE |
|
|
|
|
$form->addElement('text', 'phone', get_lang('Phone'), array('size' => 20)); |
|
|
|
|
if (in_array('phone', $allowedFields)) { |
|
|
|
|
$form->addElement( |
|
|
|
|
'text', |
|
|
|
|
'phone', |
|
|
|
|
get_lang('Phone'), |
|
|
|
|
array('size' => 20) |
|
|
|
|
); |
|
|
|
|
if (api_get_setting('registration', 'phone') == 'true') { |
|
|
|
|
$form->addRule('phone', get_lang('ThisFieldIsRequired'), 'required'); |
|
|
|
|
$form->addRule( |
|
|
|
|
'phone', |
|
|
|
|
get_lang('ThisFieldIsRequired'), |
|
|
|
|
'required' |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// LANGUAGE |
|
|
|
|
if (in_array('language', $allowedFields)) { |
|
|
|
|
if (api_get_setting('registration', 'language') == 'true') { |
|
|
|
|
$form->addElement('select_language', 'language', get_lang('Language')); |
|
|
|
|
$form->addElement( |
|
|
|
|
'select_language', |
|
|
|
|
'language', |
|
|
|
|
get_lang('Language') |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
// STUDENT/TEACHER |
|
|
|
|
if (api_get_setting('allow_registration_as_teacher') != 'false') { |
|
|
|
|
$form->addElement('radio', 'status', get_lang('Profile'), get_lang('RegStudent'), STUDENT); |
|
|
|
|
$form->addElement('radio', 'status', null, get_lang('RegAdmin'), COURSEMANAGER); |
|
|
|
|
if (in_array('status', $allowedFields)) { |
|
|
|
|
$form->addElement( |
|
|
|
|
'radio', |
|
|
|
|
'status', |
|
|
|
|
get_lang('Profile'), |
|
|
|
|
get_lang('RegStudent'), |
|
|
|
|
STUDENT |
|
|
|
|
); |
|
|
|
|
$form->addElement( |
|
|
|
|
'radio', |
|
|
|
|
'status', |
|
|
|
|
null, |
|
|
|
|
get_lang('RegAdmin'), |
|
|
|
|
COURSEMANAGER |
|
|
|
|
); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
$captcha = api_get_setting('allow_captcha'); |
|
|
|
|
@ -218,8 +268,10 @@ if ($user_already_registered_show_terms == false) { |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
// EXTRA FIELDS |
|
|
|
|
if (in_array('extra_fields', $allowedFields)) { |
|
|
|
|
$extraField = new ExtraField('user'); |
|
|
|
|
$returnParams = $extraField->addElements($form); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
if (isset($_SESSION['user_language_choice']) && $_SESSION['user_language_choice'] != '') { |
|
|
|
|
@ -405,7 +457,7 @@ if ($form->validate()) { |
|
|
|
|
|
|
|
|
|
$status = isset($values['status']) ? $values['status'] : STUDENT; |
|
|
|
|
$phone = isset($values['phone']) ? $values['phone'] : null; |
|
|
|
|
|
|
|
|
|
$values['language'] = isset($values['language']) ? $values['language'] : api_get_interface_language(); |
|
|
|
|
// Creates a new user |
|
|
|
|
$user_id = UserManager::create_user( |
|
|
|
|
$values['firstname'], |
|
|
|
|
|