1aa89e6f8SSzymon Olewniczak<?php 2aa89e6f8SSzymon Olewniczak 3aa89e6f8SSzymon Olewniczakif (!isset($nparams['tid'])) { 4aa89e6f8SSzymon Olewniczak header('Location: ?id=bez:tasks'); 5aa89e6f8SSzymon Olewniczak} 6aa89e6f8SSzymon Olewniczak$template['tid'] = $nparams['tid']; 7f2c81100SSzymon Olewniczak$template['action'] = isset($nparams['action']) ? $nparams['action'] : '-default'; 8f2c81100SSzymon Olewniczak$template['state'] = isset($nparams['state']) ? $nparams['state'] : '-1'; 9aa89e6f8SSzymon Olewniczaktry { 10aa89e6f8SSzymon Olewniczak $task = $this->model->tasks->get_one($template['tid']); 11aa89e6f8SSzymon Olewniczak $template['task'] = $task; 12aa89e6f8SSzymon Olewniczak 13aa89e6f8SSzymon Olewniczak 14f2c81100SSzymon Olewniczak if ($task->cause !== NULL && $task->cause !== '') { 15f2c81100SSzymon Olewniczak $template['commcause'] = $this->model->commcauses->get_one($task->cause); 16f2c81100SSzymon Olewniczak } 17aa89e6f8SSzymon Olewniczak 18f2c81100SSzymon Olewniczak if ($task->issue !== NULL && $task->issue !== '') { 19f2c81100SSzymon Olewniczak $template['issue'] = $this->model->issues->get_one($task->issue); 20f2c81100SSzymon Olewniczak } 21f2c81100SSzymon Olewniczak 22f2c81100SSzymon Olewniczak 23f2c81100SSzymon Olewniczak if ($template['action'] === 'task_change_state') { 24f2c81100SSzymon Olewniczak if (count($_POST) > 0) { 25aa89e6f8SSzymon Olewniczak $task->set_state(array( 26aa89e6f8SSzymon Olewniczak 'state' => $nparams['state'], 27aa89e6f8SSzymon Olewniczak 'reason' => $_POST['reason']) 28aa89e6f8SSzymon Olewniczak ); 29aa89e6f8SSzymon Olewniczak $this->model->tasks->save($task); 30aa89e6f8SSzymon Olewniczak 31f2c81100SSzymon Olewniczak if (isset($template['issue'])) { 32f2c81100SSzymon Olewniczak $template['issue']->update_last_activity(); 33f2c81100SSzymon Olewniczak $this->model->issues->save($template['issue']); 34f2c81100SSzymon Olewniczak } 35aa89e6f8SSzymon Olewniczak 36aa89e6f8SSzymon Olewniczak $redirect = true; 37f2c81100SSzymon Olewniczak } else { 38f2c81100SSzymon Olewniczak $value = $task->get_assoc(); 39f2c81100SSzymon Olewniczak } 40f2c81100SSzymon Olewniczak } elseif ($template['action'] === 'task_reopen') { 41f2c81100SSzymon Olewniczak $task->set_state(array('state' => '0')); 42f2c81100SSzymon Olewniczak $this->model->tasks->save($task); 43f2c81100SSzymon Olewniczak 44f2c81100SSzymon Olewniczak if (isset($template['issue'])) { 45f2c81100SSzymon Olewniczak $template['issue']->update_last_activity(); 46f2c81100SSzymon Olewniczak $this->model->issues->save($template['issue']); 47aa89e6f8SSzymon Olewniczak } 48aa89e6f8SSzymon Olewniczak 49f2c81100SSzymon Olewniczak $redirect = true; 50f2c81100SSzymon Olewniczak } elseif($template['action'] === 'task_edit') { 51f2c81100SSzymon Olewniczak $template['auth_level'] = $task->get_level(); 52f2c81100SSzymon Olewniczak 53f2c81100SSzymon Olewniczak $template['users'] = $this->model->users->get_all(); 54f2c81100SSzymon Olewniczak $template['tasktypes'] = $this->model->tasktypes->get_all(); 55f2c81100SSzymon Olewniczak 56f2c81100SSzymon Olewniczak if (isset($template['issue'])) { 57f2c81100SSzymon Olewniczak $template['causes'] = $this->model->commcauses->get_all(array( 58f2c81100SSzymon Olewniczak 'issue' => $template['issue']->id, 59f2c81100SSzymon Olewniczak 'type' => array('!=', '0'), 60f2c81100SSzymon Olewniczak )); 61aa89e6f8SSzymon Olewniczak } 62aa89e6f8SSzymon Olewniczak 63f2c81100SSzymon Olewniczak if (count($_POST) > 0) { 64f2c81100SSzymon Olewniczak //checkboxes 65f2c81100SSzymon Olewniczak if (!isset($_POST['all_day_event'])) { 66f2c81100SSzymon Olewniczak $_POST['all_day_event'] = '0'; 67f2c81100SSzymon Olewniczak } 68f2c81100SSzymon Olewniczak $task->set_data($_POST); 69f2c81100SSzymon Olewniczak //for reason 70f2c81100SSzymon Olewniczak $task->set_state($_POST); 71f2c81100SSzymon Olewniczak 72f2c81100SSzymon Olewniczak $this->model->tasks->save($task); 73f2c81100SSzymon Olewniczak //~ $bezcache = new Bezcache(); 74f2c81100SSzymon Olewniczak //~ $bezcache->task_toupdate($task->id); 75f2c81100SSzymon Olewniczak 76f2c81100SSzymon Olewniczak header("Location: ?id=bez:task:tid:".$task->id); 77f2c81100SSzymon Olewniczak } else { 78f2c81100SSzymon Olewniczak $value = $task->get_assoc(); 79f2c81100SSzymon Olewniczak } 80f2c81100SSzymon Olewniczak } 81f2c81100SSzymon Olewniczak 82f2c81100SSzymon Olewniczak if ($redirect) { 83f2c81100SSzymon Olewniczak header("Location: ?id=bez:task:tid:".$template['tid']); 84aa89e6f8SSzymon Olewniczak } 85aa89e6f8SSzymon Olewniczak 86*19440e21SSzymon Olewniczak} catch (DBException $e) { 87*19440e21SSzymon Olewniczak echo nl2br($e); 88aa89e6f8SSzymon Olewniczak} 89aa89e6f8SSzymon Olewniczak 90