xref: /plugin/bez/tpl/threads.php (revision 53d762f7edde87d8d14f183d3c8d71184deb795c)
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
87de02284cSSzymon Olewniczak
88de02284cSSzymon Olewniczak	<label><?php echo $tpl->getLang('year') ?>:
89de02284cSSzymon Olewniczak		<select name="year">
90de02284cSSzymon Olewniczak			<option <?php if ($tpl->value('year') === '-all') echo 'selected' ?>
91de02284cSSzymon Olewniczak				value="-all">--- <?php echo $tpl->getLang('all') ?> ---</option>
92de02284cSSzymon Olewniczak		<?php foreach ($tpl->get('years') as $year): ?>
93de02284cSSzymon Olewniczak			<option <?php if ($tpl->value('year') === $year) echo 'selected' ?>
94de02284cSSzymon Olewniczak				value="<?php echo $year ?>"><?php echo $year ?></option>
95de02284cSSzymon Olewniczak		<?php endforeach ?>
96de02284cSSzymon Olewniczak		</select>
97de02284cSSzymon Olewniczak	</label>
9853df74e7SSzymon Olewniczak
99de02284cSSzymon Olewniczak	<label><?php echo $tpl->getLang('sort_by_open_date') ?>:
100de02284cSSzymon Olewniczak			<input type="checkbox" name="sort_open"
101de02284cSSzymon Olewniczak			<?php if ($tpl->value('sort_open') === 'on') echo 'checked="checked"' ?>>
102de02284cSSzymon Olewniczak	</label>
103a7028d8fSSzymon Olewniczak<?php if ($tpl->action() == 'threads'): ?>
104*53d762f7SSzymon Olewniczak    <label><?php echo $tpl->getLang('has_corrective') ?>:
105*53d762f7SSzymon Olewniczak        <input type="checkbox" name="has_corrective"
106*53d762f7SSzymon Olewniczak            <?php if ($tpl->value('has_corrective') === 'on') echo 'checked="checked"' ?>>
107*53d762f7SSzymon Olewniczak    </label>
108*53d762f7SSzymon Olewniczak    <label><?php echo $tpl->getLang('has_preventive') ?>:
109*53d762f7SSzymon Olewniczak        <input type="checkbox" name="has_preventive"
110*53d762f7SSzymon Olewniczak            <?php if ($tpl->value('has_preventive') === 'on') echo 'checked="checked"' ?>>
111a7028d8fSSzymon Olewniczak    </label>
112a7028d8fSSzymon Olewniczak<?php endif ?>
113a5de966aSSzymon Olewniczak
114de02284cSSzymon Olewniczak	<label><input type="submit" value="<?php echo $tpl->getLang('filter') ?>" /></label>
115de02284cSSzymon Olewniczak</form>
116de02284cSSzymon Olewniczak</div>
117eb2e6be9SSzymon Olewniczak<?php endif ?>
118eb2e6be9SSzymon Olewniczak
119de02284cSSzymon Olewniczak
120de02284cSSzymon Olewniczak<table class="bez bez_sumarise">
121de02284cSSzymon Olewniczak	<tr>
122de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('id') ?></th>
123de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('state') ?></th>
124addc91eeSSzymon Olewniczak        <?php if ($tpl->action() != 'projects'): ?>
125de02284cSSzymon Olewniczak		    <th><?php echo $tpl->getLang('type') ?></th>
126addc91eeSSzymon Olewniczak        <?php endif ?>
127de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('title')?></th>
128de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('coordinator') ?></th>
129de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('date') ?></th>
130de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('last_mod_date') ?></th>
131de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('closed') ?></th>
132de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('cost') ?></th>
133de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('closed_tasks') ?></th>
134a7028d8fSSzymon Olewniczak        <?php if ($tpl->action() == 'threads'): ?>
135*53d762f7SSzymon Olewniczak            <th><?php echo $tpl->getLang('corrective_action_h') ?></th>
136*53d762f7SSzymon Olewniczak            <th><?php echo $tpl->getLang('preventive_action_h') ?></th>
137a7028d8fSSzymon Olewniczak        <?php endif ?>
138de02284cSSzymon Olewniczak	</tr>
139de02284cSSzymon Olewniczak    <?php $count = 0 ?>
140de02284cSSzymon Olewniczak    <?php $total_cost = 0.0 ?>
141a7028d8fSSzymon Olewniczak    <?php $total_task_closed = 0 ?>
142a7028d8fSSzymon Olewniczak    <?php $total_task = 0 ?>
143a7028d8fSSzymon Olewniczak    <?php $total_cause = 0 ?>
144a7028d8fSSzymon Olewniczak    <?php $total_risk = 0 ?>
145a7028d8fSSzymon Olewniczak    <?php $total_opportunity = 0 ?>
146de02284cSSzymon Olewniczak	<?php foreach ($tpl->get('threads') as $thread): ?>
14753df74e7SSzymon Olewniczak        <?php if ($thread->acl_of('id') < BEZ_PERMISSION_VIEW) continue ?>
148de02284cSSzymon Olewniczak        <?php $count += 1 ?>
149de02284cSSzymon Olewniczak        <?php $total_cost += (float) $thread->task_sum_cost ?>
150a7028d8fSSzymon Olewniczak        <?php $total_task_closed += (int) $thread->task_count_closed ?>
151a7028d8fSSzymon Olewniczak        <?php $total_task += (int) $thread->task_count ?>
152*53d762f7SSzymon Olewniczak        <?php $total_corrective += (int) $thread->corrective_count ?>
153*53d762f7SSzymon Olewniczak        <?php $total_preventive += (int) $thread->preventive_count ?>
15414a1f0a4SSzymon Olewniczak		<tr class="<?php
15514a1f0a4SSzymon Olewniczak            if ($thread->state == 'opened') {
15614a1f0a4SSzymon Olewniczak                echo 'priority_' . $thread->priority;
1576f380773SSzymon Olewniczak            } elseif ($thread->state == 'proposal') {
1586f380773SSzymon Olewniczak                echo 'priority_';
15953df74e7SSzymon Olewniczak            }
16053df74e7SSzymon Olewniczak        ?>">
161e09b232fSSzymon Olewniczak			<td style="white-space: nowrap">
162e09b232fSSzymon Olewniczak                <a href="<?php echo $tpl->url('thread', 'id', $thread->id) ?>">#<?php echo $thread->id ?></a>
163e09b232fSSzymon Olewniczak                <?php if($thread->private == '1'): ?>
164e09b232fSSzymon Olewniczak                    <?php echo inlineSVG(DOKU_PLUGIN . 'bez/images/lock-small.svg') ?>
165e09b232fSSzymon Olewniczak                <?php endif ?>
166de02284cSSzymon Olewniczak			</td>
167de02284cSSzymon Olewniczak			<td>
168de02284cSSzymon Olewniczak			<?php echo $tpl->getLang('state_'.$thread->state) ?>
169de02284cSSzymon Olewniczak			</td>
170addc91eeSSzymon Olewniczak            <?php if ($tpl->action() != 'projects'): ?>
171de02284cSSzymon Olewniczak                <td>
172fe5d6d1eSSzymon Olewniczak                    <?php if ($thread->label_name === NULL): ?>
173de02284cSSzymon Olewniczak                        <i style="color: #777"><?php echo $tpl->getLang('issue_type_no_specified') ?></i>
174de02284cSSzymon Olewniczak                    <?php else: ?>
175fe5d6d1eSSzymon Olewniczak                        <?php echo $thread->label_name ?>
176de02284cSSzymon Olewniczak                    <?php endif ?>
177de02284cSSzymon Olewniczak                </td>
178addc91eeSSzymon Olewniczak            <?php endif ?>
179de02284cSSzymon Olewniczak			<td><?php echo $thread->title ?></td>
180de02284cSSzymon Olewniczak			<td>
181de02284cSSzymon Olewniczak                <?php if ($thread->coordinator === NULL): ?>
182de02284cSSzymon Olewniczak                    <i style="color: #777"><?php echo $tpl->getLang('none') ?></i>
183de02284cSSzymon Olewniczak                <?php else: ?>
184de02284cSSzymon Olewniczak                    <?php echo $tpl->user_name($thread->coordinator) ?>
185de02284cSSzymon Olewniczak                <?php endif ?>
186de02284cSSzymon Olewniczak            </td>
187de02284cSSzymon Olewniczak            <td>
188ff14b107SSzymon Olewniczak                <?php echo $tpl->date($thread->create_date) ?>
189de02284cSSzymon Olewniczak            </td>
190de02284cSSzymon Olewniczak            <td>
191ff14b107SSzymon Olewniczak                <?php echo $tpl->date($thread->last_activity_date) ?>
192de02284cSSzymon Olewniczak            </td>
193de02284cSSzymon Olewniczak			<td>
194a5de966aSSzymon Olewniczak				<?php if (in_array($thread->state, array('closed', 'rejected'))): ?>
195ff14b107SSzymon Olewniczak                    <?php echo $tpl->date($thread->close_date) ?><br />
196ff14b107SSzymon Olewniczak                    <?php $s = $tpl->getLang('report_priority').': ' .
197038c5d4aSSzymon Olewniczak                        $tpl->date_diff_days($thread->create_date, $thread->close_date, '%a') ?>
198de02284cSSzymon Olewniczak                    <?php echo str_replace(' ', '&nbsp;', $s) ?>
199a5de966aSSzymon Olewniczak				<?php else: ?>
200a5de966aSSzymon Olewniczak                    <em>---</em>
201de02284cSSzymon Olewniczak				<?php endif ?>
202de02284cSSzymon Olewniczak			</td>
203de02284cSSzymon Olewniczak			<td>
204de02284cSSzymon Olewniczak				<?php if ($thread->task_sum_cost === NULL): ?>
205de02284cSSzymon Olewniczak					<em>---</em>
206de02284cSSzymon Olewniczak				<?php else: ?>
207de02284cSSzymon Olewniczak					<?php echo $thread->task_sum_cost ?>
208de02284cSSzymon Olewniczak				<?php endif ?>
209de02284cSSzymon Olewniczak			</td>
210de02284cSSzymon Olewniczak			<td>
21153df74e7SSzymon Olewniczak                <?php echo $thread->task_count_closed ?> / <?php echo $thread->task_count ?>
21253df74e7SSzymon Olewniczak
213de02284cSSzymon Olewniczak			</td>
214a7028d8fSSzymon Olewniczak            <?php if ($tpl->action() == 'threads'): ?>
215a7028d8fSSzymon Olewniczak                <td>
216*53d762f7SSzymon Olewniczak                   <?php echo $thread->corrective_count ?>
217*53d762f7SSzymon Olewniczak                </td>
218*53d762f7SSzymon Olewniczak                <td>
219*53d762f7SSzymon Olewniczak                    <?php echo $thread->preventive_count ?>
220a7028d8fSSzymon Olewniczak                </td>
221a7028d8fSSzymon Olewniczak            <?php endif ?>
222de02284cSSzymon Olewniczak		</tr>
223de02284cSSzymon Olewniczak	<?php endforeach ?>
224de02284cSSzymon Olewniczak	<tr>
225de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('report_total') ?></th>
226a7028d8fSSzymon Olewniczak		<td colspan="<?php echo $tpl->action() == 'threads' ? '7' : '6' ?>"><?php echo $count ?></td>
227a7028d8fSSzymon Olewniczak		<td><?php echo $total_cost ?></td>
228a7028d8fSSzymon Olewniczak        <td><?php echo $total_task_closed.'&nbsp;/&nbsp;'.$total_task ?></td>
229a7028d8fSSzymon Olewniczak
230a7028d8fSSzymon Olewniczak        <?php if ($tpl->action() == 'threads'): ?>
231*53d762f7SSzymon Olewniczak            <td><?php echo $total_corrective ?></td>
232*53d762f7SSzymon Olewniczak            <td><?php echo $total_preventive ?></td>
233a7028d8fSSzymon Olewniczak        <?php endif ?>
234de02284cSSzymon Olewniczak	</tr>
235de02284cSSzymon Olewniczak</table>
236