Merge branch 'next' of github.com:WoltLab/WCF into next
[GitHub/WoltLab/WCF.git] / com.woltlab.wcf / templates / search.tpl
1 {capture assign='pageTitle'}{lang}wcf.search.title{/lang}{/capture}
2
3 {capture assign='contentTitle'}{lang}wcf.search.title{/lang}{/capture}
4
5 {include file='header'}
6
7 {include file='formError'}
8
9 {if $errorMessage|isset}
10 <p class="error">{@$errorMessage}</p>
11 {/if}
12
13 <form method="post" action="{link controller='Search'}{/link}">
14 <div class="section">
15 <dl{if $errorField == 'q'} class="formError"{/if}>
16 <dt><label for="searchTerm">{lang}wcf.search.query{/lang}</label></dt>
17 <dd>
18 <input type="text" id="searchTerm" name="q" value="{$query}" class="long" maxlength="255" autofocus="autofocus" />
19 {if $errorField == 'q'}
20 <small class="innerError">
21 {if $errorType == 'empty'}
22 {lang}wcf.global.form.error.empty{/lang}
23 {else}
24 {lang}wcf.search.query.error.{@$errorType}{/lang}
25 {/if}
26 </small>
27 {/if}
28 <label><input type="checkbox" name="subjectOnly" value="1"{if $subjectOnly == 1} checked="checked"{/if} /> {lang}wcf.search.subjectOnly{/lang}</label>
29 {event name='queryOptions'}
30
31 <small>{lang}wcf.search.query.description{/lang}</small>
32 </dd>
33 </dl>
34
35 <dl>
36 <dt><label for="searchAuthor">{lang}wcf.search.author{/lang}</label></dt>
37 <dd>
38 <input type="text" id="searchAuthor" name="username" value="{$username}" class="long" maxlength="255" autocomplete="off" />
39 <label><input type="checkbox" name="nameExactly" value="1"{if $nameExactly == 1} checked="checked"{/if} /> {lang}wcf.search.matchExactly{/lang}</label>
40 {event name='authorOptions'}
41 </dd>
42 </dl>
43
44 <dl>
45 <dt><label for="startDate">{lang}wcf.search.period{/lang}</label></dt>
46 <dd>
47 <input type="date" id="startDate" name="startDate" value="{$startDate}" data-placeholder="{lang}wcf.date.period.start{/lang}" />
48 <input type="date" id="endDate" name="endDate" value="{$endDate}" data-placeholder="{lang}wcf.date.period.end{/lang}" />
49 {event name='periodOptions'}
50 </dd>
51 </dl>
52
53 <dl>
54 <dt><label for="sortField">{lang}wcf.search.sortBy{/lang}</label></dt>
55 <dd>
56 <label class="selectDropdown">
57 <select id="sortField" name="sortField">
58 <option value="relevance"{if $sortField == 'relevance'} selected="selected"{/if}>{lang}wcf.search.sortBy.relevance{/lang}</option>
59 <option value="subject"{if $sortField == 'subject'} selected="selected"{/if}>{lang}wcf.global.subject{/lang}</option>
60 <option value="time"{if $sortField == 'time'} selected="selected"{/if}>{lang}wcf.search.sortBy.time{/lang}</option>
61 <option value="username"{if $sortField == 'username'} selected="selected"{/if}>{lang}wcf.search.sortBy.username{/lang}</option>
62 </select>
63 </label>
64
65 <label class="selectDropdown">
66 <select name="sortOrder">
67 <option value="ASC"{if $sortOrder == 'ASC'} selected="selected"{/if}>{lang}wcf.global.sortOrder.ascending{/lang}</option>
68 <option value="DESC"{if $sortOrder == 'DESC'} selected="selected"{/if}>{lang}wcf.global.sortOrder.descending{/lang}</option>
69 </select>
70 </label>
71 {event name='displayOptions'}
72 </dd>
73 </dl>
74
75 {event name='generalFields'}
76
77 <dl>
78 <dt>{lang}wcf.search.type{/lang}</dt>
79 <dd class="floated">
80 {foreach from=$objectTypes key=objectTypeName item=objectType}
81 {if $objectType->isAccessible()}
82 <label><input id="{@'.'|str_replace:'_':$objectTypeName}" type="checkbox" name="types[]" value="{@$objectTypeName}"{if $objectTypeName|in_array:$selectedObjectTypes} checked="checked"{/if} /> {lang}wcf.search.type.{@$objectTypeName}{/lang}</label>
83 {/if}
84 {/foreach}
85 </dd>
86 </dl>
87 </div>
88
89 {event name='sections'}
90
91 {include file='captcha'}
92
93 {foreach from=$objectTypes key=objectTypeName item=objectType}
94 {if $objectType->isAccessible() && $objectType->getFormTemplateName()}
95 {assign var='__jsID' value='.'|str_replace:'_':$objectTypeName}
96 <section class="section" id="{@$__jsID}Form">
97 <h2 class="sectionTitle">{lang}wcf.search.type.{@$objectTypeName}{/lang}</h2>
98
99 {include file=$objectType->getFormTemplateName() application=$objectType->getApplication()}
100
101 <script data-relocate="true">
102 //<![CDATA[
103 $(function() {
104 $('#{@$__jsID}').click(function() {
105 if (this.checked) $('#{@$__jsID}Form').wcfFadeIn();
106 else $('#{@$__jsID}Form').wcfFadeOut();
107 });
108 {if !$objectTypeName|in_array:$selectedObjectTypes}$('#{@$__jsID}Form').hide();{/if}
109 });
110 //]]>
111 </script>
112 </section>
113 {/if}
114 {/foreach}
115
116 <div class="formSubmit">
117 <input type="submit" value="{lang}wcf.global.button.submit{/lang}" accesskey="s" />
118 {@SECURITY_TOKEN_INPUT_TAG}
119 </div>
120 </form>
121
122 <script data-relocate="true">
123 //<![CDATA[
124 $(function() {
125 new WCF.Search.User($('#searchAuthor'), function(data) {
126 $('#searchAuthor').val(data.label);//.focus();
127 });
128 });
129 //]]>
130 </script>
131
132 {include file='footer'}