original_string: public function delete_override($overrideid) {
          global $CFG, $DB;
  
          require_once($CFG->dirroot . '/calendar/lib.php');
  
          $cm = get_coursemodule_from_instance('lesson', $this->properties->id, $this->properties->course);
  
          $override = $DB->get_record('lesson_overrides', array('id' => $overrideid), '*', MUST_EXIST);
  
          // Delete the events.
          $conds = array('modulename' => 'lesson',
                  'instance' => $this->properties->id);
          if (isset($override->userid)) {
              $conds['userid'] = $override->userid;
          } else {
              $conds['groupid'] = $override->groupid;
          }
          $events = $DB->get_records('event', $conds);
          foreach ($events as $event) {
              $eventold = calendar_event::load($event);
              $eventold->delete();
          }
  
          $DB->delete_records('lesson_overrides', array('id' => $overrideid));
  
          // Set the common parameters for one of the events we will be triggering.
          $params = array(
              'objectid' => $override->id,
              'context' => context_module::instance($cm->id),
              'other' => array(
                  'lessonid' => $override->lessonid
              )
          );
          // Determine which override deleted event to fire.
          if (!empty($override->userid)) {
              $params['relateduserid'] = $override->userid;
              $event = \mod_lesson\event\user_override_deleted::create($params);
          } else {
              $params['other']['groupid'] = $override->groupid;
              $event = \mod_lesson\event\group_override_deleted::create($params);
          }
  
          // Trigger the override deleted event.
          $event->add_record_snapshot('lesson_overrides', $override);
          $event->trigger();
  
          return true;
      }
code: public function delete_override($overrideid) {
          global $CFG, $DB;
  
          require_once($CFG->dirroot . '/calendar/lib.php');
  
          $cm = get_coursemodule_from_instance('lesson', $this->properties->id, $this->properties->course);
  
          $override = $DB->get_record('lesson_overrides', array('id' => $overrideid), '*', MUST_EXIST);
  
          // Delete the events.
          $conds = array('modulename' => 'lesson',
                  'instance' => $this->properties->id);
          if (isset($override->userid)) {
              $conds['userid'] = $override->userid;
          } else {
              $conds['groupid'] = $override->groupid;
          }
          $events = $DB->get_records('event', $conds);
          foreach ($events as $event) {
              $eventold = calendar_event::load($event);
              $eventold->delete();
          }
  
          $DB->delete_records('lesson_overrides', array('id' => $overrideid));
  
          // Set the common parameters for one of the events we will be triggering.
          $params = array(
              'objectid' => $override->id,
              'context' => context_module::instance($cm->id),
              'other' => array(
                  'lessonid' => $override->lessonid
              )
          );
          // Determine which override deleted event to fire.
          if (!empty($override->userid)) {
              $params['relateduserid'] = $override->userid;
              $event = \mod_lesson\event\user_override_deleted::create($params);
          } else {
              $params['other']['groupid'] = $override->groupid;
              $event = \mod_lesson\event\group_override_deleted::create($params);
          }
  
          // Trigger the override deleted event.
          $event->add_record_snapshot('lesson_overrides', $override);
          $event->trigger();
  
          return true;
      }
code_tokens: public function delete_override ( $ overrideid ) { global $ CFG , $ DB ; require_once ( $ CFG -> dirroot . '/calendar/lib.php' ) ; $ cm = get_coursemodule_from_instance ( 'lesson' , $ this -> properties -> id , $ this -> properties -> course ) ; $ override = $ DB -> get_record ( 'lesson_overrides' , array ( 'id' => $ overrideid ) , '*' , MUST_EXIST ) ; // Delete the events. $ conds = array ( 'modulename' => 'lesson' , 'instance' => $ this -> properties -> id ) ; if ( isset ( $ override -> userid ) ) { $ conds [ 'userid' ] = $ override -> userid ; } else { $ conds [ 'groupid' ] = $ override -> groupid ; } $ events = $ DB -> get_records ( 'event' , $ conds ) ; foreach ( $ events as $ event ) { $ eventold = calendar_event :: load ( $ event ) ; $ eventold -> delete ( ) ; } $ DB -> delete_records ( 'lesson_overrides' , array ( 'id' => $ overrideid ) ) ; // Set the common parameters for one of the events we will be triggering. $ params = array ( 'objectid' => $ override -> id , 'context' => context_module :: instance ( $ cm -> id ) , 'other' => array ( 'lessonid' => $ override -> lessonid ) ) ; // Determine which override deleted event to fire. if ( ! empty ( $ override -> userid ) ) { $ params [ 'relateduserid' ] = $ override -> userid ; $ event = \ mod_lesson \ event \ user_override_deleted :: create ( $ params ) ; } else { $ params [ 'other' ] [ 'groupid' ] = $ override -> groupid ; $ event = \ mod_lesson \ event \ group_override_deleted :: create ( $ params ) ; } // Trigger the override deleted event. $ event -> add_record_snapshot ( 'lesson_overrides' , $ override ) ; $ event -> trigger ( ) ; return true ; }
docstring: Deletes a lesson override from the database and clears any corresponding calendar events
  
  @param int $overrideid The id of the override being deleted
  @return bool true on success
docstring_tokens: Deletes a lesson override from the database and clears any corresponding calendar events