Merge branch '3.0'
[GitHub/WoltLab/WCF.git] / com.woltlab.wcf / templates / accountManagement.tpl
CommitLineData
320f4a6d
MW
1{include file='userMenuSidebar'}
2
524f0f91 3{include file='header' __disableAds=true __sidebarLeftHasMenu=true}
320f4a6d 4
ee629b22 5{include file='formError'}
320f4a6d
MW
6
7<p class="warning">{lang}wcf.user.accountManagement.warning{/lang}</p>
8
9{if $success|isset && $success|count > 0}
10 <div class="success">
11 {foreach from=$success item=successMessage}
12 <p>{lang}{@$successMessage}{/lang}</p>
13 {/foreach}
14 </div>
15{/if}
16
17{assign var=__authProvider value=$__wcf->getUserProfileHandler()->getAuthProvider()}
18
320f4a6d 19<form method="post" action="{link controller='AccountManagement'}{/link}">
95961bdf
MW
20 {if !$__authProvider}
21 <section class="section">
22 <h2 class="sectionTitle">{lang}wcf.user.password{/lang}</h2>
23
24 <dl{if $errorField == 'password'} class="formError"{/if}>
25 <dt><label for="password">{lang}wcf.user.password{/lang}</label></dt>
26 <dd>
6f2bc235 27 <input type="password" id="password" name="password" value="" required class="medium">
95961bdf
MW
28 {if $errorField == 'password'}
29 <small class="innerError">
30 {if $errorType == 'empty'}{lang}wcf.global.form.error.empty{/lang}{/if}
31 {if $errorType == 'false'}{lang}wcf.user.password.error.false{/lang}{/if}
32 </small>
33 {/if}
34 <small>{lang}wcf.user.accountManagement.password.description{/lang}</small>
d2d216fb 35 <small><a href="{link controller='LostPassword'}{/link}">{lang}wcf.user.lostPassword{/lang}</a></small>
95961bdf
MW
36 </dd>
37 </dl>
38
39 {event name='passwordFields'}
40 </section>
41 {/if}
42
43 {if $__wcf->getSession()->getPermission('user.profile.canRename')}
44 <section class="section">
45 <h2 class="sectionTitle">{lang}wcf.user.changeUsername{/lang}</h2>
320f4a6d 46
95961bdf
MW
47 <dl{if $errorField == 'username'} class="formError"{/if}>
48 <dt><label for="username">{lang}wcf.user.newUsername{/lang}</label></dt>
49 <dd>
6f2bc235 50 <input type="text" id="username" name="username" value="{$username}" required pattern="^[^,]{ldelim}{REGISTER_USERNAME_MIN_LENGTH},{REGISTER_USERNAME_MAX_LENGTH}}$" class="medium">
95961bdf
MW
51
52 {if $errorField == 'username'}
53 <small class="innerError">
54 {if $errorType == 'empty'}{lang}wcf.global.form.error.empty{/lang}{/if}
063bbf46 55 {if $errorType == 'invalid'}{lang}wcf.user.username.error.invalid{/lang}{/if}
95961bdf
MW
56 {if $errorType == 'notUnique'}{lang}wcf.user.username.error.notUnique{/lang}{/if}
57 {if $errorType == 'alreadyRenamed'}{lang}wcf.user.username.error.alreadyRenamed{/lang}{/if}
58 </small>
59 {/if}
60 {if $renamePeriod > 0}
61 <small>{lang}wcf.user.changeUsername.description{/lang}</small>
62 {/if}
63 </dd>
64 </dl>
65
66 {event name='changeUsernameFields'}
67 </section>
68 {/if}
69
70 {if !$__authProvider}
71 <section class="section">
72 <h2 class="sectionTitle">{lang}wcf.user.changePassword{/lang}</h2>
73
74 <dl{if $errorField == 'newPassword'} class="formError"{/if}>
75 <dt><label for="newPassword">{lang}wcf.user.newPassword{/lang}</label></dt>
76 <dd>
e5f9b56c 77 <input type="password" id="newPassword" name="newPassword" value="{$newPassword}" class="medium">
95961bdf
MW
78
79 {if $errorField == 'newPassword'}
80 <small class="innerError">
81 {if $errorType == 'empty'}{lang}wcf.global.form.error.empty{/lang}{/if}
82 {if $errorType == 'notSecure'}{lang}wcf.user.password.error.notSecure{/lang}{/if}
83 </small>
84 {/if}
85 </dd>
86 </dl>
87
88 <dl{if $errorField == 'confirmNewPassword'} class="formError"{/if}>
89 <dt><label for="confirmNewPassword">{lang}wcf.user.confirmPassword{/lang}</label></dt>
90 <dd>
e5f9b56c 91 <input type="password" id="confirmNewPassword" name="confirmNewPassword" value="{$confirmNewPassword}" class="medium">
95961bdf
MW
92
93 {if $errorField == 'confirmNewPassword'}
94 <small class="innerError">
95 {if $errorType == 'empty'}{lang}wcf.global.form.error.empty{/lang}{/if}
96 {if $errorType == 'notEqual'}{lang}wcf.user.confirmPassword.error.notEqual{/lang}{/if}
97 </small>
98 {/if}
99 </dd>
100 </dl>
101
102 {event name='changePasswordFields'}
103 </section>
104 {/if}
105
106 {if $__wcf->getSession()->getPermission('user.profile.canChangeEmail')}
107 <section class="section">
108 <h2 class="sectionTitle">{lang}wcf.user.changeEmail{/lang}</h2>
109
110 <dl{if $errorField == 'email'} class="formError"{/if}>
111 <dt><label for="email">{lang}wcf.user.newEmail{/lang}</label></dt>
112 <dd>
e5f9b56c 113 <input type="email" id="email" name="email" value="{$email}" class="medium">
95961bdf
MW
114
115 {if $errorField == 'email'}
116 <small class="innerError">
117 {if $errorType == 'empty'}{lang}wcf.global.form.error.empty{/lang}{/if}
063bbf46 118 {if $errorType == 'invalid'}{lang}wcf.user.email.error.invalid{/lang}{/if}
95961bdf
MW
119 {if $errorType == 'notUnique'}{lang}wcf.user.email.error.notUnique{/lang}{/if}
120 </small>
121 {/if}
122 </dd>
123 </dl>
124
125 <dl{if $errorField == 'confirmEmail'} class="formError"{/if}>
126 <dt><label for="confirmEmail">{lang}wcf.user.confirmEmail{/lang}</label></dt>
127 <dd>
e5f9b56c 128 <input type="email" id="confirmEmail" name="confirmEmail" value="{$confirmEmail}" class="medium">
95961bdf
MW
129
130 {if $errorField == 'confirmEmail'}
131 <small class="innerError">
132 {if $errorType == 'notEqual'}{lang}wcf.user.confirmEmail.error.notEqual{/lang}{/if}
133 </small>
134 {/if}
135 </dd>
136 </dl>
137
138 {event name='changeEmailFields'}
139
140 {if REGISTER_ACTIVATION_METHOD == 1 && $__wcf->getUser()->reactivationCode != 0}
320f4a6d 141 <dl>
77f70354 142 <dt></dt>
320f4a6d 143 <dd>
4f85fd6c 144 <small>{lang newEmail=$__wcf->user->newEmail}wcf.user.changeEmail.needReactivation{/lang}</small>
8c43d802 145 <small><a href="{link controller='EmailActivation'}{/link}"><span>{lang}wcf.user.emailActivation{/lang}</span></a></small>
320f4a6d
MW
146 </dd>
147 </dl>
95961bdf
MW
148 {/if}
149 </section>
150 {/if}
151
152 {if $__wcf->getSession()->getPermission('user.profile.canQuit')}
153 <section class="section">
154 <h2 class="sectionTitle">{lang}wcf.user.quit{/lang}</h2>
155
156 {if $quitStarted}
157 <dl>
158 <dt></dt>
320f4a6d 159 <dd>
6f2bc235 160 <label><input type="checkbox" name="cancelQuit" value="1"{if $cancelQuit == 1} checked{/if}> {lang}wcf.user.quit.cancel{/lang}</label>
320f4a6d
MW
161 </dd>
162 </dl>
95961bdf
MW
163 {else}
164 <dl>
165 <dt></dt>
320f4a6d 166 <dd>
6f2bc235 167 <label><input type="checkbox" name="quit" value="1"{if $quit == 1} checked{/if}> {lang}wcf.user.quit.sure{/lang}</label>
95961bdf 168 <small>{lang}wcf.user.quit.description{/lang}</small>
320f4a6d
MW
169 </dd>
170 </dl>
95961bdf
MW
171 {/if}
172
173 {event name='quitFields'}
174 </section>
175 {/if}
176
177 {hascontent}
178 <section class="section" id="3rdParty">
179 <h2 class="sectionTitle">{lang}wcf.user.3rdparty{/lang}</h2>
180
181 {content}
182 {if $__authProvider}
320f4a6d 183 <dl>
95961bdf 184 <dt>{lang}wcf.user.3rdparty.{@$__authProvider}{/lang}</dt>
320f4a6d 185 <dd>
e5f9b56c 186 <label><input type="checkbox" name="{@$__authProvider}Disconnect" value="1"> {lang}wcf.user.3rdparty.{@$__authProvider}.disconnect{/lang}</label>
320f4a6d
MW
187 </dd>
188 </dl>
95961bdf
MW
189 {elseif !$__wcf->getUser()->hasAdministrativeAccess()}
190 {if GITHUB_PUBLIC_KEY !== '' && GITHUB_PRIVATE_KEY !== ''}
320f4a6d 191 <dl>
95961bdf 192 <dt>{lang}wcf.user.3rdparty.github{/lang}</dt>
320f4a6d 193 <dd>
95961bdf 194 {if $__wcf->getSession()->getVar('__githubToken')}
6f2bc235 195 <label><input type="checkbox" name="githubConnect" value="1"{if $githubConnect} checked{/if}> {lang}wcf.user.3rdparty.github.connect{/lang}</label>
95961bdf
MW
196 {else}
197 <a href="{link controller='GithubAuth'}{/link}" class="thirdPartyLoginButton githubLoginButton"><span class="icon icon16 fa-github"></span> <span>{lang}wcf.user.3rdparty.github.connect{/lang}</span></a>
198 {/if}
320f4a6d
MW
199 </dd>
200 </dl>
320f4a6d 201 {/if}
95961bdf
MW
202
203 {if TWITTER_PUBLIC_KEY !== '' && TWITTER_PRIVATE_KEY !== ''}
204 <dl>
205 <dt>{lang}wcf.user.3rdparty.twitter{/lang}</dt>
206 <dd>
207 {if $__wcf->getSession()->getVar('__twitterData')}
6f2bc235 208 <label><input type="checkbox" name="twitterConnect" value="1"{if $twitterConnect} checked{/if}> {lang}wcf.user.3rdparty.twitter.connect{/lang}</label>
95961bdf
MW
209 {else}
210 <a href="{link controller='TwitterAuth'}{/link}" class="thirdPartyLoginButton twitterLoginButton"><span class="icon icon16 fa-twitter"></span> <span>{lang}wcf.user.3rdparty.twitter.connect{/lang}</span></a>
211 {/if}
212 </dd>
213 </dl>
214 {/if}
215
216 {if FACEBOOK_PUBLIC_KEY !== '' && FACEBOOK_PRIVATE_KEY !== ''}
217 <dl>
218 <dt>{lang}wcf.user.3rdparty.facebook{/lang}</dt>
219 <dd>
220 {if $__wcf->getSession()->getVar('__facebookData')}
6f2bc235 221 <label><input type="checkbox" name="facebookConnect" value="1"{if $facebookConnect} checked{/if}> {lang}wcf.user.3rdparty.facebook.connect{/lang}</label>
95961bdf
MW
222 {else}
223 <a href="{link controller='FacebookAuth'}{/link}" class="thirdPartyLoginButton facebookLoginButton"><span class="icon icon16 fa-facebook"></span> <span>{lang}wcf.user.3rdparty.facebook.connect{/lang}</span></a>
224 {/if}
225 </dd>
226 </dl>
227 {/if}
228
229 {if GOOGLE_PUBLIC_KEY !== '' && GOOGLE_PRIVATE_KEY !== ''}
230 <dl>
231 <dt>{lang}wcf.user.3rdparty.google{/lang}</dt>
232 <dd>
233 {if $__wcf->getSession()->getVar('__googleData')}
6f2bc235 234 <label><input type="checkbox" name="googleConnect" value="1"{if $googleConnect} checked{/if}> {lang}wcf.user.3rdparty.google.connect{/lang}</label>
95961bdf
MW
235 {else}
236 <a href="{link controller='GoogleAuth'}{/link}" class="thirdPartyLoginButton googleLoginButton"><span class="icon icon16 fa-google-plus"></span> <span>{lang}wcf.user.3rdparty.google.connect{/lang}</span></a>
237 {/if}
238 </dd>
239 </dl>
240 {/if}
241
242 {event name='3rdpartyFields'}
243 {/if}
244 {/content}
245 </section>
246 {/hascontent}
247
248 {event name='sections'}
320f4a6d
MW
249
250 <div class="formSubmit">
e5f9b56c 251 <input type="submit" value="{lang}wcf.global.button.submit{/lang}" accesskey="s">
ee629b22 252 {@SECURITY_TOKEN_INPUT_TAG}
320f4a6d
MW
253 </div>
254</form>
255
b3463f2a 256{include file='footer' __disableAds=true}