Merge branch '5.2' into 5.3
[GitHub/WoltLab/WCF.git] / wcfsetup / install / files / acp / templates / userRankAdd.tpl
1 {include file='header' pageTitle='wcf.acp.user.rank.'|concat:$action}
2
3 <script data-relocate="true">
4 (function() {
5 var previews = [];
6 elBySelAll('#labelList .jsRankPreview', undefined, function(preview) {
7 previews.push(preview);
8 });
9
10 var input = elById('rankTitle');
11 function updatePreview() {
12 var value = input.value.trim() || '{jslang}wcf.acp.user.rank.title{/jslang}';
13 previews.forEach(function(preview) {
14 preview.textContent = value;
15 });
16 }
17 input.addEventListener('input', updatePreview, { passive: true });
18
19 updatePreview();
20
21 elById('customCssClassName').addEventListener('focus', function () {
22 elBySel('.jsCustomCssClassName').checked = true;
23 });
24 })();
25 </script>
26
27 <header class="contentHeader">
28 <div class="contentHeaderTitle">
29 <h1 class="contentTitle">{lang}wcf.acp.user.rank.{$action}{/lang}</h1>
30 </div>
31
32 <nav class="contentHeaderNavigation">
33 <ul>
34 <li><a href="{link controller='UserRankList'}{/link}" class="button"><span class="icon icon16 fa-list"></span> <span>{lang}wcf.acp.menu.link.user.rank.list{/lang}</span></a></li>
35
36 {event name='contentHeaderNavigation'}
37 </ul>
38 </nav>
39 </header>
40
41 {include file='formNotice'}
42
43 <form method="post" action="{if $action == 'add'}{link controller='UserRankAdd'}{/link}{else}{link controller='UserRankEdit' id=$rankID}{/link}{/if}">
44 <div class="section">
45 <dl{if $errorField == 'rankTitle'} class="formError"{/if}>
46 <dt><label for="rankTitle">{lang}wcf.acp.user.rank.title{/lang}</label></dt>
47 <dd>
48 <input type="text" id="rankTitle" name="rankTitle" value="{$i18nPlainValues['rankTitle']}" required autofocus class="long">
49 {if $errorField == 'rankTitle'}
50 <small class="innerError">
51 {if $errorType == 'empty'}
52 {lang}wcf.global.form.error.empty{/lang}
53 {elseif $errorType == 'multilingual'}
54 {lang}wcf.global.form.error.multilingual{/lang}
55 {else}
56 {lang}wcf.acp.user.rank.title.error.{@$errorType}{/lang}
57 {/if}
58 </small>
59 {/if}
60 </dd>
61 </dl>
62 {include file='multipleLanguageInputJavascript' elementIdentifier='rankTitle' forceSelection=false}
63
64 <dl{if $errorField == 'cssClassName'} class="formError"{/if}>
65 <dt><label for="cssClassName">{lang}wcf.acp.user.rank.cssClassName{/lang}</label></dt>
66 <dd>
67 <ul id="labelList">
68 {foreach from=$availableCssClassNames item=className}
69 {if $className == 'custom'}
70 <li class="labelCustomClass"><input type="radio" name="cssClassName" class="jsCustomCssClassName" value="custom"{if $cssClassName == 'custom'} checked{/if}> <span><input type="text" id="customCssClassName" name="customCssClassName" value="{$customCssClassName}" class="long"></span></li>
71 {else}
72 <li><label><input type="radio" name="cssClassName" value="{$className}"{if $cssClassName == $className} checked{/if}> <span class="badge label{if $className != 'none'} {$className}{/if} jsRankPreview">{lang}wcf.acp.user.rank.title{/lang}</span></label></li>
73 {/if}
74 {/foreach}
75 </ul>
76
77 {if $errorField == 'cssClassName'}
78 <small class="innerError">
79 {if $errorType == 'empty'}
80 {lang}wcf.global.form.error.empty{/lang}
81 {else}
82 {lang}wcf.acp.user.rank.cssClassName.error.{@$errorType}{/lang}
83 {/if}
84 </small>
85 {/if}
86 <small>{lang}wcf.acp.user.rank.cssClassName.description{/lang}</small>
87 </dd>
88 </dl>
89
90 {event name='dataFields'}
91 </div>
92
93 <section class="section">
94 <h2 class="sectionTitle">{lang}wcf.acp.user.rank.image{/lang}</h2>
95
96 <dl{if $errorField == 'rankImage'} class="formError"{/if}>
97 <dt><label for="rankImage">{lang}wcf.acp.user.rank.image{/lang}</label></dt>
98 <dd>
99 <input type="text" id="rankImage" name="rankImage" value="{$rankImage}" class="long">
100 {if $errorField == 'rankImage'}
101 <small class="innerError">
102 {lang}wcf.acp.user.rank.image.error.{@$errorType}{/lang}
103 </small>
104 {/if}
105 <small>{lang}wcf.acp.user.rank.rankImage.description{/lang}</small>
106 </dd>
107 </dl>
108
109 <dl{if $errorField == 'repeatImage'} class="formError"{/if}>
110 <dt><label for="repeatImage">{lang}wcf.acp.user.rank.repeatImage{/lang}</label></dt>
111 <dd>
112 <input type="number" id="repeatImage" name="repeatImage" value="{@$repeatImage}" min="1" class="tiny">
113 {if $errorField == 'rankImage'}
114 <small class="innerError">
115 {lang}wcf.acp.user.rank.repeatImage.error.{@$errorType}{/lang}
116 </small>
117 {/if}
118 <small>{lang}wcf.acp.user.rank.repeatImage.description{/lang}</small>
119 </dd>
120 </dl>
121
122 {if $action == 'edit' && $rank->rankImage}
123 <dl>
124 <dt><label>{lang}wcf.acp.user.rank.currentImage{/lang}</label></dt>
125 <dd>{@$rank->getImage()}</dd>
126 </dl>
127 {/if}
128
129 <dl{if $errorField == 'hideTitle'} class="formError"{/if}>
130 <dt></dt>
131 <dd>
132 <label><input type="checkbox" id="hideTitle" name="hideTitle" value="1"{if $hideTitle} checked{/if}> {lang}wcf.acp.user.rank.hideTitle{/lang}</label>
133 {if $errorField == 'hideTitle'}
134 <small class="innerError">
135 {lang}wcf.acp.user.rank.hideTitle.error.{@$errorType}{/lang}
136 </small>
137 {/if}
138 <small>{lang}wcf.acp.user.rank.hideTitle.description{/lang}</small>
139 </dd>
140 </dl>
141
142 {event name='imageFields'}
143 </section>
144
145 <section class="section">
146 <h2 class="sectionTitle">{lang}wcf.acp.user.rank.requirement{/lang}</h2>
147
148 <dl{if $errorField == 'groupID'} class="formError"{/if}>
149 <dt><label for="groupID">{lang}wcf.user.group{/lang}</label></dt>
150 <dd>
151 <select id="groupID" name="groupID">
152 {foreach from=$availableGroups item=group}
153 <option value="{@$group->groupID}"{if $group->groupID == $groupID} selected{/if}>{$group->getTitle()}</option>
154 {/foreach}
155 </select>
156 {if $errorField == 'groupID'}
157 <small class="innerError">
158 {if $errorType == 'empty'}
159 {lang}wcf.global.form.error.empty{/lang}
160 {else}
161 {lang}wcf.acp.user.rank.userGroup.error.{@$errorType}{/lang}
162 {/if}
163 </small>
164 {/if}
165 <small>{lang}wcf.acp.user.rank.userGroup.description{/lang}</small>
166 </dd>
167 </dl>
168
169 <dl{if $errorField == 'requiredGender'} class="formError"{/if}>
170 <dt><label for="requiredGender">{lang}wcf.user.option.gender{/lang}</label></dt>
171 <dd>
172 <select id="requiredGender" name="requiredGender">
173 <option value="0">{lang}wcf.global.noSelection{/lang}</option>
174 <option value="1"{if $requiredGender == 1} selected{/if}>{lang}wcf.user.gender.male{/lang}</option>
175 <option value="2"{if $requiredGender == 2} selected{/if}>{lang}wcf.user.gender.female{/lang}</option>
176 <option value="3"{if $requiredGender == 3} selected{/if}>{lang}wcf.user.gender.other{/lang}</option>
177 </select>
178 {if $errorField == 'requiredGender'}
179 <small class="innerError">
180 {lang}wcf.acp.user.rank.requiredGender.error.{@$errorType}{/lang}
181 </small>
182 {/if}
183 <small>{lang}wcf.acp.user.rank.requiredGender.description{/lang}</small>
184 </dd>
185 </dl>
186
187 <dl{if $errorField == 'requiredPoints'} class="formError"{/if}>
188 <dt><label for="requiredPoints">{lang}wcf.acp.user.rank.requiredPoints{/lang}</label></dt>
189 <dd>
190 <input type="number" id="requiredPoints" name="requiredPoints" value="{@$requiredPoints}" min="0" class="tiny">
191 {if $errorField == 'requiredPoints'}
192 <small class="innerError">
193 {lang}wcf.acp.user.rank.requiredPoints.error.{@$errorType}{/lang}
194 </small>
195 {/if}
196 <small>{lang}wcf.acp.user.rank.requiredPoints.description{/lang}</small>
197 </dd>
198 </dl>
199
200 {event name='requirementFields'}
201 </section>
202
203 {event name='sections'}
204
205 <div class="formSubmit">
206 <input type="submit" value="{lang}wcf.global.button.submit{/lang}" accesskey="s">
207 {@SECURITY_TOKEN_INPUT_TAG}
208 </div>
209 </form>
210
211 {include file='footer'}