xref: /plugin/bez/tpl/threads.php (revision 960c3ed9b4f91fb6e11f49224f96fc82d135bb4e)
1de02284cSSzymon Olewniczak<?php /* @var \dokuwiki\plugin\bez\meta\Tpl $tpl */ ?>
2e8827d73SSzymon Olewniczak
3eb2e6be9SSzymon Olewniczak<?php if (!$tpl->get('no_filters', false)): ?>
4eb2e6be9SSzymon Olewniczak
5a0cd8c78SSzymon Olewniczak<?php if ($tpl->factory('thread')->permission() >= BEZ_TABLE_PERMISSION_INSERT): ?>
653df74e7SSzymon Olewniczak    <a href="<?php echo $tpl->url('thread_report', 'type', $tpl->action() == 'projects' ? 'project' : 'issue') ?>" class="bez_start_button" id="bez_report_issue_button">
753df74e7SSzymon Olewniczak        <?php echo $tpl->getLang('report_' . $tpl->action()) ?>
8e8827d73SSzymon Olewniczak    </a>
9e8827d73SSzymon Olewniczak<?php endif ?>
10e8827d73SSzymon Olewniczak
11e8827d73SSzymon Olewniczak<br /><br />
12e8827d73SSzymon Olewniczak
13de02284cSSzymon Olewniczak<div class="bez_filter_form">
14addc91eeSSzymon Olewniczak<form action="<?php echo $tpl->url($tpl->action()) ?>" method="post">
1553df74e7SSzymon Olewniczak
1653df74e7SSzymon Olewniczak    <label><?php echo $tpl->getLang('reporter') ?>:
1753df74e7SSzymon Olewniczak        <select name="original_poster">
1853df74e7SSzymon Olewniczak            <option <?php if ($tpl->value('original_poster') == '-all') echo 'selected' ?>
1953df74e7SSzymon Olewniczak                    value="-all">--- <?php echo $tpl->getLang('all') ?> ---</option>
2053df74e7SSzymon Olewniczak            <optgroup label="<?php echo $tpl->getLang('users') ?>">
2153df74e7SSzymon Olewniczak                <?php foreach ($tpl->get('users') as $nick => $name): ?>
2253df74e7SSzymon Olewniczak                    <option <?php if ($tpl->value('original_poster') == $nick) echo 'selected' ?>
2353df74e7SSzymon Olewniczak                            value="<?php echo $nick ?>"><?php echo $name ?></option>
2453df74e7SSzymon Olewniczak                <?php endforeach ?>
2553df74e7SSzymon Olewniczak            </optgroup>
2653df74e7SSzymon Olewniczak            <optgroup label="<?php echo $tpl->getLang('groups') ?>">
2753df74e7SSzymon Olewniczak                <?php foreach ($tpl->get('groups') as $name): ?>
2853df74e7SSzymon Olewniczak                    <?php $group = "@$name" ?>
2953df74e7SSzymon Olewniczak                    <option <?php if ($tpl->value('original_poster') == $group) echo 'selected' ?>
3053df74e7SSzymon Olewniczak                            value="<?php echo $group ?>"><?php echo $group ?></option>
3153df74e7SSzymon Olewniczak                <?php endforeach ?>
3253df74e7SSzymon Olewniczak            </optgroup>
3353df74e7SSzymon Olewniczak        </select>
3453df74e7SSzymon Olewniczak    </label>
3553df74e7SSzymon Olewniczak
36de02284cSSzymon Olewniczak	<label><?php echo $tpl->getLang('state') ?>:
37de02284cSSzymon Olewniczak		<select name="state">
38de02284cSSzymon Olewniczak			<option <?php if ($tpl->value('state') === '-all') echo 'selected' ?>
39bf67f2caSSzymon Olewniczak				value="-all">--- <?php echo $tpl->getLang('all_not_rejected') ?> ---</option>
40de02284cSSzymon Olewniczak		<?php foreach (\dokuwiki\plugin\bez\mdl\Thread::get_states() as $state): ?>
41de02284cSSzymon Olewniczak			<option <?php if ($tpl->value('state') === $state) echo 'selected' ?>
42de02284cSSzymon Olewniczak				value="<?php echo $state ?>"><?php echo $tpl->getLang('state_' . $state) ?></option>
43de02284cSSzymon Olewniczak		<?php endforeach ?>
44de02284cSSzymon Olewniczak		</select>
45de02284cSSzymon Olewniczak	</label>
46addc91eeSSzymon Olewniczak    <?php if ($tpl->action() != 'projects'): ?>
47de02284cSSzymon Olewniczak        <label><?php echo $tpl->getLang('just_type') ?>:
48fe5d6d1eSSzymon Olewniczak            <select name="label_id">
49fe5d6d1eSSzymon Olewniczak                <option <?php if ($tpl->value('label_id') === '-all') echo 'selected' ?>
50de02284cSSzymon Olewniczak                    value="-all">--- <?php echo $tpl->getLang('all') ?> ---</option>
51fe5d6d1eSSzymon Olewniczak                <option <?php if ($tpl->value('label_id') === '-none') echo 'selected' ?>
52de02284cSSzymon Olewniczak                value="-none">--- <?php echo $tpl->getLang('issue_type_no_specified') ?> ---</option>
53de02284cSSzymon Olewniczak            <?php foreach ($tpl->get('labels') as $label): ?>
54fe5d6d1eSSzymon Olewniczak                <option <?php if ($tpl->value('label_id') === $label->id) echo 'selected' ?>
55de02284cSSzymon Olewniczak                    value="<?php echo $label->id ?>"><?php echo $label->name ?></option>
56de02284cSSzymon Olewniczak            <?php endforeach ?>
57de02284cSSzymon Olewniczak            </select>
58de02284cSSzymon Olewniczak        </label>
59addc91eeSSzymon Olewniczak    <?php endif ?>
60de02284cSSzymon Olewniczak
61de02284cSSzymon Olewniczak	<label><?php echo $tpl->getLang('coordinator') ?>:
62de02284cSSzymon Olewniczak		<select name="coordinator">
63de02284cSSzymon Olewniczak			<option <?php if ($tpl->value('coordinator') === '-all') echo 'selected' ?>
64de02284cSSzymon Olewniczak				value="-all">--- <?php echo $tpl->getLang('all') ?> ---</option>
65de02284cSSzymon Olewniczak			<option <?php if ($tpl->value('coordinator') === '-none') echo 'selected' ?>
66de02284cSSzymon Olewniczak				value="-none">--- <?php echo $tpl->getLang('none') ?> ---</option>
67de02284cSSzymon Olewniczak		<optgroup label="<?php echo $tpl->getLang('users') ?>">
68de02284cSSzymon Olewniczak			<?php foreach ($tpl->get('users') as $nick => $name): ?>
69de02284cSSzymon Olewniczak				<option <?php if ($tpl->value('coordinator') === $nick) echo 'selected' ?>
70de02284cSSzymon Olewniczak					value="<?php echo $nick ?>"><?php echo $name ?></option>
71de02284cSSzymon Olewniczak			<?php endforeach ?>
72de02284cSSzymon Olewniczak	</optgroup>
73de02284cSSzymon Olewniczak	<optgroup label="<?php echo $tpl->getLang('groups') ?>">
74de02284cSSzymon Olewniczak		<?php foreach ($tpl->get('groups') as $name): ?>
75de02284cSSzymon Olewniczak			<?php $group = "@$name" ?>
76de02284cSSzymon Olewniczak			<option <?php if ($tpl->value('coordinator') === $group) echo 'selected' ?>
77de02284cSSzymon Olewniczak				value="<?php echo $group ?>"><?php echo $group ?></option>
78de02284cSSzymon Olewniczak		<?php endforeach ?>
79de02284cSSzymon Olewniczak	</optgroup>
80de02284cSSzymon Olewniczak	</select>
81de02284cSSzymon Olewniczak	</label>
82de02284cSSzymon Olewniczak
83de02284cSSzymon Olewniczak	<label><?php echo $tpl->getLang('title') ?>:
84de02284cSSzymon Olewniczak		<input name="title" value="<?php echo $tpl->value('title') ?>" />
85de02284cSSzymon Olewniczak	</label>
86de02284cSSzymon Olewniczak
877980d9bdSSzymon Olewniczak    <label><?php echo $tpl->getLang('content') ?>:
887980d9bdSSzymon Olewniczak        <input name="content" value="<?php echo $tpl->value('content') ?>" />
897980d9bdSSzymon Olewniczak    </label>
90de02284cSSzymon Olewniczak
91de02284cSSzymon Olewniczak	<label><?php echo $tpl->getLang('year') ?>:
92de02284cSSzymon Olewniczak		<select name="year">
93de02284cSSzymon Olewniczak			<option <?php if ($tpl->value('year') === '-all') echo 'selected' ?>
94de02284cSSzymon Olewniczak				value="-all">--- <?php echo $tpl->getLang('all') ?> ---</option>
95de02284cSSzymon Olewniczak		<?php foreach ($tpl->get('years') as $year): ?>
96de02284cSSzymon Olewniczak			<option <?php if ($tpl->value('year') === $year) echo 'selected' ?>
97de02284cSSzymon Olewniczak				value="<?php echo $year ?>"><?php echo $year ?></option>
98de02284cSSzymon Olewniczak		<?php endforeach ?>
99de02284cSSzymon Olewniczak		</select>
100de02284cSSzymon Olewniczak	</label>
10153df74e7SSzymon Olewniczak
102de02284cSSzymon Olewniczak	<label><?php echo $tpl->getLang('sort_by_open_date') ?>:
103de02284cSSzymon Olewniczak			<input type="checkbox" name="sort_open"
104de02284cSSzymon Olewniczak			<?php if ($tpl->value('sort_open') === 'on') echo 'checked="checked"' ?>>
105de02284cSSzymon Olewniczak	</label>
106*960c3ed9SSzymon Olewniczak<?php if ($tpl->action() != 'projects'): ?>
10753d762f7SSzymon Olewniczak    <label><?php echo $tpl->getLang('has_corrective') ?>:
10853d762f7SSzymon Olewniczak        <input type="checkbox" name="has_corrective"
10953d762f7SSzymon Olewniczak            <?php if ($tpl->value('has_corrective') === 'on') echo 'checked="checked"' ?>>
11053d762f7SSzymon Olewniczak    </label>
11153d762f7SSzymon Olewniczak    <label><?php echo $tpl->getLang('has_preventive') ?>:
11253d762f7SSzymon Olewniczak        <input type="checkbox" name="has_preventive"
11353d762f7SSzymon Olewniczak            <?php if ($tpl->value('has_preventive') === 'on') echo 'checked="checked"' ?>>
114a7028d8fSSzymon Olewniczak    </label>
115a7028d8fSSzymon Olewniczak<?php endif ?>
116a5de966aSSzymon Olewniczak
117de02284cSSzymon Olewniczak	<label><input type="submit" value="<?php echo $tpl->getLang('filter') ?>" /></label>
118de02284cSSzymon Olewniczak</form>
119de02284cSSzymon Olewniczak</div>
120eb2e6be9SSzymon Olewniczak<?php endif ?>
121eb2e6be9SSzymon Olewniczak
122de02284cSSzymon Olewniczak
123de02284cSSzymon Olewniczak<table class="bez bez_sumarise">
124de02284cSSzymon Olewniczak	<tr>
125de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('id') ?></th>
126de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('state') ?></th>
127addc91eeSSzymon Olewniczak        <?php if ($tpl->action() != 'projects'): ?>
128de02284cSSzymon Olewniczak		    <th><?php echo $tpl->getLang('type') ?></th>
129addc91eeSSzymon Olewniczak        <?php endif ?>
130de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('title')?></th>
131de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('coordinator') ?></th>
132de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('date') ?></th>
133de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('last_mod_date') ?></th>
134de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('closed') ?></th>
135de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('cost') ?></th>
136de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('closed_tasks') ?></th>
137*960c3ed9SSzymon Olewniczak        <?php if ($tpl->action() != 'projects'): ?>
13853d762f7SSzymon Olewniczak            <th><?php echo $tpl->getLang('corrective_action_h') ?></th>
13953d762f7SSzymon Olewniczak            <th><?php echo $tpl->getLang('preventive_action_h') ?></th>
140a7028d8fSSzymon Olewniczak        <?php endif ?>
141de02284cSSzymon Olewniczak	</tr>
142de02284cSSzymon Olewniczak    <?php $count = 0 ?>
143de02284cSSzymon Olewniczak    <?php $total_cost = 0.0 ?>
144a7028d8fSSzymon Olewniczak    <?php $total_task_closed = 0 ?>
145a7028d8fSSzymon Olewniczak    <?php $total_task = 0 ?>
146a7028d8fSSzymon Olewniczak    <?php $total_cause = 0 ?>
147a7028d8fSSzymon Olewniczak    <?php $total_risk = 0 ?>
148a7028d8fSSzymon Olewniczak    <?php $total_opportunity = 0 ?>
149de02284cSSzymon Olewniczak	<?php foreach ($tpl->get('threads') as $thread): ?>
15053df74e7SSzymon Olewniczak        <?php if ($thread->acl_of('id') < BEZ_PERMISSION_VIEW) continue ?>
151de02284cSSzymon Olewniczak        <?php $count += 1 ?>
152de02284cSSzymon Olewniczak        <?php $total_cost += (float) $thread->task_sum_cost ?>
153a7028d8fSSzymon Olewniczak        <?php $total_task_closed += (int) $thread->task_count_closed ?>
154a7028d8fSSzymon Olewniczak        <?php $total_task += (int) $thread->task_count ?>
15553d762f7SSzymon Olewniczak        <?php $total_corrective += (int) $thread->corrective_count ?>
15653d762f7SSzymon Olewniczak        <?php $total_preventive += (int) $thread->preventive_count ?>
15714a1f0a4SSzymon Olewniczak		<tr class="<?php
15814a1f0a4SSzymon Olewniczak            if ($thread->state == 'opened') {
15914a1f0a4SSzymon Olewniczak                echo 'priority_' . $thread->priority;
1606f380773SSzymon Olewniczak            } elseif ($thread->state == 'proposal') {
1616f380773SSzymon Olewniczak                echo 'priority_';
16253df74e7SSzymon Olewniczak            }
16353df74e7SSzymon Olewniczak        ?>">
164e09b232fSSzymon Olewniczak			<td style="white-space: nowrap">
165e09b232fSSzymon Olewniczak                <a href="<?php echo $tpl->url('thread', 'id', $thread->id) ?>">#<?php echo $thread->id ?></a>
166e09b232fSSzymon Olewniczak                <?php if($thread->private == '1'): ?>
167e09b232fSSzymon Olewniczak                    <?php echo inlineSVG(DOKU_PLUGIN . 'bez/images/lock-small.svg') ?>
168e09b232fSSzymon Olewniczak                <?php endif ?>
169de02284cSSzymon Olewniczak			</td>
170de02284cSSzymon Olewniczak			<td>
171de02284cSSzymon Olewniczak			<?php echo $tpl->getLang('state_'.$thread->state) ?>
172de02284cSSzymon Olewniczak			</td>
173addc91eeSSzymon Olewniczak            <?php if ($tpl->action() != 'projects'): ?>
174de02284cSSzymon Olewniczak                <td>
175fe5d6d1eSSzymon Olewniczak                    <?php if ($thread->label_name === NULL): ?>
176de02284cSSzymon Olewniczak                        <i style="color: #777"><?php echo $tpl->getLang('issue_type_no_specified') ?></i>
177de02284cSSzymon Olewniczak                    <?php else: ?>
178fe5d6d1eSSzymon Olewniczak                        <?php echo $thread->label_name ?>
179de02284cSSzymon Olewniczak                    <?php endif ?>
180de02284cSSzymon Olewniczak                </td>
181addc91eeSSzymon Olewniczak            <?php endif ?>
182de02284cSSzymon Olewniczak			<td><?php echo $thread->title ?></td>
183de02284cSSzymon Olewniczak			<td>
184de02284cSSzymon Olewniczak                <?php if ($thread->coordinator === NULL): ?>
185de02284cSSzymon Olewniczak                    <i style="color: #777"><?php echo $tpl->getLang('none') ?></i>
186de02284cSSzymon Olewniczak                <?php else: ?>
187de02284cSSzymon Olewniczak                    <?php echo $tpl->user_name($thread->coordinator) ?>
188de02284cSSzymon Olewniczak                <?php endif ?>
189de02284cSSzymon Olewniczak            </td>
190de02284cSSzymon Olewniczak            <td>
191ff14b107SSzymon Olewniczak                <?php echo $tpl->date($thread->create_date) ?>
192de02284cSSzymon Olewniczak            </td>
193de02284cSSzymon Olewniczak            <td>
194ff14b107SSzymon Olewniczak                <?php echo $tpl->date($thread->last_activity_date) ?>
195de02284cSSzymon Olewniczak            </td>
196de02284cSSzymon Olewniczak			<td>
197a5de966aSSzymon Olewniczak				<?php if (in_array($thread->state, array('closed', 'rejected'))): ?>
198ff14b107SSzymon Olewniczak                    <?php echo $tpl->date($thread->close_date) ?><br />
199ff14b107SSzymon Olewniczak                    <?php $s = $tpl->getLang('report_priority').': ' .
200038c5d4aSSzymon Olewniczak                        $tpl->date_diff_days($thread->create_date, $thread->close_date, '%a') ?>
201de02284cSSzymon Olewniczak                    <?php echo str_replace(' ', '&nbsp;', $s) ?>
202a5de966aSSzymon Olewniczak				<?php else: ?>
203a5de966aSSzymon Olewniczak                    <em>---</em>
204de02284cSSzymon Olewniczak				<?php endif ?>
205de02284cSSzymon Olewniczak			</td>
206de02284cSSzymon Olewniczak			<td>
207de02284cSSzymon Olewniczak				<?php if ($thread->task_sum_cost === NULL): ?>
208de02284cSSzymon Olewniczak					<em>---</em>
209de02284cSSzymon Olewniczak				<?php else: ?>
210de02284cSSzymon Olewniczak					<?php echo $thread->task_sum_cost ?>
211de02284cSSzymon Olewniczak				<?php endif ?>
212de02284cSSzymon Olewniczak			</td>
213de02284cSSzymon Olewniczak			<td>
21453df74e7SSzymon Olewniczak                <?php echo $thread->task_count_closed ?> / <?php echo $thread->task_count ?>
21553df74e7SSzymon Olewniczak
216de02284cSSzymon Olewniczak			</td>
217*960c3ed9SSzymon Olewniczak            <?php if ($tpl->action() != 'projects'): ?>
218a7028d8fSSzymon Olewniczak                <td>
21953d762f7SSzymon Olewniczak                   <?php echo $thread->corrective_count ?>
22053d762f7SSzymon Olewniczak                </td>
22153d762f7SSzymon Olewniczak                <td>
22253d762f7SSzymon Olewniczak                    <?php echo $thread->preventive_count ?>
223a7028d8fSSzymon Olewniczak                </td>
224a7028d8fSSzymon Olewniczak            <?php endif ?>
225de02284cSSzymon Olewniczak		</tr>
226de02284cSSzymon Olewniczak	<?php endforeach ?>
227de02284cSSzymon Olewniczak	<tr>
228de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('report_total') ?></th>
229*960c3ed9SSzymon Olewniczak		<td colspan="<?php echo $tpl->action() != 'projects' ? '7' : '6' ?>"><?php echo $count ?></td>
230a7028d8fSSzymon Olewniczak		<td><?php echo $total_cost ?></td>
231a7028d8fSSzymon Olewniczak        <td><?php echo $total_task_closed.'&nbsp;/&nbsp;'.$total_task ?></td>
232a7028d8fSSzymon Olewniczak
233*960c3ed9SSzymon Olewniczak        <?php if ($tpl->action() != 'projects'): ?>
23453d762f7SSzymon Olewniczak            <td><?php echo $total_corrective ?></td>
23553d762f7SSzymon Olewniczak            <td><?php echo $total_preventive ?></td>
236a7028d8fSSzymon Olewniczak        <?php endif ?>
237de02284cSSzymon Olewniczak	</tr>
238de02284cSSzymon Olewniczak</table>
239