/** * Given an object containing all the necessary data, (defined by the * form in mod.html) this function will update an existing instance * with new data. */ function facetoface_update_instance($facetoface, $instanceflag = true) { global $DB; if ($instanceflag) { $facetoface->id = $facetoface->instance; } facetoface_fix_settings($facetoface); if ($return = $DB->update_record('facetoface', $facetoface)) { facetoface_grade_item_update($facetoface); // Update any calendar entries. if ($sessions = facetoface_get_sessions($facetoface->id)) { foreach ($sessions as $session) { facetoface_update_calendar_entries($session, $facetoface); } } } return $return; }
/** * Given an object containing all the necessary data, (defined by the * form in mod.html) this function will update an existing instance * with new data. */ function facetoface_update_instance($facetoface, $instanceflag = true) { global $DB, $USER; if ($instanceflag) { $facetoface->id = $facetoface->instance; } if (empty($facetoface->completionstatusrequired)) { $facetoface->completionstatusrequired = null; } facetoface_fix_settings($facetoface); if ($return = $DB->update_record('facetoface', $facetoface)) { facetoface_grade_item_update($facetoface); // Update any calendar entries if ($sessions = facetoface_get_sessions($facetoface->id)) { foreach ($sessions as $session) { facetoface_update_calendar_entries($session, $facetoface); // If manager changed from approval required to not if ($facetoface->approvalreqd == 0) { // Check if we have the users who need approval $attendees = facetoface_get_attendees($session->id, array(MDL_F2F_STATUS_REQUESTED)); if (count($attendees) > 0) { // Update user status code from MDL_F2F_STATUS_REQUESTED to MDL_F2F_STATUS_BOOKED, otherwise these users will be hidden foreach ($attendees as $i => $attendee) { if (facetoface_update_signup_status($attendee->submissionid, MDL_F2F_STATUS_BOOKED, $USER->id, '', $attendee->grade)) { // Send confirmation email that an user is booked and cc to user's manager if exists facetoface_send_confirmation_notice($facetoface, $session, $attendee->id, 0, 0); } } } } } } } return $return; }
function test_facetoface_fix_settings() { // test for facetoface object $facetoface1 = $this->facetoface['f2f0']; $f2f = $this->array_to_object($facetoface1); // Test - for empty values. $this->assertEquals(facetoface_fix_settings($f2f), null); $this->resetAfterTest(true); }