1<?php if(isset($update_error)): ?>
2<div id="updatemsg">
3	<span class="bad"> {L('updatewrong')}</span>
4	<a href="?hideupdatemsg=yep">{L('hidemessage')}</a>
5</div>
6<?php endif; ?>
7
8<?php if(isset($updatemsg)): ?>
9<div id="updatemsg">
10    <a href="http://flyspray.org/">{L('updatefs')}</a> {L('currentversion')}
11    <span class="bad">{$fs->version}</span> {L('latestversion')} <span class="good">{$_SESSION['latest_version']}</span>.
12    <a href="?hideupdatemsg=yep">{L('hidemessage')}</a>
13</div>
14<?php endif; ?>
15
16<?php if (!($user->isAnon() && count($fs->projects) == 0)): ?>
17<div id="search">
18  <map id="projectsearchform" name="projectsearchform">
19    <form action="{$baseurl}index.php" method="get">
20      <div>
21        <button id="searchthisproject" type="submit">{L('searchthisproject')}</button>
22        <input class="text" id="searchtext" name="string" type="text" size="20"
23               maxlength="100" value="{Get::val('string')}" accesskey="q" />
24
25        <input type="hidden" name="project" value="{Get::num('project', $proj->id)}" />
26        <?php if (!$user->isAnon()): ?>
27        <span class="save_search"><label for="save_search" id="lblsaveas">{L('saveas')}</label>
28        <input class="text" type="text" value="{Get::val('search_name')}" id="save_search" name="search_name" size="15" />
29        &nbsp;<button onclick="savesearch('{!Filters::escapeqs($_SERVER['QUERY_STRING'])}', '{#$baseurl}', '{L('saving')}')" type="button">{L('OK')}</button>
30        </span>
31        <?php endif; ?>
32
33        <span id="searchstate" style="cursor:pointer">
34        <a onclick="toggleSearchBox('{#$this->themeUrl()}');return false;" href="{CreateUrl('project', $proj->id, null, array_merge($_GET, array('toggleadvanced' => 1)))}"><span id="advancedsearchstate" class="showstate">
35        <img id="advancedsearchstateimg" src="<?php echo (Cookie::val('advancedsearch')) ? $this->get_image('edit_remove') : $this->get_image('edit_add'); ?>"
36             alt="<?php echo (Cookie::val('advancedsearch')) ? '-' : '+'; ?>" width="16" height="16" />
37        </span>{L('advanced')}</a>
38        </span>
39
40        <div id="sc2" class="switchcontent" <?php if (!Cookie::val('advancedsearch')):?>style="display:none;"<?php endif; ?> >
41        <fieldset><legend>{L('miscellaneous')}</legend>
42        {!tpl_checkbox('search_in_comments', Get::has('search_in_comments'), 'sic')}
43        <label class="left" for="sic">{L('searchcomments')}</label>
44
45        {!tpl_checkbox('search_in_details', Get::has('search_in_details'), 'search_in_details')}
46        <label class="left" for="search_in_details">{L('searchindetails')}</label>
47
48        {!tpl_checkbox('search_for_all', Get::has('search_for_all'), 'sfa')}
49        <label class="left" for="sfa">{L('searchforall')}</label>
50
51        {!tpl_checkbox('only_watched', Get::has('only_watched'), 'only_watched')}
52        <label class="left" for="only_watched">{L('taskswatched')}</label>
53
54        {!tpl_checkbox('only_primary', Get::has('only_primary'), 'only_primary')}
55        <label class="left" for="only_primary">{L('onlyprimary')}</label>
56
57        {!tpl_checkbox('has_attachment', Get::has('has_attachment'), 'has_attachment')}
58        <label class="left" for="has_attachment">{L('hasattachment')}</label>
59
60        </fieldset>
61
62        <fieldset><legend>{L('taskproperties')}</legend>
63
64        <div class="search_select">
65        <label class="default multisel" for="type">{L('tasktype')}</label>
66        <select name="type[]" id="type" multiple="multiple" size="5">
67          {!tpl_options(array('' => L('alltasktypes')) + $proj->listTaskTypes(), Get::val('type', ''))}
68        </select>
69        </div>
70
71        <div class="search_select">
72        <label class="default multisel" for="sev">{L('severity')}</label>
73        <select name="sev[]" id="sev" multiple="multiple" size="5">
74          {!tpl_options(array('' => L('allseverities')) + $fs->severities, Get::val('sev', ''))}
75        </select>
76        </div>
77
78        <div class="search_select">
79        <label class="default multisel" for="pri">{L('priority')}</label>
80        <select name="pri[]" id="pri" multiple="multiple" size="5">
81          {!tpl_options(array('' => L('allpriorities')) + $fs->priorities, Get::val('pri', ''))}
82        </select>
83        </div>
84
85        <div class="search_select">
86        <label class="default multisel" for="due">{L('dueversion')}</label>
87        <select name="due[]" id="due" multiple="multiple" size="5">
88          {!tpl_options(array_merge(array('' => L('dueanyversion'), 0 => L('unassigned')), $proj->listVersions(false)), Get::val('due', ''))}
89        </select>
90        </div>
91
92        <div class="search_select">
93        <label class="default multisel" for="reported">{L('reportedversion')}</label>
94        <select name="reported[]" id="reported" multiple="multiple" size="5">
95          {!tpl_options(array('' => L('anyversion')) + $proj->listVersions(false), Get::val('reported', ''))}
96        </select>
97        </div>
98
99        <div class="search_select">
100        <label class="default multisel" for="cat">{L('category')}</label>
101        <select name="cat[]" id="cat" multiple="multiple" size="5">
102          {!tpl_options(array('' => L('allcategories')) + $proj->listCategories(), Get::val('cat', ''))}
103        </select>
104        </div>
105
106        <div class="search_select">
107        <label class="default multisel" for="status">{L('status')}</label>
108        <select name="status[]" id="status" multiple="multiple" size="5">
109          {!tpl_options(array('' => L('allstatuses')) +
110                        array('open' => L('allopentasks')) +
111                        array('closed' => L('allclosedtasks')) +
112                        $proj->listTaskStatuses(), Get::val('status', 'open'))}
113        </select>
114        </div>
115
116        <div class="search_select">
117        <label class="default multisel" for="percent">{L('percentcomplete')}</label>
118        <select name="percent[]" id="percent" multiple="multiple" size="5">
119          <?php $percentages = array(); for ($i = 0; $i <= 100; $i += 10) $percentages[$i] = $i; ?>
120          {!tpl_options(array('' => L('anyprogress')) + $percentages, Get::val('percent', ''))}
121        </select>
122        </div>
123        <div class="clear"></div>
124        </fieldset>
125
126        <fieldset><legend>{L('users')}</legend>
127        <label class="default multisel" for="opened">{L('openedby')}</label>
128        {!tpl_userselect('opened', Get::val('opened'), 'opened')}
129
130        <label class="default multisel" for="dev">{L('assignedto')}</label>
131        {!tpl_userselect('dev', Get::val('dev'), 'dev')}
132
133        <label class="default multisel" for="closed">{L('closedby')}</label>
134        {!tpl_userselect('closed', Get::val('closed'), 'closed')}
135
136        </fieldset>
137
138        <fieldset><legend>{L('dates')}</legend>
139        <div class="dateselect">
140          {!tpl_datepicker('duedatefrom', L('selectduedatefrom'))}
141          {!tpl_datepicker('duedateto', L('selectduedateto'))}
142        </div>
143
144        <div class="dateselect">
145          {!tpl_datepicker('changedfrom', L('selectsincedatefrom'))}
146          {!tpl_datepicker('changedto', L('selectsincedateto'))}
147        </div>
148
149        <div class="dateselect">
150          {!tpl_datepicker('openedfrom', L('selectopenedfrom'))}
151          {!tpl_datepicker('openedto', L('selectopenedto'))}
152        </div>
153
154        <div class="dateselect">
155          {!tpl_datepicker('closedfrom', L('selectclosedfrom'))}
156          {!tpl_datepicker('closedto', L('selectclosedto'))}
157        </div>
158        </fieldset>
159
160       </div>
161       <input type="hidden" name="do" value="index" />
162      </div>
163    </form>
164  </map>
165</div>
166<?php endif; ?>
167
168<div id="tasklist">
169  <form action="{CreateURL('project', $proj->id, null, array('do' => 'index'))}" id="massops" method="post">
170    <div>
171      <table id="tasklist_table">
172        <thead>
173          <tr>
174            <th class="caret">
175            </th>
176            <?php if (!$user->isAnon()): ?>
177            <th class="ttcolumn">
178                <?php if (!$user->isAnon() && $total): ?>
179                <a href="javascript:ToggleSelected('massops')">
180                  <img alt="{L('toggleselected')}" title="{L('toggleselected')}" src="{$this->get_image('kaboodleloop')}" width="16" height="16" />
181                </a>
182                <?php endif; ?>
183            </th>
184            <?php endif; ?>
185            <?php foreach ($visible as $col): ?>
186            {!tpl_list_heading($col, "<th%s>%s</th>")}
187            <?php endforeach; ?>
188          </tr>
189        </thead>
190        <tbody>
191        <?php foreach ($tasks as $task_details):?>
192        <tr id="task{!$task_details['task_id']}" class="severity{$task_details['task_severity']}">
193          <td class="caret">
194          </td>
195          <?php if (!$user->isAnon()): ?>
196          <td class="ttcolumn">
197            <input class="ticktask" type="checkbox" name="ids[]" value="{$task_details['task_id']}" />
198          </td>
199          <?php endif; ?>
200          <?php foreach ($visible as $col): ?>
201          {!tpl_draw_cell($task_details, $col)}
202          <?php endforeach; ?>
203        </tr>
204        <?php endforeach; ?>
205        </tbody>
206      </table>
207      <table id="pagenumbers">
208        <tr>
209          <?php if ($total): ?>
210          <td id="taskrange">
211            {!sprintf(L('taskrange'), $offset + 1,
212              ($offset + $perpage > $total ? $total : $offset + $perpage), $total)}
213          </td>
214          <td id="numbers">
215            {!pagenums($pagenum, $perpage, $total)}
216          </td>
217          <?php else: ?>
218          <td id="taskrange"><strong>{L('noresults')}</strong></td>
219          <?php endif; ?>
220        </tr>
221      </table>
222      <?php if (!$user->isAnon() && $total): ?>
223      <div id="massopsactions">
224        <select name="action">
225          <option value="details.add_notification">{L('watchtasks')}</option>
226          <option value="remove_notification">{L('stopwatchingtasks')}</option>
227          <option value="takeownership">{L('assigntaskstome')}</option>
228        </select>
229        <input type="hidden" name="user_id" value="{$user->id}" />
230        <button type="submit">{L('takeaction')}</button>
231      </div>
232      <?php endif ?>
233    </div>
234  </form>
235</div>
236