xref: /plugin/bez/tpl/threads.php (revision a7028d8f925d727c41ccf12591f4111c9b4e6ae5)
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>
103*a7028d8fSSzymon Olewniczak<?php if ($tpl->action() == 'threads'): ?>
104*a7028d8fSSzymon Olewniczak    <label><?php echo $tpl->getLang('has_causes') ?>:
105*a7028d8fSSzymon Olewniczak        <input type="checkbox" name="has_causes"
106*a7028d8fSSzymon Olewniczak            <?php if ($tpl->value('has_causes') === 'on') echo 'checked="checked"' ?>>
107*a7028d8fSSzymon Olewniczak    </label>
108*a7028d8fSSzymon Olewniczak
109*a7028d8fSSzymon Olewniczak    <label><?php echo $tpl->getLang('has_risks') ?>:
110*a7028d8fSSzymon Olewniczak        <input type="checkbox" name="has_risks"
111*a7028d8fSSzymon Olewniczak            <?php if ($tpl->value('has_risks') === 'on') echo 'checked="checked"' ?>>
112*a7028d8fSSzymon Olewniczak    </label>
113*a7028d8fSSzymon Olewniczak
114*a7028d8fSSzymon Olewniczak    <label><?php echo $tpl->getLang('has_opportunities') ?>:
115*a7028d8fSSzymon Olewniczak        <input type="checkbox" name="has_opportunities"
116*a7028d8fSSzymon Olewniczak            <?php if ($tpl->value('has_opportunities') === 'on') echo 'checked="checked"' ?>>
117*a7028d8fSSzymon Olewniczak    </label>
118*a7028d8fSSzymon Olewniczak<?php endif ?>
119a5de966aSSzymon Olewniczak
120de02284cSSzymon Olewniczak	<label><input type="submit" value="<?php echo $tpl->getLang('filter') ?>" /></label>
121de02284cSSzymon Olewniczak</form>
122de02284cSSzymon Olewniczak</div>
123eb2e6be9SSzymon Olewniczak<?php endif ?>
124eb2e6be9SSzymon Olewniczak
125de02284cSSzymon Olewniczak
126de02284cSSzymon Olewniczak<table class="bez bez_sumarise">
127de02284cSSzymon Olewniczak	<tr>
128de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('id') ?></th>
129de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('state') ?></th>
130addc91eeSSzymon Olewniczak        <?php if ($tpl->action() != 'projects'): ?>
131de02284cSSzymon Olewniczak		    <th><?php echo $tpl->getLang('type') ?></th>
132addc91eeSSzymon Olewniczak        <?php endif ?>
133de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('title')?></th>
134de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('coordinator') ?></th>
135de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('date') ?></th>
136de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('last_mod_date') ?></th>
137de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('closed') ?></th>
138de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('cost') ?></th>
139de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('closed_tasks') ?></th>
140*a7028d8fSSzymon Olewniczak        <?php if ($tpl->action() == 'threads'): ?>
141*a7028d8fSSzymon Olewniczak            <th><?php echo $tpl->getLang('causes') ?></th>
142*a7028d8fSSzymon Olewniczak            <th><?php echo $tpl->getLang('risks') ?></th>
143*a7028d8fSSzymon Olewniczak            <th><?php echo $tpl->getLang('opportunities') ?></th>
144*a7028d8fSSzymon Olewniczak        <?php endif ?>
145de02284cSSzymon Olewniczak	</tr>
146de02284cSSzymon Olewniczak    <?php $count = 0 ?>
147de02284cSSzymon Olewniczak    <?php $total_cost = 0.0 ?>
148*a7028d8fSSzymon Olewniczak    <?php $total_task_closed = 0 ?>
149*a7028d8fSSzymon Olewniczak    <?php $total_task = 0 ?>
150*a7028d8fSSzymon Olewniczak    <?php $total_cause = 0 ?>
151*a7028d8fSSzymon Olewniczak    <?php $total_risk = 0 ?>
152*a7028d8fSSzymon Olewniczak    <?php $total_opportunity = 0 ?>
153de02284cSSzymon Olewniczak	<?php foreach ($tpl->get('threads') as $thread): ?>
15453df74e7SSzymon Olewniczak        <?php if ($thread->acl_of('id') < BEZ_PERMISSION_VIEW) continue ?>
155de02284cSSzymon Olewniczak        <?php $count += 1 ?>
156de02284cSSzymon Olewniczak        <?php $total_cost += (float) $thread->task_sum_cost ?>
157*a7028d8fSSzymon Olewniczak        <?php $total_task_closed += (int) $thread->task_count_closed ?>
158*a7028d8fSSzymon Olewniczak        <?php $total_task += (int) $thread->task_count ?>
159*a7028d8fSSzymon Olewniczak        <?php $total_cause += (int) $thread->cause_count ?>
160*a7028d8fSSzymon Olewniczak        <?php $total_risk += (int) $thread->risk_count ?>
161*a7028d8fSSzymon Olewniczak        <?php $total_opportunity += (int) $thread->opportunity_count ?>
16214a1f0a4SSzymon Olewniczak		<tr class="<?php
16314a1f0a4SSzymon Olewniczak            if ($thread->state == 'opened') {
16414a1f0a4SSzymon Olewniczak                echo 'priority_' . $thread->priority;
1656f380773SSzymon Olewniczak            } elseif ($thread->state == 'proposal') {
1666f380773SSzymon Olewniczak                echo 'priority_';
16753df74e7SSzymon Olewniczak            }
16853df74e7SSzymon Olewniczak        ?>">
169e09b232fSSzymon Olewniczak			<td style="white-space: nowrap">
170e09b232fSSzymon Olewniczak                <a href="<?php echo $tpl->url('thread', 'id', $thread->id) ?>">#<?php echo $thread->id ?></a>
171e09b232fSSzymon Olewniczak                <?php if($thread->private == '1'): ?>
172e09b232fSSzymon Olewniczak                    <?php echo inlineSVG(DOKU_PLUGIN . 'bez/images/lock-small.svg') ?>
173e09b232fSSzymon Olewniczak                <?php endif ?>
174de02284cSSzymon Olewniczak			</td>
175de02284cSSzymon Olewniczak			<td>
176de02284cSSzymon Olewniczak			<?php echo $tpl->getLang('state_'.$thread->state) ?>
177de02284cSSzymon Olewniczak			</td>
178addc91eeSSzymon Olewniczak            <?php if ($tpl->action() != 'projects'): ?>
179de02284cSSzymon Olewniczak                <td>
180fe5d6d1eSSzymon Olewniczak                    <?php if ($thread->label_name === NULL): ?>
181de02284cSSzymon Olewniczak                        <i style="color: #777"><?php echo $tpl->getLang('issue_type_no_specified') ?></i>
182de02284cSSzymon Olewniczak                    <?php else: ?>
183fe5d6d1eSSzymon Olewniczak                        <?php echo $thread->label_name ?>
184de02284cSSzymon Olewniczak                    <?php endif ?>
185de02284cSSzymon Olewniczak                </td>
186addc91eeSSzymon Olewniczak            <?php endif ?>
187de02284cSSzymon Olewniczak			<td><?php echo $thread->title ?></td>
188de02284cSSzymon Olewniczak			<td>
189de02284cSSzymon Olewniczak                <?php if ($thread->coordinator === NULL): ?>
190de02284cSSzymon Olewniczak                    <i style="color: #777"><?php echo $tpl->getLang('none') ?></i>
191de02284cSSzymon Olewniczak                <?php else: ?>
192de02284cSSzymon Olewniczak                    <?php echo $tpl->user_name($thread->coordinator) ?>
193de02284cSSzymon Olewniczak                <?php endif ?>
194de02284cSSzymon Olewniczak            </td>
195de02284cSSzymon Olewniczak            <td>
196ff14b107SSzymon Olewniczak                <?php echo $tpl->date($thread->create_date) ?>
197de02284cSSzymon Olewniczak            </td>
198de02284cSSzymon Olewniczak            <td>
199ff14b107SSzymon Olewniczak                <?php echo $tpl->date($thread->last_activity_date) ?>
200de02284cSSzymon Olewniczak            </td>
201de02284cSSzymon Olewniczak			<td>
202a5de966aSSzymon Olewniczak				<?php if (in_array($thread->state, array('closed', 'rejected'))): ?>
203ff14b107SSzymon Olewniczak                    <?php echo $tpl->date($thread->close_date) ?><br />
204ff14b107SSzymon Olewniczak                    <?php $s = $tpl->getLang('report_priority').': ' .
205038c5d4aSSzymon Olewniczak                        $tpl->date_diff_days($thread->create_date, $thread->close_date, '%a') ?>
206de02284cSSzymon Olewniczak                    <?php echo str_replace(' ', '&nbsp;', $s) ?>
207a5de966aSSzymon Olewniczak				<?php else: ?>
208a5de966aSSzymon Olewniczak                    <em>---</em>
209de02284cSSzymon Olewniczak				<?php endif ?>
210de02284cSSzymon Olewniczak			</td>
211de02284cSSzymon Olewniczak			<td>
212de02284cSSzymon Olewniczak				<?php if ($thread->task_sum_cost === NULL): ?>
213de02284cSSzymon Olewniczak					<em>---</em>
214de02284cSSzymon Olewniczak				<?php else: ?>
215de02284cSSzymon Olewniczak					<?php echo $thread->task_sum_cost ?>
216de02284cSSzymon Olewniczak				<?php endif ?>
217de02284cSSzymon Olewniczak			</td>
218de02284cSSzymon Olewniczak			<td>
21953df74e7SSzymon Olewniczak                <?php echo $thread->task_count_closed ?> / <?php echo $thread->task_count ?>
22053df74e7SSzymon Olewniczak
221de02284cSSzymon Olewniczak			</td>
222*a7028d8fSSzymon Olewniczak            <?php if ($tpl->action() == 'threads'): ?>
223*a7028d8fSSzymon Olewniczak                <td>
224*a7028d8fSSzymon Olewniczak                    <?php echo $thread->cause_count ?>
225*a7028d8fSSzymon Olewniczak                </td>
226*a7028d8fSSzymon Olewniczak                <td>
227*a7028d8fSSzymon Olewniczak                    <?php echo $thread->risk_count ?>
228*a7028d8fSSzymon Olewniczak                </td>
229*a7028d8fSSzymon Olewniczak                <td>
230*a7028d8fSSzymon Olewniczak                    <?php echo $thread->opportunity_count ?>
231*a7028d8fSSzymon Olewniczak                </td>
232*a7028d8fSSzymon Olewniczak            <?php endif ?>
233de02284cSSzymon Olewniczak		</tr>
234de02284cSSzymon Olewniczak	<?php endforeach ?>
235de02284cSSzymon Olewniczak	<tr>
236de02284cSSzymon Olewniczak		<th><?php echo $tpl->getLang('report_total') ?></th>
237*a7028d8fSSzymon Olewniczak		<td colspan="<?php echo $tpl->action() == 'threads' ? '7' : '6' ?>"><?php echo $count ?></td>
238*a7028d8fSSzymon Olewniczak		<td><?php echo $total_cost ?></td>
239*a7028d8fSSzymon Olewniczak        <td><?php echo $total_task_closed.'&nbsp;/&nbsp;'.$total_task ?></td>
240*a7028d8fSSzymon Olewniczak
241*a7028d8fSSzymon Olewniczak        <?php if ($tpl->action() == 'threads'): ?>
242*a7028d8fSSzymon Olewniczak            <td><?php echo $total_cause ?></td>
243*a7028d8fSSzymon Olewniczak            <td><?php echo $total_risk ?></td>
244*a7028d8fSSzymon Olewniczak            <td><?php echo $total_opportunity ?></td>
245*a7028d8fSSzymon Olewniczak        <?php endif ?>
246de02284cSSzymon Olewniczak	</tr>
247de02284cSSzymon Olewniczak</table>
248