xref: /plugin/bez/ctl/task_form.php (revision 04f149d41a7c6906705e80eaa0bcf17c6364c10e)
1aa89e6f8SSzymon Olewniczak<?php
2aa89e6f8SSzymon Olewniczak
3aa89e6f8SSzymon Olewniczak$template['tid'] = isset($nparams['tid']) ? $nparams['tid'] : '-1';
4aa89e6f8SSzymon Olewniczak$template['action'] = isset($nparams['action']) ? $nparams['action'] : '-default';
5aa89e6f8SSzymon Olewniczak
6f2c81100SSzymon Olewniczakif (isset($_POST['tasktype'])) {
7f2c81100SSzymon Olewniczak    $tasktype = $_POST['tasktype'];
8f2c81100SSzymon Olewniczak} else {
9f2c81100SSzymon Olewniczak    $tasktype = $nparams['tasktype'];
10f2c81100SSzymon Olewniczak}
1148ab8737SSzymon Olewniczak$template['tasktype'] = $tasktype;
1248ab8737SSzymon Olewniczak
1348ab8737SSzymon Olewniczaktry {
1448ab8737SSzymon Olewniczak
156271e095SSzymon Olewniczak    $task = $this->model->tasks->create_object(
16f2c81100SSzymon Olewniczak                            array('tasktype' => $tasktype));
176271e095SSzymon Olewniczak    $template['task'] = $task;
18aa89e6f8SSzymon Olewniczak
19f9fa039bSSzymon Olewniczak    //$template['auth_level'] = $task->get_level();
20f9fa039bSSzymon Olewniczak    //$template['user'] = $task->get_user();
2148ab8737SSzymon Olewniczak    $value['tasktype'] = $tasktype;
226271e095SSzymon Olewniczak    $value['executor'] = $this->model->user_nick;
23aa89e6f8SSzymon Olewniczak
24aa89e6f8SSzymon Olewniczak    if (count($_POST) > 0) {
25aa89e6f8SSzymon Olewniczak        //checkboxes
26aa89e6f8SSzymon Olewniczak        if (!isset($_POST['all_day_event'])) {
27aa89e6f8SSzymon Olewniczak            $_POST['all_day_event'] = '0';
28aa89e6f8SSzymon Olewniczak        }
29aa89e6f8SSzymon Olewniczak
30aa89e6f8SSzymon Olewniczak        $task->set_data($_POST);
31*04f149d4SSzymon Olewniczak
32*04f149d4SSzymon Olewniczak        if ($task->issue == '') {
33*04f149d4SSzymon Olewniczak            $task->add_subscribent($task->reporter);
34*04f149d4SSzymon Olewniczak            $task->add_subscribent($task->executor);
35*04f149d4SSzymon Olewniczak        }
36aa89e6f8SSzymon Olewniczak
37aa89e6f8SSzymon Olewniczak        $tid = $this->model->tasks->save($task);
38f7dbc976SSzymon Olewniczak
39aa89e6f8SSzymon Olewniczak
4048ab8737SSzymon Olewniczak        //don't send notification when user binds himself to the task.
4148ab8737SSzymon Olewniczak        if ($task->reporter !== $task->executor) {
428c9d5139SSzymon Olewniczak            $task->mail_notify_add(NULL, array($task->executor),
438c9d5139SSzymon Olewniczak                       array('action' => $bezlang['mail_task_added_programme']));
4448ab8737SSzymon Olewniczak        }
45aa89e6f8SSzymon Olewniczak        header("Location: ?id=bez:task:tid:$tid");
46aa89e6f8SSzymon Olewniczak    } else {
47aa89e6f8SSzymon Olewniczak        if (isset($nparams['duplicate'])) {
48aa89e6f8SSzymon Olewniczak            $tid = (int)$nparams['duplicate'];
49aa89e6f8SSzymon Olewniczak            $task = $this->model->tasks->get_one($tid);
50aa89e6f8SSzymon Olewniczak            $value = $task->get_assoc();
51f2c81100SSzymon Olewniczak        } else {
52f2c81100SSzymon Olewniczak            $value['all_day_event'] = '1';
53aa89e6f8SSzymon Olewniczak        }
54aa89e6f8SSzymon Olewniczak    }
55f7dbc976SSzymon Olewniczak
56f2c81100SSzymon Olewniczak    $template['users'] = $this->model->users->get_all();
57f2c81100SSzymon Olewniczak    $template['tasktypes'] = $this->model->tasktypes->get_all();
58aa89e6f8SSzymon Olewniczak
59aa89e6f8SSzymon Olewniczak} catch (ValidationException $e) {
60aa89e6f8SSzymon Olewniczak	$errors = $e->get_errors();
61aa89e6f8SSzymon Olewniczak	$value = $_POST;
6219440e21SSzymon Olewniczak} catch (DBException $e) {
6319440e21SSzymon Olewniczak    echo nl2br($e);
64f2c81100SSzymon Olewniczak//	header("Location: ?id=bez:tasks");
65aa89e6f8SSzymon Olewniczak}
66aa89e6f8SSzymon Olewniczak
67