1 | {% extends './layout.html' %}
|
2 |
|
3 | {% block title %}
|
4 | <title>{{__("Sign in to system")}}</title>
|
5 | {% endblock %}
|
6 |
|
7 | {% block content %}
|
8 | <form action="{{_routes.session}}" method="POST">
|
9 | <input type="hidden" name="_csrf" value="{{_csrf}}">
|
10 | <div class="auth-form-header">
|
11 | <h1>{{__("Sign in to system")}}</h1>
|
12 | </div>
|
13 | <div class="auth-form-body">
|
14 | <div class="input-wrap">
|
15 | <input type="text" name="email" id="J_email" placeholder="{{__("Email")}}">
|
16 | </div>
|
17 | <div class="input-wrap">
|
18 | <input type="password" name="password" placeholder="{{__("Password")}}">
|
19 | </div>
|
20 | {% if isTOTP %}
|
21 | <div class="input-wrap">
|
22 | <div class="input-group">
|
23 | <input class="input-group-input" type="text" name="token" placeholder="{{__("Dynamic token")}}">
|
24 | <span class="input-group-btn">
|
25 | <button class="btn send-btn" type="button" id="J_send">{{__("Send")}}</button>
|
26 | </span>
|
27 | </div>
|
28 | </div>
|
29 | {% endif %}
|
30 | <div class="input-wrap">
|
31 | <button class="btn btn-primary btn-block">{{__("Sign In")}}</button>
|
32 | </div>
|
33 | {% if messages.error %}
|
34 | <div class="alert alert-danger" id="J_tips">{{messages.error}}</div>
|
35 | {% elseif messages.success %}
|
36 | <div class="alert alert-success" id="J_tips">{{messages.success}}</div>
|
37 | {% else %}
|
38 | <div class="alert" style="display: none;" id="J_tips"></div>
|
39 | {% endif %}
|
40 | </div>
|
41 | </form>
|
42 | <div class="bottom-link">
|
43 | <a href="{{_routes.password_reset}}">{{__("Lost your password?")}}</a>
|
44 | </div>
|
45 | {% if isTOTP %}
|
46 | <script src="/login.js"></script>
|
47 | {% endif %}
|
48 | {% endblock %} |
\ | No newline at end of file |