Permalink
Browse files

MDL-37339 Administration: Unique custom profile should not be checked…

… if it's empty.

Currently we have two options for custom profile fields 'Unique' and 'Required'
If value s not entered for unique and not required field then we should allow
duplicate empty values. If value is entered then we should check for unique input.
In case field is unique and required then it should be always checked as required
field can't be empty.
  • Loading branch information...
1 parent 3e90b10 commit 30595c294a6d6ff7519191f260d543da69666a37 @rajeshtaneja rajeshtaneja committed Jan 8, 2013
Showing with 13 additions and 3 deletions.
  1. +13 −3 user/profile/lib.php
View
@@ -129,9 +129,19 @@ function edit_validate_field($usernew) {
global $DB;
$errors = array();
- /// Check for uniqueness of data if required
- if ($this->is_unique()) {
- $value = (is_array($usernew->{$this->inputname}) and isset($usernew->{$this->inputname}['text'])) ? $usernew->{$this->inputname}['text'] : $usernew->{$this->inputname};
+ // Get input value.
+ if (isset($usernew->{$this->inputname})) {
+ if (is_array($usernew->{$this->inputname}) && isset($usernew->{$this->inputname}['text'])) {
+ $value = $usernew->{$this->inputname}['text'];
+ } else {
+ $value = $usernew->{$this->inputname};
+ }
+ } else {
+ $value = '';
+ }
+
+ // Check for uniqueness of data if required.
+ if ($this->is_unique() && (($value !== '') || $this->is_required())) {
$data = $DB->get_records_sql('
SELECT id, userid
FROM {user_info_data}

0 comments on commit 30595c2

Please sign in to comment.