//TODO check out if it makes sense to create account with this auth plugin and what to do with the password unset($usernew->id); $usernew->mnethostid = $CFG->mnet_localhost_id; // always local user $usernew->confirmed = 1; $usernew->password = hash_internal_user_password($usernew->newpassword); // Added: to call calendar ws to create user. //Added: 01.03.2011 - quotasystem.php //if(addQSUser($usernew)){ if (createUserProfile($USER->username, $usernew)) { if (!($usernew->id = insert_record('user', $usernew))) { admin_moodlefailed_email($usernew, 'addUser', $course); error('Error creating user record'); } $myuser = get_record('user', 'id', $usernew->id); if (!addQSUser($myuser)) { //Added: 01.06.2011 - quotasystem.php admin_signuperror_email($usernew); // Added: JAM - 01.06.2011 //error('An error has occured, please try again shortly.'); } $usercreated = true; } else { $usercreated = false; //deleteQSUser($usernew); admin_webservicefailed_email($usernew, 'addUser', $course); } /* }else{ $usercreated = false; deleteUserProfile($USER->username, $usernew); //Added: 11.05.2010 - calendar.php
if (createUserProfile($username, $usernew)) { if (!($usernew->id = insert_record('user', $usernew))) { admin_moodlefailed_email($usernew, 'addUser', $course); error('Error creating user record'); } // Insert the user_custom_profile_field for timezone $rec = new object(); $rec->userid = $usernew->id; $rec->fieldid = 4; $rec->data = $timezone; insert_record('user_info_data', $rec); // Insert the user_custom_profile_field for companyname $rec = new object(); $rec->userid = $usernew->id; $rec->fieldid = 2; $rec->data = $companyname; insert_record('user_info_data', $rec); // reload from db $usernew = get_record('user', 'id', $usernew->id); // setUserTimeZone($usernew->id, $zone); setWSUserDefaultTimeZone('admin', $usernew); editUserProfilePassword("admin", $usernew->username, $password); if (!addQSUser($usernew)) { admin_signuperror_email($usernew); //error('An error has occured, please try again shortly.'); } } else { $usercreated = false; //deleteQSUser($usernew); admin_webservicefailed_email($usernew, 'addUser', $course); }
/** * Sign up a new user ready for confirmation. * Password is passed in plaintext. * * @param object $user new user object (with system magic quotes) * @param boolean $notify print notice with link and terminate */ function user_signup($user, $notify = true) { global $CFG; require_once $CFG->dirroot . '/user/profile/lib.php'; $user->password = hash_internal_user_password($user->password); if (!($user->id = insert_record('user', $user))) { print_error('auth_emailnoinsert', 'auth'); } /// Save any custom profile field information profile_save_data($user); //Added by JAM: 12.02.2010 - Call the set user time-zone for WS, cannot set time-zone until, user is created setWSUserDefaultTimeZone($user->username, $user); $user = get_record('user', 'id', $user->id); events_trigger('user_created', $user); //Added by JAM: 01.06.2011 - this is where the user id exists if (!addQSUser($user)) { admin_signuperror_email($user); // Added: JAM - 01.06.2011 //error('An error has occured, please try again shortly.'); } if (!send_confirmation_email($user)) { print_error('auth_emailnoemail', 'auth'); } if ($notify) { global $CFG; $emailconfirm = get_string('emailconfirm'); $navlinks = array(); $navlinks[] = array('name' => $emailconfirm, 'link' => null, 'type' => 'misc'); $navigation = build_navigation($navlinks); print_header($emailconfirm, $emailconfirm, $navigation); // Added by SMS: 7/28/2011 $data = new object(); $data->useremail = $user->email; $supportuser = generate_email_supportuser(); $data->adminemail = $supportuser->email; // Edited by SMS: 7/28/2011 // notice(get_string('emailconfirmsent', '', $user->email), "$CFG->wwwroot/index.php"); notice(get_string('emailconfirmsent', '', $data), "{$CFG->wwwroot}/index.php"); } else { return true; } }
admin_externalpage_print_footer(); die; } else { if (data_submitted() and !$user->deleted) { // Added: to call calendar ws to delete user, if fails then dont delete // Added: 01.03.2010 - quotasystem.php if (deleteQSUser($user)) { if (deleteUserProfile($USER->username, $user)) { if (delete_user($user)) { notify(get_string('deletedactivity', '', fullname($user, true))); } else { notify(get_string('deletednot', '', fullname($user, true))); admin_moodlefailed_email($user, 'deleteUser'); } } else { addQSUser($user); // re-Adds the user to the QS if second WS call fails admin_webservicefailed_email($user, 'deleteUser'); notify(get_string('deletednot', '', fullname($user, true))); } } else { //error('This account could not be deleted.'); notify(get_string('deletednot', '', fullname($user, true))); } } } } else { if ($acl and confirm_sesskey()) { if (!has_capability('moodle/user:delete', $sitecontext)) { // TODO: this should be under a separate capability error('You are not permitted to modify the MNET access control list.');
function _deleteUser($user) { $retVal = true; echo "<br> {$username} is now going to be deleted from vLab!"; if (deleteQSUser($user)) { echo "<br> deleteQSUser for {$user->username} was successful."; if (deleteUserProfile('admin', $user)) { echo "<br> deleteUserProfile for {$user->username} was successful."; if (delete_user($user)) { echo "<br> delete_user for {$user->username} was successful."; echo "<br> {$user->username} was successfully deleted from vLab."; send_user_deleted_notification($user); } else { echo "<br> Error occurred in delete_user while trying delete {$username} from vLab."; admin_moodlefailed_email($user, 'deleteUser'); $retVal = false; } } else { addQSUser($user); // re-Adds the user to the QS if second WS call fails echo "<br> Error occurred in deleteUserProfile while trying delete {$username} from vLab."; admin_webservicefailed_email($user, 'deleteUser'); $retVal = false; } } else { echo "<br> Error occurred in deleteQSUser while trying delete {$username} from vLab."; admin_moodlefailed_email($user, 'deleteUser'); $retVal = false; } return $retVal; }