mirror of
https://github.com/moodle/moodle.git
synced 2025-08-06 01:16:44 +02:00
Merge branch 'MDL-25027_stable_consistency_fix_m22' of git://github.com/nebgor/moodle into MOODLE_22_STABLE
This commit is contained in:
commit
313f98c88a
1 changed files with 11 additions and 8 deletions
|
@ -86,6 +86,7 @@ class core_user_external extends external_api {
|
||||||
*/
|
*/
|
||||||
public static function create_users($users) {
|
public static function create_users($users) {
|
||||||
global $CFG, $DB;
|
global $CFG, $DB;
|
||||||
|
require_once($CFG->dirroot."/lib/weblib.php");
|
||||||
require_once($CFG->dirroot."/user/lib.php");
|
require_once($CFG->dirroot."/user/lib.php");
|
||||||
require_once($CFG->dirroot."/user/profile/lib.php"); //required for customfields related function
|
require_once($CFG->dirroot."/user/profile/lib.php"); //required for customfields related function
|
||||||
//TODO: move the functions somewhere else as
|
//TODO: move the functions somewhere else as
|
||||||
|
@ -134,18 +135,20 @@ class core_user_external extends external_api {
|
||||||
throw new invalid_parameter_exception('Invalid theme: '.$user['theme']);
|
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['confirmed'] = true;
|
||||||
$user['mnethostid'] = $CFG->mnet_localhost_id;
|
$user['mnethostid'] = $CFG->mnet_localhost_id;
|
||||||
$user['id'] = user_create_user($user);
|
$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
|
// custom fields
|
||||||
if(!empty($user['customfields'])) {
|
if(!empty($user['customfields'])) {
|
||||||
foreach($user['customfields'] as $customfield) {
|
foreach($user['customfields'] as $customfield) {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue