1 {capture assign='pageTitle'}{lang}wcf.search.title{/lang}{/capture}
3 {capture assign='contentTitle'}{lang}wcf.search.title{/lang}{/capture}
5 {include file='header'}
7 {include file='formError'}
9 {if $errorMessage|isset}
10 <p class="error">{@$errorMessage}</p>
13 <form method="post" action="{link controller='Search'}{/link}">
15 <dl{if $errorField == 'q'} class="formError"{/if}>
16 <dt><label for="searchTerm">{lang}wcf.search.query{/lang}</label></dt>
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}
24 {lang}wcf.search.query.error.{@$errorType}{/lang}
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'}
31 <small>{lang}wcf.search.query.description{/lang}</small>
36 <dt><label for="searchAuthor">{lang}wcf.search.author{/lang}</label></dt>
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'}
45 <dt><label for="startDate">{lang}wcf.search.period{/lang}</label></dt>
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'}
54 <dt><label for="sortField">{lang}wcf.search.sortBy{/lang}</label></dt>
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>
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>
71 {event name='displayOptions'}
75 {event name='generalFields'}
78 <dt>{lang}wcf.search.type{/lang}</dt>
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>
89 {event name='sections'}
91 {include file='captcha'}
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>
99 {include file=$objectType->getFormTemplateName() application=$objectType->getApplication()}
101 <script data-relocate="true">
104 $('#{@$__jsID}').click(function() {
105 if (this.checked) $('#{@$__jsID}Form').wcfFadeIn();
106 else $('#{@$__jsID}Form').wcfFadeOut();
108 {if !$objectTypeName|in_array:$selectedObjectTypes}$('#{@$__jsID}Form').hide();{/if}
116 <div class="formSubmit">
117 <input type="submit" value="{lang}wcf.global.button.submit{/lang}" accesskey="s" />
118 {@SECURITY_TOKEN_INPUT_TAG}
122 <script data-relocate="true">
125 new WCF.Search.User($('#searchAuthor'), function(data) {
126 $('#searchAuthor').val(data.label);//.focus();
132 {include file='footer'}