/** * Deletes an assignment activity * * Deletes all database records, files and calendar events for this assignment. * * @global object * @global object * @param object $assignment The assignment to be deleted * @return boolean False indicates error */ function delete_instance($assignment) { global $CFG, $DB; $assignment->courseid = $assignment->course; $result = true; // now get rid of all files $fs = get_file_storage(); if ($cm = get_coursemodule_from_instance('assignment', $assignment->id)) { $context = get_context_instance(CONTEXT_MODULE, $cm->id); $fs->delete_area_files($context->id); } if (! $DB->delete_records('assignment_submissions', array('assignment'=>$assignment->id))) { $result = false; } if (! $DB->delete_records('event', array('modulename'=>'assignment', 'instance'=>$assignment->id))) { $result = false; } if (! $DB->delete_records('assignment', array('id'=>$assignment->id))) { $result = false; } $mod = $DB->get_field('modules','id',array('name'=>'assignment')); assignment_grade_item_delete($assignment); return $result; }
/** * Deletes an assignment activity * * Deletes all database records, files and calendar events for this assignment. * @param $assignment object The assignment to be deleted * @return boolean False indicates error */ function delete_instance($assignment) { global $CFG; $assignment->courseid = $assignment->course; $result = true; if (!delete_records('assignment_submissions', 'assignment', $assignment->id)) { $result = false; } if (!delete_records('assignment', 'id', $assignment->id)) { $result = false; } if (!delete_records('event', 'modulename', 'assignment', 'instance', $assignment->id)) { $result = false; } // delete file area with all attachments - ignore errors require_once $CFG->libdir . '/filelib.php'; fulldelete($CFG->dataroot . '/' . $assignment->course . '/' . $CFG->moddata . '/assignment/' . $assignment->id); assignment_grade_item_delete($assignment); return $result; }