From: skodak Date: Fri, 23 Nov 2007 22:15:07 +0000 (+0000) Subject: MDL-12133 validate() method tidying up; merged from MOODLE_19_STABLE X-Git-Url: http://git.mjollnir.org/gw?a=commitdiff_plain;h=a78890d593309673e1d8c5edd3344b8a82074d32;p=moodle.git MDL-12133 validate() method tidying up; merged from MOODLE_19_STABLE --- diff --git a/admin/uploaduser_form.php b/admin/uploaduser_form.php index 6db55297ef..c18c59857e 100644 --- a/admin/uploaduser_form.php +++ b/admin/uploaduser_form.php @@ -269,8 +269,8 @@ class admin_uploaduser_form2 extends moodleform { /** * Server side validation. */ - function validation($data) { - $errors = array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); $columns =& $this->_customdata; $optype = $data['uutype']; @@ -325,11 +325,7 @@ class admin_uploaduser_form2 extends moodleform { } } - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + return $errors; } } ?> diff --git a/course/edit_form.php b/course/edit_form.php index 50ec0673ca..8b56083da7 100644 --- a/course/edit_form.php +++ b/course/edit_form.php @@ -405,8 +405,8 @@ class course_edit_form extends moodleform { /// perform some extra moodle validation - function validation($data){ - $errors= array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); if ($foundcourses = get_records('course', 'shortname', $data['shortname'])) { if (!empty($data['id'])) { unset($foundcourses[$data['id']]); @@ -426,11 +426,7 @@ class course_edit_form extends moodleform { } } - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + return $errors; } } ?> diff --git a/course/import/activities/import_form.php b/course/import/activities/import_form.php index 5bbba06809..4e997fe8f2 100755 --- a/course/import/activities/import_form.php +++ b/course/import/activities/import_form.php @@ -25,8 +25,8 @@ class course_import_activities_form_1 extends moodleform { } - function validation($data) { - return true; + function validation($data, $files) { + return parent::validation($data, $files); } } @@ -52,7 +52,7 @@ class course_import_activities_form_2 extends moodleform { } - function validation($data) { + function validation($data, $files) { return true; } diff --git a/course/moodleform_mod.php b/course/moodleform_mod.php index eaafa6e088..e2739c6b88 100644 --- a/course/moodleform_mod.php +++ b/course/moodleform_mod.php @@ -65,8 +65,8 @@ class moodleform_mod extends moodleform { } } - if ($mform->elementExists('groupmode')) { - if ($COURSE->groupmodeforce) { + if ($COURSE->groupmodeforce) { + if ($mform->elementExists('groupmode')) { $mform->hardFreeze('groupmode'); // groupmode can not be changed if forced from course settings } } @@ -86,8 +86,9 @@ class moodleform_mod extends moodleform { } // form verification - function validation($data) { + function validation($data, $files) { global $COURSE; + $errors = parent::validation($data, $files); $mform =& $this->_form; @@ -115,11 +116,7 @@ class moodleform_mod extends moodleform { } } - if (count($errors) == 0) { - return true; - } else { - return $errors; - } + return $errors; } /** @@ -181,8 +178,12 @@ class moodleform_mod extends moodleform { } $mform->addElement('header', 'modstandardelshdr', get_string('modstandardels', 'form')); - if ($features->groups){ - $mform->addElement('modgroupmode', 'groupmode', get_string('groupmode')); + if ($features->groups) { + $options = array(NOGROUPS => get_string('groupsnone'), + SEPARATEGROUPS => get_string('groupsseparate'), + VISIBLEGROUPS => get_string('groupsvisible')); + $mform->addElement('select', 'groupmode', get_string('groupmode'), $options, NOGROUPS); + $mform->setHelpButton('groupmode', array('groupmode', get_string('groupmode'))); } if (!empty($CFG->enablegroupings)) { diff --git a/course/request_form.php b/course/request_form.php index ab40d4b20d..53e1b924c6 100644 --- a/course/request_form.php +++ b/course/request_form.php @@ -31,8 +31,8 @@ class course_request_form extends moodleform { $this->add_action_buttons(); } - function validation($data) { - $errors = array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); $foundcourses = null; $foundreqcourses = null; @@ -67,12 +67,8 @@ class course_request_form extends moodleform { } } } - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + return $errors; } } diff --git a/enrol/authorize/enrol_form.php b/enrol/authorize/enrol_form.php index d2f4c9448c..b635c20da3 100755 --- a/enrol/authorize/enrol_form.php +++ b/enrol/authorize/enrol_form.php @@ -171,11 +171,10 @@ class enrol_authorize_form extends moodleform $this->add_action_buttons(false, get_string('sendpaymentbutton', 'enrol_authorize')); } - function validation($data) + function validation($data, $files) { global $CFG; - - $errors = array(); + $errors = parent::validation($data, $files); if (AN_METHOD_CC == $data['paymentmethod']) { @@ -209,7 +208,7 @@ class enrol_authorize_form extends moodleform } } - return (empty($errors) ? true : $errors); + return $errors; } private function other_method_available($currentmethod) diff --git a/grade/edit/outcome/edit_form.php b/grade/edit/outcome/edit_form.php index 9f1931e783..00906905d1 100644 --- a/grade/edit/outcome/edit_form.php +++ b/grade/edit/outcome/edit_form.php @@ -135,8 +135,8 @@ class edit_outcome_form extends moodleform { } /// perform extra validation before submission - function validation($data){ - $errors = array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); if ($data['scaleid'] < 1) { $errors['scaleid'] = get_string('required'); @@ -149,11 +149,7 @@ class edit_outcome_form extends moodleform { } } - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + return $errors; } diff --git a/grade/edit/scale/edit_form.php b/grade/edit/scale/edit_form.php index 9e4fc5d6f6..37f39878f2 100644 --- a/grade/edit/scale/edit_form.php +++ b/grade/edit/scale/edit_form.php @@ -107,10 +107,10 @@ class edit_scale_form extends moodleform { } /// perform extra validation before submission - function validation($data){ + function validation($data, $files) { global $CFG, $COURSE; - $errors = array(); + $errors = parent::validation($data, $files); // we can not allow 2 scales with the same exact scale as this creates // problems for backup/restore @@ -148,11 +148,7 @@ class edit_scale_form extends moodleform { } } - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + return $errors; } } diff --git a/grade/edit/tree/calculation_form.php b/grade/edit/tree/calculation_form.php index a0b7b26288..331e5a8dff 100644 --- a/grade/edit/tree/calculation_form.php +++ b/grade/edit/tree/calculation_form.php @@ -82,8 +82,8 @@ class edit_calculation_form extends moodleform { } /// perform extra validation before submission - function validation($data){ - $errors = array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); $mform =& $this->_form; @@ -97,11 +97,7 @@ class edit_calculation_form extends moodleform { } } - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + return $errors; } } diff --git a/grade/edit/tree/item_form.php b/grade/edit/tree/item_form.php index 7736d197ba..36d1797f20 100644 --- a/grade/edit/tree/item_form.php +++ b/grade/edit/tree/item_form.php @@ -318,8 +318,8 @@ class edit_item_form extends moodleform { /// perform extra validation before submission - function validation($data){ - $errors = array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); if (array_key_exists('idnumber', $data)) { if ($data['id']) { @@ -351,11 +351,7 @@ class edit_item_form extends moodleform { } } - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + return $errors; } } diff --git a/grade/edit/tree/outcomeitem_form.php b/grade/edit/tree/outcomeitem_form.php index b3c47c6341..ea48243d5c 100644 --- a/grade/edit/tree/outcomeitem_form.php +++ b/grade/edit/tree/outcomeitem_form.php @@ -216,8 +216,8 @@ class edit_outcomeitem_form extends moodleform { /// perform extra validation before submission - function validation($data){ - $errors= array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); if (array_key_exists('idnumber', $data)) { if ($data['id']) { @@ -230,11 +230,7 @@ class edit_outcomeitem_form extends moodleform { } } - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + return $errors; } } diff --git a/grade/import/xml/grade_import_form.php b/grade/import/xml/grade_import_form.php index b5787fffde..ebb4b0d839 100644 --- a/grade/import/xml/grade_import_form.php +++ b/grade/import/xml/grade_import_form.php @@ -84,7 +84,7 @@ class grade_import_form extends moodleform { } function validation($data, $files) { - $err = array(); + $err = parent::validation($data, $files); if (empty($data['url']) and empty($files['userfile'])) { if (array_key_exists('url', $data)) { $err['url'] = get_string('required'); @@ -97,11 +97,7 @@ class grade_import_form extends moodleform { $err['url'] = get_string('error'); } - if (count($err) == 0){ - return true; - } else { - return $err; - } + return $err; } } ?> diff --git a/grade/report/grader/preferences_form.php b/grade/report/grader/preferences_form.php index ba7817d631..3e4bce1ae7 100644 --- a/grade/report/grader/preferences_form.php +++ b/grade/report/grader/preferences_form.php @@ -191,13 +191,8 @@ class grader_report_preferences_form extends moodleform { } /// perform some extra moodle validation - function validation($data){ - $errors= array(); - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + function validation($data, $files) { + return parent::validation($data, $files); } } ?> diff --git a/group/autogroup_form.php b/group/autogroup_form.php index e9be2fc6db..96b584f31b 100644 --- a/group/autogroup_form.php +++ b/group/autogroup_form.php @@ -91,7 +91,7 @@ class autogroup_form extends moodleform { function validation($data, $files) { global $CFG, $COURSE; - $errors = array(); + $errors = parent::validation($data, $files); if ($data['allocateby'] != 'no') { if (!$users = groups_get_potential_members($data['courseid'], $data['roleid'])) { diff --git a/group/group_form.php b/group/group_form.php index 738e2c713e..42c6589dac 100644 --- a/group/group_form.php +++ b/group/group_form.php @@ -42,10 +42,10 @@ class group_form extends moodleform { $this->add_action_buttons(); } - function validation($data) { + function validation($data, $files) { global $COURSE; - $errors = array(); + $errors = parent::validation($data, $files); $name = trim(stripslashes($data['name'])); if ($data['id'] and $group = get_record('groups', 'id', $data['id'])) { @@ -59,11 +59,7 @@ class group_form extends moodleform { $errors['name'] = get_string('groupnameexists', 'group', $name); } - if (count($errors) > 0) { - return $errors; - } else { - return true; - } + return $errors; } function get_um() { diff --git a/group/grouping_form.php b/group/grouping_form.php index d61ab7c1f3..161aa0b262 100644 --- a/group/grouping_form.php +++ b/group/grouping_form.php @@ -27,10 +27,10 @@ class grouping_form extends moodleform { $this->add_action_buttons(); } - function validation($data) { + function validation($data, $files) { global $COURSE; - $errors = array(); + $errors = parent::validation($data, $files); $name = trim(stripslashes($data['name'])); if ($data['id'] and $grouping = get_record('groupings', 'id', $data['id'])) { @@ -44,11 +44,7 @@ class grouping_form extends moodleform { $errors['name'] = get_string('groupingnameexists', 'group', $name); } - if (count($errors) > 0) { - return $errors; - } else { - return true; - } + return $errors; } } diff --git a/lib/formslib.php b/lib/formslib.php index f4285da203..22d69acc79 100644 --- a/lib/formslib.php +++ b/lib/formslib.php @@ -335,15 +335,16 @@ class moodleform { $data = $mform->exportValues(null, true); $moodle_val = $this->validation($data, $files); - if ($moodle_val !== true) { - if ((is_array($moodle_val) && count($moodle_val)!==0)) { - foreach ($moodle_val as $element=>$msg) { - $mform->setElementError($element, $msg); - } - $moodle_val = false; - } else { - $moodle_val = true; + if ((is_array($moodle_val) && count($moodle_val)!==0)) { + // non-empty array means errors + foreach ($moodle_val as $element=>$msg) { + $mform->setElementError($element, $msg); } + $moodle_val = false; + + } else { + // anything else means validation ok + $moodle_val = true; } $validated = ($internal_val and $moodle_val and $file_val); @@ -511,8 +512,8 @@ class moodleform { * * @param array $data array of ("fieldname"=>value) of submitted data * @param array $files array of uploaded files "element_name"=>tmp_file_path - * @return mixed an array of "element_name"=>"error_description" if there are errors. - * true or an empty array if everything is OK. + * @return array of "element_name"=>"error_description" if there are errors, + * or an empty array if everything is OK (true allowed for backwards compatibility too). */ function validation($data, $files) { return array(); diff --git a/login/change_password_form.php b/login/change_password_form.php index bbad981b50..7b34e56b5e 100644 --- a/login/change_password_form.php +++ b/login/change_password_form.php @@ -40,9 +40,9 @@ class login_change_password_form extends moodleform { } /// perform extra password change validation - function validation($data){ + function validation($data, $files) { global $USER; - $errors = array(); + $errors = parent::validation($data, $files); update_login_count(); @@ -73,7 +73,7 @@ class login_change_password_form extends moodleform { return $errors; } - return true; + return $errors; } } ?> diff --git a/login/forgot_password_form.php b/login/forgot_password_form.php index c19d994fed..684eabc34f 100644 --- a/login/forgot_password_form.php +++ b/login/forgot_password_form.php @@ -19,10 +19,10 @@ class login_forgot_password_form extends moodleform { $this->add_action_buttons(true, get_string('ok')); } - function validation($data) { + function validation($data, $files) { global $CFG; - $errors = array(); + $errors = parent::validation($data, $files); if ((!empty($data['username']) and !empty($data['email'])) or (empty($data['username']) and empty($data['email']))) { $errors['username'] = get_string('usernameoremail'); @@ -57,11 +57,7 @@ class login_forgot_password_form extends moodleform { } } - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + return $errors; } } diff --git a/login/signup_form.php b/login/signup_form.php index c335774f99..f34e33c3b7 100644 --- a/login/signup_form.php +++ b/login/signup_form.php @@ -79,9 +79,9 @@ class login_signup_form extends moodleform { $mform->applyFilter('username', 'trim'); } - function validation($data) { + function validation($data, $files) { global $CFG; - $errors = array(); + $errors = parent::validation($data, $files); $authplugin = get_auth_plugin($CFG->registerauth); @@ -122,15 +122,12 @@ class login_signup_form extends moodleform { } + $errmsg = ''; if (!check_password_policy($data['password'], $errmsg)) { $errors['password'] = $errmsg; } - if (0 == count($errors)){ - return true; - } else { - return $errors; - } + return $errors; } diff --git a/mod/choice/mod_form.php b/mod/choice/mod_form.php index d47a06ec59..3f752b34c9 100644 --- a/mod/choice/mod_form.php +++ b/mod/choice/mod_form.php @@ -118,11 +118,8 @@ class mod_choice_mod_form extends moodleform_mod { } - function validation($data){ - $errors = parent::validation($data); - if ($errors === true) { - $errors = array(); - } + function validation($data, $files) { + $errors = parent::validation($data, $files); $choices = 0; foreach ($data['option'] as $option){ @@ -139,12 +136,7 @@ class mod_choice_mod_form extends moodleform_mod { $errors['option[1]'] = get_string('fillinatleastoneoption', 'choice'); } - if (count($errors) == 0) { - return true; - } else { - return $errors; - } - + return $errors; } } diff --git a/mod/forum/post_form.php b/mod/forum/post_form.php index d49417ed39..3a889cff25 100644 --- a/mod/forum/post_form.php +++ b/mod/forum/post_form.php @@ -115,13 +115,13 @@ class mod_forum_post_form extends moodleform { } - function validation($data) { - $error = array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); if (($data['timeend']!=0) && ($data['timestart']!=0) && $data['timeend'] <= $data['timestart']) { - $error['timeend'] = get_string('timestartenderror', 'forum'); + $errors['timeend'] = get_string('timestartenderror', 'forum'); } - return (count($error)==0) ? true : $error; + return $errors; } } diff --git a/mod/glossary/edit_form.php b/mod/glossary/edit_form.php index 17c3892f3b..b9f357eaee 100644 --- a/mod/glossary/edit_form.php +++ b/mod/glossary/edit_form.php @@ -94,9 +94,9 @@ class mod_glossary_entry_form extends moodleform { $this->add_action_buttons(); } - function validation($data){ + function validation($data, $files) { global $CFG, $USER; - $errors = array(); + $errors = parent::validation($data, $files); $e = $this->_customdata['e']; $glossary = $this->_customdata['glossary']; $context = $this->_customdata['context']; diff --git a/mod/lesson/mod_form.php b/mod/lesson/mod_form.php index 43e790693b..babd21ed2d 100644 --- a/mod/lesson/mod_form.php +++ b/mod/lesson/mod_form.php @@ -327,21 +327,14 @@ class mod_lesson_mod_form extends moodleform_mod { * @param object $data Post data to validate * @return array **/ - function validation($data) { - $errors = parent::validation($data); - if ($errors === true) { - $errors = array(); - } + function validation($data, $files) { + $errors = parent::validation($data, $files); if (empty($data['maxtime']) and !empty($data['timed'])) { $errors['timedgrp'] = get_string('err_numeric', 'form'); } - if (count($errors) == 0) { - return true; - } else { - return $errors; - } + return $errors; } } ?> diff --git a/mod/quiz/mod_form.php b/mod/quiz/mod_form.php index 4b5c0fc715..f3c6c71fa4 100644 --- a/mod/quiz/mod_form.php +++ b/mod/quiz/mod_form.php @@ -309,11 +309,8 @@ class mod_quiz_mod_form extends moodleform_mod { } } - function validation($data){ - $errors = parent::validation($data); - if ($errors === true) { - $errors = array(); - } + function validation($data, $files) { + $errors = parent::validation($data, $files); // Check open and close times are consistent. if ($data['timeopen'] != 0 && $data['timeclose'] != 0 && $data['timeclose'] < $data['timeopen']) { diff --git a/mod/scorm/mod_form.php b/mod/scorm/mod_form.php index a3758f7d73..23b1969bf4 100644 --- a/mod/scorm/mod_form.php +++ b/mod/scorm/mod_form.php @@ -235,11 +235,8 @@ class mod_scorm_mod_form extends moodleform_mod { } } - function validation($data) { - $errors = parent::validation($data); - if ($errors === true) { - $errors = array(); - } + function validation($data, $files) { + $errors = parent::validation($data, $files); $validate = scorm_validate($data); @@ -247,11 +244,7 @@ class mod_scorm_mod_form extends moodleform_mod { $errors = $errors + $validate->errors; } - if (count($errors) == 0) { - return true; - } else { - return $errors; - } + return $errors; } } diff --git a/question/contextmove_form.php b/question/contextmove_form.php index c732d58610..c025729542 100644 --- a/question/contextmove_form.php +++ b/question/contextmove_form.php @@ -45,8 +45,8 @@ class question_context_move_form extends moodleform { } - function validation($data){ - $errors = array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); $tocoursefilesid = $this->_customdata['tocoursefilesid']; $fromcoursefilesid = $this->_customdata['fromcoursefilesid']; if (isset($data['urls']) && (count($data['urls']))){ diff --git a/question/contextmoveq_form.php b/question/contextmoveq_form.php index 6617b870e1..0d59bf8066 100644 --- a/question/contextmoveq_form.php +++ b/question/contextmoveq_form.php @@ -45,8 +45,8 @@ class question_context_move_question_form extends moodleform { $this->add_action_buttons(true, get_string('moveq', 'question')); } - function validation($data){ - $errors = array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); $tocoursefilesid = $this->_customdata['tocoursefilesid']; $fromcoursefilesid = $this->_customdata['fromcoursefilesid']; if (isset($data['urls']) && (count($data['urls']))){ diff --git a/question/type/calculated/edit_calculated_form.php b/question/type/calculated/edit_calculated_form.php index 15aebb338f..948d620fb5 100644 --- a/question/type/calculated/edit_calculated_form.php +++ b/question/type/calculated/edit_calculated_form.php @@ -171,7 +171,7 @@ class question_edit_calculated_form extends question_edit_form { return 'calculated'; } - function validation($data, $files){ + function validation($data, $files) { $errors = parent::validation($data, $files); //verifying for errors in {=...} in question text; $qtext = ""; diff --git a/question/type/datasetdependent/datasetdefinitions_form.php b/question/type/datasetdependent/datasetdefinitions_form.php index 923e0c4642..26935acc67 100644 --- a/question/type/datasetdependent/datasetdefinitions_form.php +++ b/question/type/datasetdependent/datasetdefinitions_form.php @@ -111,8 +111,8 @@ class question_dataset_dependent_definitions_form extends moodleform { $mform->addElement('hidden', 'wizard', 'datasetitems'); $mform->setType('wizard', PARAM_ALPHA); } - function validation($data){ - $errors = array(); + function validation($data, $files) { + $errors = parent::validation($data, $files); $datasets = $data['dataset']; $countvalid = 0 ; foreach ($datasets as $key => $dataset){ diff --git a/question/type/datasetdependent/datasetitems_form.php b/question/type/datasetdependent/datasetitems_form.php index 4f0210bcd1..a9f1943585 100644 --- a/question/type/datasetdependent/datasetitems_form.php +++ b/question/type/datasetdependent/datasetitems_form.php @@ -226,7 +226,7 @@ class question_dataset_dependent_items_form extends moodleform { parent::set_data((object)($formdata + (array)$question)); } - function validation($data){ + function validation($data, $files) { $errors = array(); if (isset($data['backtoquiz']) && ($this->noofitems==0)){ $errors['warning'] = get_string('warning', 'mnet'); diff --git a/question/type/match/edit_match_form.php b/question/type/match/edit_match_form.php index 6ff62c08f0..4a550d551d 100644 --- a/question/type/match/edit_match_form.php +++ b/question/type/match/edit_match_form.php @@ -70,7 +70,7 @@ class question_edit_match_form extends question_edit_form { return 'match'; } - function validation($data, $files){ + function validation($data, $files) { $errors = parent::validation($data, $files); $answers = $data['subanswers']; $questions = $data['subquestions']; diff --git a/question/type/missingtype/edit_missingtype_form.php b/question/type/missingtype/edit_missingtype_form.php index c410d46c8a..e390a73e00 100644 --- a/question/type/missingtype/edit_missingtype_form.php +++ b/question/type/missingtype/edit_missingtype_form.php @@ -66,7 +66,7 @@ class question_edit_missingtype_form extends question_edit_form { return 'missingtype'; } - function validation($data, $files){ + function validation($data, $files) { $errors = parent::validation($data, $files); $answers = $data['answer']; $answercount = 0; diff --git a/question/type/multianswer/edit_multianswer_form.php b/question/type/multianswer/edit_multianswer_form.php index 2b7740d099..0ef3db972a 100644 --- a/question/type/multianswer/edit_multianswer_form.php +++ b/question/type/multianswer/edit_multianswer_form.php @@ -190,17 +190,8 @@ class question_edit_multianswer_form extends question_edit_form { parent::set_data($question); } - function validation($data, $files){ - - $errors =array(); - $parenterrors = parent::validation($data, $files); - if (is_array($parenterrors) && count($parenterrors)) { - if (is_array($errors)) { - $errors = array_merge($errors,$parenterrors); - } else { - $errors =$parenterrors ; - } - } + function validation($data, $files) { + $errors = parent::validation($data, $files); if (isset($this->questiondisplay->options->questions)) { diff --git a/question/type/multichoice/edit_multichoice_form.php b/question/type/multichoice/edit_multichoice_form.php index 19dd1eb550..1ead8d8f41 100644 --- a/question/type/multichoice/edit_multichoice_form.php +++ b/question/type/multichoice/edit_multichoice_form.php @@ -107,7 +107,7 @@ class question_edit_multichoice_form extends question_edit_form { return 'multichoice'; } - function validation($data, $files){ + function validation($data, $files) { $errors = parent::validation($data, $files); $answers = $data['answer']; $answercount = 0; diff --git a/question/type/numerical/edit_numerical_form.php b/question/type/numerical/edit_numerical_form.php index e47433c5a9..dc61ee19e8 100644 --- a/question/type/numerical/edit_numerical_form.php +++ b/question/type/numerical/edit_numerical_form.php @@ -107,7 +107,7 @@ class question_edit_numerical_form extends question_edit_form { } parent::set_data($question); } - function validation($data, $files){ + function validation($data, $files) { $errors = parent::validation($data, $files); // Check the answers. diff --git a/question/type/randomsamatch/edit_randomsamatch_form.php b/question/type/randomsamatch/edit_randomsamatch_form.php index d746483d7e..30671507f1 100644 --- a/question/type/randomsamatch/edit_randomsamatch_form.php +++ b/question/type/randomsamatch/edit_randomsamatch_form.php @@ -47,7 +47,7 @@ class question_edit_randomsamatch_form extends question_edit_form { return 'randomsamatch'; } - function validation($data, $files){ + function validation($data, $files) { global $QTYPES; $errors = parent::validation($data, $files); $saquestions = $QTYPES['randomsamatch']->get_sa_candidates($data['category']); diff --git a/question/type/shortanswer/edit_shortanswer_form.php b/question/type/shortanswer/edit_shortanswer_form.php index 6b5fc13fb0..6df5f11a64 100644 --- a/question/type/shortanswer/edit_shortanswer_form.php +++ b/question/type/shortanswer/edit_shortanswer_form.php @@ -69,7 +69,7 @@ class question_edit_shortanswer_form extends question_edit_form { } parent::set_data($question); } - function validation($data, $files){ + function validation($data, $files) { $errors = parent::validation($data, $files); $answers = $data['answer']; $answercount = 0; diff --git a/user/edit_form.php b/user/edit_form.php index 845498e549..5bb638438e 100644 --- a/user/edit_form.php +++ b/user/edit_form.php @@ -91,32 +91,29 @@ class user_edit_form extends moodleform { } - function validation ($usernew) { + function validation($usernew, $files) { global $CFG; + $errors = parent::validation($usernew, $files); + $usernew = (object)$usernew; $user = get_record('user', 'id', $usernew->id); - $err = array(); // validate email if (!validate_email($usernew->email)) { - $err['email'] = get_string('invalidemail'); + $errors['email'] = get_string('invalidemail'); } else if (($usernew->email !== $user->email) and record_exists('user', 'email', $usernew->email, 'mnethostid', $CFG->mnet_localhost_id)) { - $err['email'] = get_string('emailexists'); + $errors['email'] = get_string('emailexists'); } if ($usernew->email === $user->email and over_bounce_threshold($user)) { - $err['email'] = get_string('toomanybounces'); + $errors['email'] = get_string('toomanybounces'); } /// Next the customisable profile fields - $err += profile_validation($usernew); + $errors += profile_validation($usernew, $files); - if (count($err) == 0){ - return true; - } else { - return $err; - } + return $errors; } function get_um() { diff --git a/user/profile/definelib.php b/user/profile/definelib.php index 68e6530449..38fc90e50e 100644 --- a/user/profile/definelib.php +++ b/user/profile/definelib.php @@ -70,19 +70,15 @@ class profile_define_base { * @param object data from the add/edit profile field form * @return array associative array of error messages */ - function define_validate($data) { + function define_validate($data, $files) { $data = (object)$data; $err = array(); - $err += $this->define_validate_common($data); - $err += $this->define_validate_specific($data); + $err += $this->define_validate_common($data, $files); + $err += $this->define_validate_specific($data, $files); - if (count($err) == 0){ - return true; - } else { - return $err; - } + return $err; } /** @@ -92,7 +88,7 @@ class profile_define_base { * @param object data from the add/edit profile field form * @return array associative array of error messages */ - function define_validate_common($data) { + function define_validate_common($data, $files) { global $USER; $err = array(); @@ -111,7 +107,6 @@ class profile_define_base { } /// No further checks necessary as the form class will take care of it - return $err; } @@ -121,7 +116,7 @@ class profile_define_base { * @param object data from the add/edit profile field form * @return array associative array of error messages */ - function define_validate_specific($data) { + function define_validate_specific($data, $files) { /// do nothing - overwrite if necessary return array(); } diff --git a/user/profile/field/menu/define.class.php b/user/profile/field/menu/define.class.php index 2b88b2fee2..78e9d6e52b 100644 --- a/user/profile/field/menu/define.class.php +++ b/user/profile/field/menu/define.class.php @@ -12,7 +12,7 @@ class profile_define_menu extends profile_define_base { $form->setType('defaultdata', PARAM_MULTILANG); } - function define_validate_specific($data) { + function define_validate_specific($data, $files) { $err = array(); $data->param1 = str_replace("\r", '', $data->param1); diff --git a/user/profile/index_category_form.php b/user/profile/index_category_form.php index 4264ebf9c1..51c585ccf3 100644 --- a/user/profile/index_category_form.php +++ b/user/profile/index_category_form.php @@ -25,24 +25,20 @@ class category_form extends moodleform { } /// End of function /// perform some moodle validation - function validation ($data) { + function validation($data, $files) { global $CFG; + $errors = parent::validation($data, $files); $data = (object)$data; - $err = array(); $category = get_record('user_info_category', 'id', $data->id); /// Check the name is unique if ($category and ($category->name !== $data->name) and (record_exists('user_info_category', 'name', $data->name))) { - $err['name'] = get_string('profilecategorynamenotunique', 'admin'); + $errors['name'] = get_string('profilecategorynamenotunique', 'admin'); } - if (count($err) == 0){ - return true; - } else { - return $err; - } + return $errors; } } diff --git a/user/profile/index_field_form.php b/user/profile/index_field_form.php index be49ff8eae..5fc4f980d8 100644 --- a/user/profile/index_field_form.php +++ b/user/profile/index_field_form.php @@ -39,7 +39,7 @@ class field_form extends moodleform { /// perform some moodle validation - function validation ($data) { + function validation($data, $files) { return $this->field->define_validate($data); } } diff --git a/user/profile/lib.php b/user/profile/lib.php index 9a632c4805..3da8164053 100644 --- a/user/profile/lib.php +++ b/user/profile/lib.php @@ -329,7 +329,7 @@ function profile_definition_after_data(&$mform) { }*/ } -function profile_validation($usernew) { +function profile_validation($usernew, $files) { global $CFG; $err = array(); @@ -338,7 +338,7 @@ function profile_validation($usernew) { require_once($CFG->dirroot.'/user/profile/field/'.$field->datatype.'/field.class.php'); $newfield = 'profile_field_'.$field->datatype; $formfield = new $newfield($field->id, $usernew->id); - $err += $formfield->edit_validate_field($usernew); + $err += $formfield->edit_validate_field($usernew, $files); } } return $err;