xref: /plugin/bez/ctl/task_form.php (revision 69c6de4bf5f70096a2b761cbfef7f1ff6b7df5ec)
1<?php
2include_once DOKU_PLUGIN."bez/models/issues.php";
3include_once DOKU_PLUGIN."bez/models/tasks.php";
4include_once DOKU_PLUGIN."bez/models/causes.php";
5include_once DOKU_PLUGIN."bez/models/users.php";
6
7$tasko = new Tasks();
8$causo = new Causes();
9$usro = new Users();
10
11$issue_id = (int)$params[1];
12
13/*casue*/
14$cause_id = '';
15if (isset($nparams[cid]) && $nparams[cid] != '') {
16	$cause_id = (int)$nparams[cid];
17	$template['cause'] = $causo->join($causo->getone($cause_id));
18}
19
20/*edycja*/
21if (isset($nparams[tid])) {
22	$action = $nparams[action];
23	$tid = (int)$nparams[tid];
24
25	if (!$action)
26		$action = 'edit';
27
28	if ($action == 'edit')
29		$value = $tasko->getone($tid);
30	else if ($action == 'update') {
31		$data = $tasko->update($_POST, array(), $tid);
32		if (count($errors) == 0) {
33
34			$title = 'Zmiana w zadaniu';
35			$exec = $data['executor'];
36			$subject = "[$conf[title]] $title: #$issue_id #z$tid";
37			$to = $usro->name($exec).' <'.$usro->email($exec).'>';
38			$body = "$uri?id=".$this->id('issue_task', 'id', $issue_id, 'tid', $tid);
39			$this->helper->mail($to, $subject, $body);
40
41			if ($cause_id == '')
42				header("Location: ?id=bez:issue_task:id:$issue_id:tid:$tid");
43			else
44				header("Location: ?id=bez:issue_cause_task:id:$issue_id:cid:$cause_id:tid:$tid");
45		}
46		$value = $_POST;
47	}
48	$template['task_button'] = $bezlang['change_task_button'];
49	$template['task_action'] = $this->id('task_form', 'id', $issue_id,
50										 'cid', $cause_id, 'tid', $tid, 'action', 'update');
51/*dodawania*/
52} else {
53	if (count($_POST) > 0) {
54		$data = array('reporter' => $INFO['client'], 'date' => time(), 'issue' => $issue_id, 'cause' => $cause_id);
55		$data = $tasko->add($_POST, $data);
56		if (count($errors) == 0) {
57			$tid = $tasko->lastid();
58
59			$title = 'Dodano zadanie';
60			$exec = $data['executor'];
61			$subject = "[$conf[title]] $title: #$issue_id #z$tid";
62			$to = $usro->name($exec).' <'.$usro->email($exec).'>';
63			$body = "$uri?id=".$this->id('issue_task', 'id', $issue_id, 'tid', $tid);
64			$this->helper->mail($to, $subject, $body);
65
66			if ($cause_id == '')
67				header("Location: ?id=bez:issue_task:id:$issue_id:tid:$tid");
68			else
69				header("Location: ?id=bez:issue_cause_task:id:$issue_id:cid:$cause_id:tid:$tid");
70		}
71		$value = $_POST;
72	}
73	$template['task_button'] = $bezlang['add'];
74	$template['task_action'] = $this->id('task_form', 'id', $issue_id, 'cid', $cause_id, 'action', 'add');
75}
76
77$isso = new Issues();
78$template['issue'] = $isso->get($issue_id);
79
80$template['users'] = $usro->get();
81
82$taskso = new Taskstates();
83$template['task_states'] = $taskso->get();
84
85