Ejemplo n.º 1
0
 /**
  * This processes the current stage of the backup
  * @return bool
  */
 public function process()
 {
     if ($this->progress >= self::PROGRESS_PROCESSED) {
         throw new backup_ui_exception('backupuialreadyprocessed');
     }
     $this->progress = self::PROGRESS_PROCESSED;
     if (optional_param('previous', false, PARAM_BOOL) && $this->stage->get_stage() > $this->get_first_stage_id()) {
         $this->stage = $this->initialise_stage($this->stage->get_prev_stage(), $this->stage->get_params());
         return false;
     }
     // Process the stage
     $processoutcome = $this->stage->process();
     if ($processoutcome !== false) {
         $this->stage = $this->initialise_stage($this->stage->get_next_stage(), $this->stage->get_params());
     }
     // Process UI event after to check changes are valid
     $this->controller->process_ui_event();
     return $processoutcome;
 }