MDL-20665 fixed error from postgres on validating duplicate category name when entering new category

This commit is contained in:
Jenny Gray
2009-11-04 12:16:18 +00:00
parent c3c76e6dc1
commit 7bfea4b502
+11 -2
View File
@@ -33,10 +33,19 @@ class category_form extends moodleform {
$data = (object)$data;
$category = get_record('user_info_category', 'id', $data->id);
$duplicate = record_exists('user_info_category', 'name', $data->name);
/// Check the name is unique
if ($category and ($category->name !== $data->name) and (record_exists('user_info_category', 'name', $data->name))) {
if (!empty($data->id)) { // we are editing an existing record
$olddata = get_record('user_info_category', 'id', $data->id);
// name has changed, new name in use, new name in use by another record
$dupfound = (($olddata->name !== $data->name) && $duplicate && ($data->id != $duplicate->id));
}
else { // new profile category
$dupfound = $duplicate;
}
if ($dupfound ) {
$errors['name'] = get_string('profilecategorynamenotunique', 'admin');
}