Merge branch 'MDL-25027_stable_consistency_fix_m21' of git://github.com/nebgor/moodle into MOODLE_21_STABLE
This commit is contained in:
+11
-8
@@ -83,6 +83,7 @@ class moodle_user_external extends external_api {
|
||||
*/
|
||||
public static function create_users($users) {
|
||||
global $CFG, $DB;
|
||||
require_once($CFG->dirroot."/lib/weblib.php");
|
||||
require_once($CFG->dirroot."/user/lib.php");
|
||||
require_once($CFG->dirroot."/user/profile/lib.php"); //required for customfields related function
|
||||
//TODO: move the functions somewhere else as
|
||||
@@ -131,18 +132,20 @@ class moodle_user_external extends external_api {
|
||||
throw new invalid_parameter_exception('Invalid theme: '.$user['theme']);
|
||||
}
|
||||
|
||||
// make sure there is no data loss during truncation
|
||||
$truncated = truncate_userinfo($user);
|
||||
foreach ($truncated as $key=>$value) {
|
||||
if ($truncated[$key] !== $user[$key]) {
|
||||
throw new invalid_parameter_exception('Property: '.$key.' is too long: '.$user[$key]);
|
||||
}
|
||||
}
|
||||
|
||||
$user['confirmed'] = true;
|
||||
$user['mnethostid'] = $CFG->mnet_localhost_id;
|
||||
$user['id'] = user_create_user($user);
|
||||
|
||||
// Start of user info validation.
|
||||
// Lets make sure we validate current user info as handled by current GUI. see user/editadvanced_form.php function validation()
|
||||
if (!validate_email($user['email'])) {
|
||||
throw new invalid_parameter_exception('Email address is invalid: '.$user['email']);
|
||||
} else if ($DB->record_exists('user', array('email'=>$user['email'], 'mnethostid'=>$user['mnethostid']))) {
|
||||
throw new invalid_parameter_exception('Email address already exists: '.$user['email']);
|
||||
}
|
||||
// End of user info validation.
|
||||
|
||||
|
||||
// custom fields
|
||||
if(!empty($user['customfields'])) {
|
||||
foreach($user['customfields'] as $customfield) {
|
||||
|
||||
Reference in New Issue
Block a user