1<?php 2/** 3 * Created by PhpStorm. 4 * User: ghi 5 * Date: 12.12.17 6 * Time: 11:58 7 */ 8 9namespace dokuwiki\plugin\bez\mdl; 10 11class TaskFactory extends Factory { 12 protected function select_query() { 13 return "SELECT task.*, task_program.name AS task_program_name 14 FROM task LEFT JOIN task_program ON task.task_program_id = task_program.id"; 15 } 16 17 public function initial_save(Entity $task, $data) { 18 parent::initial_save($task, $data); 19 20 $task->set_data($data); 21 try { 22 $this->beginTransaction(); 23 $this->save($task); 24 25 if ($task->thread) { 26 $task->thread->set_participant_flags($task->assignee, array('subscribent', 'task_assignee')); 27 $task->thread->update_last_activity(); 28 } 29 30 $this->commitTransaction(); 31 } catch(Exception $exception) { 32 $this->rollbackTransaction(); 33 } 34 35 //$task->mail_notify_add(); 36 } 37 38 public function update_save(Entity $task, $data) { 39 parent::update_save($task, $data); 40 41 $task->set_data($data); 42 try { 43 $this->beginTransaction(); 44 $this->save($task); 45 46 if ($task->thread) { 47 } 48 49 $this->commitTransaction(); 50 } catch(Exception $exception) { 51 $this->rollbackTransaction(); 52 } 53 } 54}