/** * Test that event observer is executed on course deletion and the templates are removed. */ public function test_delete_course() { global $DB; $this->resetAfterTest(); feedback_save_as_template($this->eventfeedback, 'my template', 0); $courseid = $this->eventcourse->id; $this->assertNotEmpty($DB->get_records('feedback_template', array('course' => $courseid))); delete_course($this->eventcourse, false); $this->assertEmpty($DB->get_records('feedback_template', array('course' => $courseid))); }
$create_template_form->set_data(array('id' => $id, 'do_show' => 'templates')); $create_template_formdata = $create_template_form->get_data(); if (isset($create_template_formdata->savetemplate) && $create_template_formdata->savetemplate == 1) { //check the capabilities to create templates if (!$capabilities->createprivatetemplate and !$capabilities->createpublictemplate) { print_error('cannotsavetempl', 'feedback'); } if (trim($create_template_formdata->templatename) == '') { $savereturn = 'notsaved_name'; } else { if ($capabilities->createpublictemplate) { $create_template_formdata->ispublic = isset($create_template_formdata->ispublic) ? 1 : 0; } else { $create_template_formdata->ispublic = 0; } if (!feedback_save_as_template($feedback, $create_template_formdata->templatename, $create_template_formdata->ispublic)) { $savereturn = 'failed'; } else { $savereturn = 'saved'; } } } //get the feedbackitems $lastposition = 0; $feedbackitems = $DB->get_records('feedback_item', array('feedback' => $feedback->id), 'position'); if (is_array($feedbackitems)) { $feedbackitems = array_values($feedbackitems); if (count($feedbackitems) > 0) { $lastitem = $feedbackitems[count($feedbackitems) - 1]; $lastposition = $lastitem->position; } else {
$items = $feedbackstructure->get_items(); if (isset($items[$deleteitem])) { feedback_delete_item($deleteitem); } redirect($url); } // Process the create template form. $cancreatetemplates = has_capability('mod/feedback:createprivatetemplate', $context) || has_capability('mod/feedback:createpublictemplate', $context); $create_template_form = new feedback_edit_create_template_form(null, array('id' => $id)); if ($data = $create_template_form->get_data()) { // Check the capabilities to create templates. if (!$cancreatetemplates) { print_error('cannotsavetempl', 'feedback', $url); } $ispublic = !empty($data->ispublic) ? 1 : 0; if (!feedback_save_as_template($feedback, $data->templatename, $ispublic)) { redirect($url, get_string('saving_failed', 'feedback'), null, \core\output\notification::NOTIFY_ERROR); } else { redirect($url, get_string('template_saved', 'feedback'), null, \core\output\notification::NOTIFY_SUCCESS); } } //Get the feedbackitems $lastposition = 0; $feedbackitems = $DB->get_records('feedback_item', array('feedback' => $feedback->id), 'position'); if (is_array($feedbackitems)) { $feedbackitems = array_values($feedbackitems); if (count($feedbackitems) > 0) { $lastitem = $feedbackitems[count($feedbackitems) - 1]; $lastposition = $lastitem->position; } else { $lastposition = 0;