Línea 22... |
Línea 22... |
22 |
Context variables required for this template:
|
22 |
Context variables required for this template:
|
23 |
* autofocusform: Auto focus on form ?,
|
23 |
* autofocusform: Auto focus on form ?,
|
24 |
* canloginasguest - Is guest login allowed?,
|
24 |
* canloginasguest - Is guest login allowed?,
|
25 |
* canloginbyemail - Is login by email allowed?,
|
25 |
* canloginbyemail - Is login by email allowed?,
|
26 |
* cansignup - Signup allowed?,
|
26 |
* cansignup - Signup allowed?,
|
- |
|
27 |
* showloginform - Hide the standard login form if it not necessary (only OAuth2 for example)
|
27 |
* cookieshelpicon - cookies help icon details
|
28 |
* cookieshelpicon - cookies help icon details
|
28 |
* error - Any errors in the form?,
|
29 |
* error - Any errors in the form?,
|
29 |
* info - Info notification to display,
|
30 |
* info - Info notification to display,
|
30 |
* forgotpasswordurl - Forgot password url,
|
31 |
* forgotpasswordurl - Forgot password url,
|
31 |
* hasidentityproviders - Flag, set to true to hide identity providers,
|
32 |
* hasidentityproviders - Flag, set to true to hide identity providers,
|
Línea 45... |
Línea 46... |
45 |
{
|
46 |
{
|
46 |
"autofocusform": false,
|
47 |
"autofocusform": false,
|
47 |
"canloginasguest": "1",
|
48 |
"canloginasguest": "1",
|
48 |
"canloginbyemail": false,
|
49 |
"canloginbyemail": false,
|
49 |
"cansignup": true,
|
50 |
"cansignup": true,
|
- |
|
51 |
"showloginform": true,
|
50 |
"cookieshelpicon": {
|
52 |
"cookieshelpicon": {
|
51 |
"heading": "Cookies must be enabled in your browser",
|
53 |
"heading": "Cookies must be enabled in your browser",
|
52 |
"text": "<div class=\"no-overflow\">Two cookies are used on this site. Both died..</div>",
|
54 |
"text": "<div class=\"no-overflow\">Two cookies are used on this site. Both died..</div>",
|
53 |
"icon": {
|
55 |
"icon": {
|
54 |
"attributes": [
|
56 |
"attributes": [
|
55 |
{
|
57 |
{
|
56 |
"name": "class",
|
58 |
"name": "class",
|
57 |
"value": "iconhelp"
|
59 |
"value": ""
|
58 |
},
|
60 |
},
|
59 |
{
|
61 |
{
|
60 |
"name": "alt",
|
62 |
"name": "alt",
|
61 |
"value": "Help with Cookies must be enabled in your browser"
|
63 |
"value": "Help with Cookies must be enabled in your browser"
|
62 |
},
|
64 |
},
|
Línea 99... |
Línea 101... |
99 |
|
101 |
|
100 |
<div class="loginform">
|
102 |
<div class="loginform">
|
101 |
{{#logourl}}
|
103 |
{{#logourl}}
|
102 |
<div id="loginlogo" class="login-logo">
|
104 |
<div id="loginlogo" class="login-logo">
|
103 |
<img id="logoimage" src="{{logourl}}" class="img-fluid" alt="{{sitename}}"/>
|
105 |
<img id="logoimage" src="{{logourl}}" class="img-fluid" alt="{{sitename}}"/>
|
104 |
<h1 class="login-heading sr-only">{{#str}} loginto, core, {{sitename}} {{/str}}</h1>
|
106 |
<h1 class="login-heading visually-hidden">{{#str}} loginto, core, {{sitename}} {{/str}}</h1>
|
105 |
</div>
|
107 |
</div>
|
106 |
{{/logourl}}
|
108 |
{{/logourl}}
|
107 |
{{^logourl}}
|
109 |
{{^logourl}}
|
108 |
<h1 class="login-heading mb-4">{{#str}} loginto, core, {{sitename}} {{/str}}</h1>
|
110 |
<h1 class="login-heading mb-4">{{#str}} loginto, core, {{sitename}} {{/str}}</h1>
|
Línea 111... |
Línea 113... |
111 |
<div class="alert alert-danger login-maintenance">
|
113 |
<div class="alert alert-danger login-maintenance">
|
112 |
{{{maintenance}}}
|
114 |
{{{maintenance}}}
|
113 |
</div>
|
115 |
</div>
|
114 |
{{/maintenance}}
|
116 |
{{/maintenance}}
|
115 |
{{#error}}
|
117 |
{{#error}}
|
116 |
<a href="#" id="loginerrormessage" class="sr-only">{{error}}</a>
|
118 |
<a href="#" id="loginerrormessage" class="visually-hidden">{{error}}</a>
|
117 |
<div class="alert alert-danger" role="alert">{{error}}</div>
|
119 |
<div class="alert alert-danger" role="alert">{{error}}</div>
|
118 |
{{/error}}
|
120 |
{{/error}}
|
119 |
{{#info}}
|
121 |
{{#info}}
|
120 |
<a href="#" id="logininfomessage" class="sr-only">{{info}}</a>
|
122 |
<a href="#" id="logininfomessage" class="visually-hidden">{{info}}</a>
|
121 |
<div class="alert alert-info" role="alert">{{info}}</div>
|
123 |
<div class="alert alert-info" role="alert">{{info}}</div>
|
122 |
{{/info}}
|
124 |
{{/info}}
|
123 |
{{#cansignup}}
|
125 |
{{#cansignup}}
|
124 |
<a href="{{signupurl}}" class="sr-only">{{#str}} tocreatenewaccount {{/str}}</a>
|
126 |
<a href="{{signupurl}}" class="visually-hidden">{{#str}} tocreatenewaccount {{/str}}</a>
|
125 |
{{/cansignup}}
|
127 |
{{/cansignup}}
|
- |
|
128 |
{{#showloginform}}
|
126 |
<form class="login-form" action="{{loginurl}}" method="post" id="login">
|
129 |
<form class="login-form" action="{{loginurl}}" method="post" id="login">
|
127 |
<input id="anchor" type="hidden" name="anchor" value="">
|
130 |
<input id="anchor" type="hidden" name="anchor" value="">
|
128 |
<script>document.getElementById('anchor').value = location.hash;</script>
|
131 |
<script>document.getElementById('anchor').value = location.hash;</script>
|
129 |
<input type="hidden" name="logintoken" value="{{logintoken}}">
|
132 |
<input type="hidden" name="logintoken" value="{{logintoken}}">
|
130 |
<div class="login-form-username mb-3">
|
133 |
<div class="login-form-username mb-3">
|
131 |
<label for="username" class="sr-only">
|
134 |
<label for="username" class="visually-hidden">
|
132 |
{{^canloginbyemail}}
|
135 |
{{^canloginbyemail}}
|
133 |
{{#str}} username {{/str}}
|
136 |
{{#str}} username {{/str}}
|
134 |
{{/canloginbyemail}}
|
137 |
{{/canloginbyemail}}
|
135 |
{{#canloginbyemail}}
|
138 |
{{#canloginbyemail}}
|
136 |
{{#str}} usernameemail {{/str}}
|
139 |
{{#str}} usernameemail {{/str}}
|
137 |
{{/canloginbyemail}}
|
140 |
{{/canloginbyemail}}
|
138 |
</label>
|
141 |
</label>
|
139 |
<input type="text" name="username" id="username" {{!
|
142 |
<input type="text" name="username" id="username" {{!
|
140 |
!}}class="form-control form-control-lg" {{!
|
143 |
!}}class="form-control form-control-lg" {{!
|
141 |
!}}value="{{username}}" {{!
|
144 |
!}}value="{{username}}" {{!
|
142 |
!}}placeholder="{{^canloginbyemail}}{{#cleanstr}}username{{/cleanstr}}{{/canloginbyemail}}{{!
|
145 |
!}}placeholder="{{^canloginbyemail}}{{#cleanstr}}username{{/cleanstr}}{{/canloginbyemail}}{{!
|
143 |
!}}{{#canloginbyemail}}{{#cleanstr}}usernameemail{{/cleanstr}}{{/canloginbyemail}}" {{!
|
146 |
!}}{{#canloginbyemail}}{{#cleanstr}}usernameemail{{/cleanstr}}{{/canloginbyemail}}" {{!
|
144 |
!}}autocomplete="username">
|
147 |
!}}autocomplete="username">
|
145 |
</div>
|
- |
|
146 |
<div class="login-form-password mb-3">
|
- |
|
147 |
<label for="password" class="sr-only">{{#str}} password {{/str}}</label>
|
- |
|
148 |
<input type="password" name="password" id="password" value="" {{!
|
- |
|
149 |
!}}class="form-control form-control-lg" {{!
|
- |
|
150 |
!}}placeholder="{{#cleanstr}}password{{/cleanstr}}" {{!
|
- |
|
151 |
!}}autocomplete="current-password">
|
- |
|
152 |
</div>
|
- |
|
153 |
{{#recaptcha}}
|
- |
|
154 |
<div class="login-form-recaptcha mb-3">
|
- |
|
155 |
{{{recaptcha}}}
|
- |
|
156 |
</div>
|
148 |
</div>
|
- |
|
149 |
<div class="login-form-password mb-3">
|
- |
|
150 |
<label for="password" class="visually-hidden">{{#str}} password {{/str}}</label>
|
- |
|
151 |
<input type="password" name="password" id="password" value="" {{!
|
- |
|
152 |
!}}class="form-control form-control-lg" {{!
|
- |
|
153 |
!}}placeholder="{{#cleanstr}}password{{/cleanstr}}" {{!
|
- |
|
154 |
!}}autocomplete="current-password">
|
- |
|
155 |
</div>
|
- |
|
156 |
{{#recaptcha}}
|
- |
|
157 |
<div class="login-form-recaptcha mb-3">
|
- |
|
158 |
{{{recaptcha}}}
|
- |
|
159 |
</div>
|
157 |
{{/recaptcha}}
|
160 |
{{/recaptcha}}
|
158 |
<div class="login-form-submit mb-3">
|
161 |
<div class="login-form-submit mb-3">
|
159 |
<button class="btn btn-primary btn-lg" type="submit" id="loginbtn">{{#str}}login{{/str}}</button>
|
162 |
<button class="btn btn-primary btn-lg" type="submit" id="loginbtn">{{#str}}login{{/str}}</button>
|
160 |
</div>
|
163 |
</div>
|
161 |
<div class="login-form-forgotpassword mb-3">
|
164 |
<div class="login-form-forgotpassword mb-3">
|
162 |
<a href="{{forgotpasswordurl}}">{{#str}}forgotaccount{{/str}}</a>
|
165 |
<a href="{{forgotpasswordurl}}">{{#str}}forgotaccount{{/str}}</a>
|
163 |
</div>
|
166 |
</div>
|
164 |
</form>
|
167 |
</form>
|
- |
|
168 |
{{/showloginform}}
|
165 |
{{#hasidentityproviders}}
|
169 |
{{#hasidentityproviders}}
|
166 |
<div class="login-divider"></div>
|
170 |
<div class="login-divider"></div>
|
167 |
<div class="login-identityproviders">
|
171 |
<div class="login-identityproviders">
|
168 |
<h2 class="login-heading">{{#str}} potentialidps, auth {{/str}}</h2>
|
172 |
<h2 class="login-heading">{{#str}} potentialidps, auth {{/str}}</h2>
|
169 |
{{#identityproviders}}
|
173 |
{{#identityproviders}}
|
170 |
<a class="btn login-identityprovider-btn btn-block" href="{{url}}">
|
174 |
<a class="btn login-identityprovider-btn w-100" href="{{url}}">
|
171 |
{{#iconurl}}
|
175 |
{{#iconurl}}
|
172 |
<img src="{{iconurl}}" alt="" width="24" height="24"/>
|
176 |
<img src="{{iconurl}}" alt="" width="24" height="24"/>
|
173 |
{{/iconurl}}
|
177 |
{{/iconurl}}
|
174 |
{{name}}
|
178 |
{{name}}
|
175 |
</a>
|
179 |
</a>
|
Línea 202... |
Línea 206... |
202 |
<div class="d-flex">
|
206 |
<div class="d-flex">
|
203 |
{{#languagemenu}}
|
207 |
{{#languagemenu}}
|
204 |
<div class="login-languagemenu">
|
208 |
<div class="login-languagemenu">
|
205 |
{{>core/action_menu}}
|
209 |
{{>core/action_menu}}
|
206 |
</div>
|
210 |
</div>
|
207 |
<div class="divider border-left align-self-center mx-3"></div>
|
211 |
<div class="divider border-start align-self-center mx-3"></div>
|
208 |
{{/languagemenu}}
|
212 |
{{/languagemenu}}
|
209 |
<button type="button" class="btn btn-secondary" {{!
|
213 |
<button type="button" class="btn btn-secondary" {{!
|
210 |
}} data-modal="alert"{{!
|
214 |
}} data-modal="alert"{{!
|
211 |
}} data-modal-title-str='["cookiesenabled", "core"]' {{!
|
215 |
}} data-modal-title-str='["cookiesenabled", "core"]' {{!
|
212 |
}} data-modal-content-str='["cookiesenabled_help_html", "core"]'{{!
|
216 |
}} data-modal-content-str='["cookiesenabled_help_html", "core"]'{{!
|