1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
% if (my $user = current_user()) {
<div class="row">
<div class="col s12">
<div class="card">
<div class="card-content">
<span class="card-title">Hallo, <%= $user->{name} %>!</span>
<p>
Du bist bereits angemeldet. Falls du mehrere Accounts hast
und auf einen anderen wechseln möchtest, musst du dich
vorher
%= form_for 'logout' => begin
%= csrf_field
<button class="btn waves-effect waves-light" type="submit" name="action" value="logout">
Abmelden
</button>
%= end
</p>
</div>
</div>
</div>
</div>
% }
% if (my $invalid = stash('invalid')) {
%= include '_invalid_input', invalid => $invalid
% }
% if (my $from = stash('from')) {
<div class="row">
<div class="col s12">
% if ($from eq 'register') {
<div class="card">
<div class="card-content">
<span class="card-title">Bitte warten</span>
<p>Ein Verifizierungslink wurde an die von dir angegebene
Mail-Adresse geschickt. Sobald du diesen angeklickt hast,
kannst du dich hier anmelden.</p>
</div>
</div>
% }
% elsif ($from eq 'verification') {
<div class="card success-color">
<div class="card-content white-text">
<span class="card-title">Account freigeschaltet</span>
<p>Du kannst dich nun anmelden.</p>
</div>
</div>
% }
% elsif ($from eq 'auth_required') {
<div class="card">
<div class="card-content">
<span class="card-title">Login notwendig</span>
<p>Die aufgerufene Seite ist nur mit travelynx-Account zugänglich.</p>
<p><a href="/">Über travelynx</a> · <a href="/register">Registrieren</a></p>
</div>
</div>
% }
</div>
</div>
% }
%= form_for '/login' => (method => 'POST') => begin
%= csrf_field
% if (stash('redirect_to')) {
%= hidden_field 'redirect_to' => stash('redirect_to')
% }
<div class="row">
<div class="input-field col s12">
<i class="material-icons prefix">account_circle</i>
%= text_field 'user', id => 'user', class => 'validate', required => undef, pattern => '[0-9a-zA-Z_-]+', maxlength => 60, autocomplete => 'username'
<label for="user">Account</label>
</div>
<div class="input-field col s12">
<i class="material-icons prefix">lock</i>
%= password_field 'password', id => 'password', class => 'validate', required => undef, autocomplete => 'current-password'
<label for="password">Passwort</label>
</div>
</div>
<div class="row">
<div class="col s12 m12 l12">
Mit der Anmeldung stimmst du den <a href="/tos">Nutzungsbedingungen</a> zu.
</div>
</div>
<div class="row">
<div class="col s3 m3 l3">
</div>
<div class="col s6 m6 l6 center-align">
<button class="btn waves-effect waves-light" type="submit" name="action" value="login">
Anmelden
<i class="material-icons right">send</i>
</button>
</div>
<div class="col s3 m3 l3">
</div>
</div>
<div class="row" style="margin-top: 2em;">
<div class="col s3 m3 l3">
</div>
<div class="col s6 m6 l6 center-align">
<a href="/recover">
Passwort vergessen
</a>
</div>
<div class="col s3 m3 l3">
</div>
</div>
% if (app->config->{registration}{disabled}) {
<div class="row" style="margin-top: 2em;">
<div class="col s12 center-align">
<em>Diese Instanz erlaubt derzeit keine Registrierung neuer Accounts</em>
</div>
</div>
% }
%= end
|