$am_arr_value = true; } else { $am_arr_value = false; } $var_arr = array('uname' => true, 'surname_form' => true, 'givenname_form' => true, 'password' => true, 'password1' => true, 'email' => $email_arr_value, 'phone' => false, 'am' => $am_arr_value); //add custom profile fields required variables augment_registered_posted_variables_arr($var_arr); $missing = register_posted_variables($var_arr); if (!isset($_POST['department'])) { $departments = array(); $missing = false; } else { $departments = $_POST['department']; } $registration_errors = array(); // check if there are empty fields if (!$missing) { $registration_errors[] = $langFieldsMissing; } else {
$tree = new Hierarchy(); $user = new User(); if (isset($_POST['submit'])) { $requiredFields = array('auth_form', 'surname_form', 'givenname_form', 'language_form', 'department', 'pstatus'); if (get_config('am_required') and @$_POST['pstatus'] == 5) { $requiredFields[] = 'am_form'; } if (get_config('email_required')) { $requiredFields[] = 'email_form'; } if (isset($_POST['auth_form']) && $_POST['auth_form'] == 1) { $requiredFields[] = 'password'; } augment_registered_posted_variables_arr($requiredFields, true); $fieldLabels = array_combine($requiredFields, array_fill(0, count($requiredFields), $langTheField)); $v = new Valitron\Validator($_POST); $v->labels($fieldLabels); $v->addRule('usernameFree', function($field, $value, array $params) { return !user_exists($value); }, $langUserFree); $v->rule('required', $requiredFields); $v->rule('usernameFree', 'uname_form', $langUserFree); $v->rule('required', 'uname_form')->message($langTheFieldIsRequired)->label(''); $v->rule('in', 'language_form', $session->active_ui_languages); $v->rule('in', 'auth_form', get_auth_active_methods()); $v->rule('email', 'email_form'); cpf_validate_format_valitron($v);