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