| @@ -61,11 +61,11 @@ | ||
| 61 | 61 | |
| 62 | 62 | $enable_confirm_email_field = isset($email_extra['confirm_email']) ? $email_extra['confirm_email'] : '0'; |
| 63 | 63 | |
| 64 | 64 | $password_field = uwp_get_custom_field_info('password','account'); |
| 65 | - $enable_password = isset($data['password']) && $password_field->is_active ? 1 : 0; | |
| 65 | + $enable_password = isset($data['password']) && !empty($password_field) && $password_field->is_active ? 1 : 0; | |
| 66 | 66 | $password_extra = array(); |
| 67 | - if (isset($password_field->extra_fields) && $password_field->extra_fields != '') { | |
| 67 | + if (!empty($password_field) && isset($password_field->extra_fields) && $password_field->extra_fields != '') { | |
| 68 | 68 | $password_extra = unserialize($password_field->extra_fields); |
| 69 | 69 | } |
| 70 | 70 | |
| 71 | 71 | $enable_confirm_password_field = isset($password_extra['confirm_password']) ? $password_extra['confirm_password'] : '0'; |
| @@ -132,9 +132,13 @@ | ||
| 132 | 132 | case 'uwp_register_email': |
| 133 | 133 | case 'uwp_forgot_email': |
| 134 | 134 | case 'email': |
| 135 | 135 | case 'confirm_email': |
| 136 | - $sanitized_value = sanitize_email($value); | |
| 136 | + if ($type == 'forgot' && $field->htmlvar_name == 'email') { | |
| 137 | + $sanitized_value = is_email($value) ? sanitize_email($value) : sanitize_user($value); | |
| 138 | + } else { | |
| 139 | + $sanitized_value = sanitize_email($value); | |
| 140 | + } | |
| 137 | 141 | $sanitized = true; |
| 138 | 142 | break; |
| 139 | 143 | |
| 140 | 144 | } |
| @@ -213,9 +217,15 @@ | ||
| 213 | 217 | } |
| 214 | 218 | } |
| 215 | 219 | } |
| 216 | 220 | |
| 217 | - if ($field->field_type == 'email' && !empty($sanitized_value) && !is_email($sanitized_value)) { | |
| 221 | + if ($type == 'forgot' && $field->htmlvar_name == 'email') { | |
| 222 | + if (!empty($sanitized_value) && !is_email($sanitized_value) && !validate_username($sanitized_value)) { | |
| 223 | + $incorrect_username_or_email_error_msg = apply_filters('uwp_incorrect_username_or_email_error_msg', __('<strong>Error</strong>: Please enter a valid username or email address.', 'userswp')); | |
| 224 | + $errors->add('invalid_username_or_email', $incorrect_username_or_email_error_msg); | |
| 225 | + return $errors; | |
| 226 | + } | |
| 227 | + } elseif ($field->field_type == 'email' && !empty($sanitized_value) && !is_email($sanitized_value)) { | |
| 218 | 228 | $incorrect_email_error_msg = apply_filters('uwp_incorrect_email_error_msg', __('<strong>Error</strong>: The email address isn’t correct.', 'userswp')); |
| 219 | 229 | $errors->add('invalid_email', $incorrect_email_error_msg); |
| 220 | 230 | return $errors; |
| 221 | 231 | } |