From 679c6dfb4445a5b9c28571fe43e8f4e2e655ca18 Mon Sep 17 00:00:00 2001 From: Julio Montoya Date: Mon, 12 Aug 2013 12:25:40 +0200 Subject: [PATCH] Adding username as a paremeter to the password meter see BT#6487 --- main/admin/user_add.php | 11 +++++------ main/auth/inscription.php | 4 ++-- main/auth/profile.php | 4 ++-- main/inc/lib/main_api.lib.php | 18 ++++++++++-------- main/inc/lib/usermanager.lib.php | 8 ++++---- 5 files changed, 23 insertions(+), 22 deletions(-) diff --git a/main/admin/user_add.php b/main/admin/user_add.php index a72250e569..7bf7ef42e6 100644 --- a/main/admin/user_add.php +++ b/main/admin/user_add.php @@ -23,7 +23,7 @@ api_protect_admin_script(true); $is_platform_admin = api_is_platform_admin() ? 1 : 0; $message = null; -$htmlHeadXtra[] = api_get_password_checker_js('#password'); +$htmlHeadXtra[] = api_get_password_checker_js('#username', '#password'); $htmlHeadXtra[] = ''; $htmlHeadXtra[] = ''; @@ -34,13 +34,14 @@ if (isset($_configuration['allow_strength_pass_checker']) && $_configuration['al $("input[name=\'password[password_auto]\']").each(function(index, value) { $(this).click(function() { var value = $(this).attr("value"); - // Committee‎ if (value == 0) { $("#password_progress").show(); $(".password-verdict").show(); + $(".error-list").show(); } else { $("#password_progress").hide(); $(".password-verdict").hide(); + $(".error-list").hide(); } }); }); @@ -64,8 +65,6 @@ function password_switch_radio_button() { } } - - var is_platform_id = "'.$is_platform_admin.'"; function display_drh_list(){ @@ -89,7 +88,7 @@ function display_drh_list(){ '; if (!empty($_GET['message'])) { - $message = urldecode($_GET['message']); + $message = urldecode($_GET['message']); } $interbreadcrumb[] = array ('url' => 'index.php', 'name' => get_lang('PlatformAdmin')); @@ -148,7 +147,7 @@ $form->addRule('picture', get_lang('OnlyImagesAllowed').' ('.implode(',', $allow // Username if (api_get_setting('login_is_email') != 'true') { - $form->addElement('text', 'username', get_lang('LoginName'), array('maxlength' => USERNAME_MAX_LENGTH)); + $form->addElement('text', 'username', get_lang('LoginName'), array('id'=> 'username', 'maxlength' => USERNAME_MAX_LENGTH)); $form->addRule('username', get_lang('ThisFieldIsRequired'), 'required'); $form->addRule('username', sprintf(get_lang('UsernameMaxXCharacters'), (string)USERNAME_MAX_LENGTH), 'maxlength', USERNAME_MAX_LENGTH); $form->addRule('username', get_lang('OnlyLettersAndNumbersAllowed'), 'username'); diff --git a/main/auth/inscription.php b/main/auth/inscription.php index 8d27aea151..987931bc05 100644 --- a/main/auth/inscription.php +++ b/main/auth/inscription.php @@ -17,7 +17,7 @@ require_once '../inc/global.inc.php'; require_once api_get_path(CONFIGURATION_PATH).'profile.conf.php'; require_once api_get_path(LIBRARY_PATH).'mail.lib.inc.php'; -$htmlHeadXtra[] = api_get_password_checker_js('#pass1'); +$htmlHeadXtra[] = api_get_password_checker_js('#username', '#pass1'); if (api_get_setting('allow_registration') === 'false') { api_not_allowed(true); @@ -92,7 +92,7 @@ if ($user_already_registered_show_terms == false) { // USERNAME if (api_get_setting('login_is_email') != 'true') { - $form->addElement('text', 'username', get_lang('UserName'), array('size' => USERNAME_MAX_LENGTH)); + $form->addElement('text', 'username', get_lang('UserName'), array('id' => 'username', 'size' => USERNAME_MAX_LENGTH)); $form->applyFilter('username','trim'); $form->addRule('username', get_lang('ThisFieldIsRequired'), 'required'); $form->addRule('username', sprintf(get_lang('UsernameMaxXCharacters'), (string)USERNAME_MAX_LENGTH), 'maxlength', USERNAME_MAX_LENGTH); diff --git a/main/auth/profile.php b/main/auth/profile.php index 0cd137e755..17372add44 100644 --- a/main/auth/profile.php +++ b/main/auth/profile.php @@ -24,7 +24,7 @@ if (api_get_setting('allow_social_tool') == 'true') { } -$htmlHeadXtra[] = api_get_password_checker_js('#password1'); +$htmlHeadXtra[] = api_get_password_checker_js('#username', '#password1'); $_SESSION['this_section'] = $this_section; @@ -145,7 +145,7 @@ $form->addRule('lastname' , get_lang('ThisFieldIsRequired'), 'required'); $form->addRule('firstname', get_lang('ThisFieldIsRequired'), 'required'); // USERNAME -$form->addElement('text', 'username', get_lang('UserName'), array('maxlength' => USERNAME_MAX_LENGTH, 'size' => USERNAME_MAX_LENGTH)); +$form->addElement('text', 'username', get_lang('UserName'), array('id' => 'username', 'maxlength' => USERNAME_MAX_LENGTH, 'size' => USERNAME_MAX_LENGTH)); if (api_get_setting('profile', 'login') !== 'true') { $form->freeze('username'); } diff --git a/main/inc/lib/main_api.lib.php b/main/inc/lib/main_api.lib.php index e9155e5118..3aabb1c33a 100644 --- a/main/inc/lib/main_api.lib.php +++ b/main/inc/lib/main_api.lib.php @@ -6457,7 +6457,7 @@ function api_get_user_info_from_official_code($official_code = '') { * @param string $inputId the jquery id example: #password * @return string */ -function api_get_password_checker_js($inputId) +function api_get_password_checker_js($usernameInputId, $passwordInputid) { global $_configuration; $useStrengthPassChecker = isset($_configuration['allow_strength_pass_checker']) ? $_configuration['allow_strength_pass_checker'] : false; @@ -6466,13 +6466,14 @@ function api_get_password_checker_js($inputId) return null; } - $verdicts = array(get_lang('Weak'), get_lang('Normal'), get_lang('Medium'), get_lang('Strong'), get_lang('VeryStrong')); + $verdicts = array(get_lang('PasswordWeak'), get_lang('PasswordNormal'), get_lang('PasswordMedium'), get_lang('PasswordStrong'), get_lang('PasswordVeryStrong')); $js = api_get_js('strength/strength.js'); $js .= ""; return $js; diff --git a/main/inc/lib/usermanager.lib.php b/main/inc/lib/usermanager.lib.php index bf6a6ccd2e..1c46ace1ab 100644 --- a/main/inc/lib/usermanager.lib.php +++ b/main/inc/lib/usermanager.lib.php @@ -177,7 +177,6 @@ class UserManager $emailbody = get_lang('Dear')." ".stripslashes(api_get_person_name($firstName, $lastName)).",\n\n".get_lang('YouAreReg')." ".api_get_setting('siteName')." ".get_lang('WithTheFollowingSettings')."\n\n".get_lang('Username')." : ".$loginName."\n".get_lang('Pass')." : ".stripslashes($original_password)."\n\n".get_lang('Address')." ".api_get_setting('siteName')." ".get_lang('Is')." : ".$_configuration['root_web']."\n\n".get_lang('Problem')."\n\n".get_lang('Formula').",\n\n".api_get_person_name(api_get_setting('administratorName'), api_get_setting('administratorSurname'))."\n".get_lang('Manager')." ".api_get_setting('siteName')."\nT. ".api_get_setting('administratorTelephone')."\n".get_lang('Email')." : ".api_get_setting('emailAdministrator'); } - /* MANAGE EVENT WITH MAIL */ if (EventsMail::check_if_using_class('user_registration')) { $values["about_user"] = $return; @@ -536,7 +535,7 @@ class UserManager $change_active = 0; if ($user_info['active'] != $active) { $change_active = 1; - } + } $sql = "UPDATE $table_user SET lastname='".Database::escape_string($lastname)."', firstname='".Database::escape_string($firstname)."', @@ -583,7 +582,7 @@ class UserManager } else { $event_title = LOG_USER_DISABLE; } - event_system($event_title, LOG_USER_ID, $user_id, api_get_utc_datetime(), null, null); + event_system($event_title, LOG_USER_ID, $user_id, api_get_utc_datetime(), null, null); } if (is_array($extra) && count($extra) > 0) { $res = true; @@ -1340,12 +1339,13 @@ class UserManager } else { $fvalues = Database::escape_string($fvalue); } - $sqluf = "SELECT * FROM $t_uf WHERE field_variable='$fname'"; + $sqluf = "SELECT * FROM $t_uf WHERE field_variable='$fname'"; $resuf = Database::query($sqluf); if (Database::num_rows($resuf) == 1) { //ok, the field exists // Check if enumerated field, if the option is available $rowuf = Database::fetch_array($resuf); + switch ($rowuf['field_type']) { case self::USER_FIELD_TYPE_TAG : //4. Tags are process here comes from main/auth/profile.php