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