Commit d32c2ad1 authored by Birte Kristina Friesel's avatar Birte Kristina Friesel
Browse files

prepare account support

parent 5bc5f638
Loading
Loading
Loading
Loading
+32 −0
Original line number Diff line number Diff line
#!/usr/bin/env perl

use Mojolicious::Lite;
use Mojolicious::Plugin::Authentication;
use Cache::File;
use DateTime;
use DBI;
@@ -33,6 +34,27 @@ my %action_type = (
	undo     => 3,
);

app->plugin(authentication => {
	autoload_user => 1,
	session_key => 'foodor',
	load_user => sub {
		my ($app, $uid) = @_;
		if ($uid == 1) {
			return {
				name => 'derf',
			};
		}
		return undef;
	},
	validate_user => sub {
		my ($c, $username, $password, $extradata) = @_;
		if ($username eq 'derf' and $password eq 'hallo') {
			return 1;
		}
		return undef;
	},
});

app->defaults( layout => 'default' );

app->attr(
@@ -772,6 +794,16 @@ post '/x/geolocation' => sub {

};

get '/x/login' => sub {
	my ($self) = @_;
	$self->render('login');
};

get '/x/register' => sub {
	my ($self) = @_;
	$self->render('register');
};

get '/*station' => sub {
	my ($self) = @_;
	my $station = $self->stash('station');
+18 −0
Original line number Diff line number Diff line
<div class="row">
	<form class="col s12">
		<div class="row">
			<div class="input-field col s12">
				<i class="material-icons prefix">account_circle</i>
				<input id="user" type="text" class="validate">
				<label for="user">User</label>
			</div>
		</div>
		<div class="row">
			<div class="input-field col s12">
				<i class="material-icons prefix">lock</i>
				<input id="password" type="password" class="validate">
				<label for="password">Password</label>
			</div>
		</div>
	</form>
</div>
+38 −0
Original line number Diff line number Diff line
<div class="row">
	%= form_for '/x/register' => (class => 'col s12', method => 'POST') => begin
		<div class="row">
			<div class="input-field col l6 m12 s12">
				<i class="material-icons prefix">account_circle</i>
				<input id="account" type="text" class="validate">
				<label for="account">Name</label>
			</div>
			<div class="input-field col l6 m12 s12">
				<i class="material-icons prefix">email</i>
				<input id="email" type="email" class="validate">
				<label for="email">Mail-Adresse</label>
			</div>
			<div class="input-field col l6 m12 s12">
				<i class="material-icons prefix">lock</i>
				<input id="password" type="password" class="validate">
				<label for="password">Passwort</label>
			</div>
			<div class="input-field col l6 m12 s12">
				<i class="material-icons prefix">lock</i>
				<input id="password2" type="password" class="validate">
				<label for="password2">Passwort wiederholen</label>
			</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="register">
					Registrieren
					<i class="material-icons right">send</i>
				</button>
			</div>
			<div class="col s3 m3 l3">
			</div>
		</div>
	%= end
</div>