2018-07-13 19:06:08 -05:00
|
|
|
package Dojo::Controller::Users;
|
|
|
|
|
use Mojo::Base 'Mojolicious::Controller';
|
|
|
|
|
use Dojo::Support qw{ merge_hash load_module };
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sub login {
|
2018-07-25 19:07:29 -05:00
|
|
|
my $self = shift;
|
|
|
|
|
#falta si el usuario ya está registrado y llama a login.
|
2018-07-27 16:45:29 -05:00
|
|
|
if (($self->session('ureq')//0) == 4){
|
2018-07-25 19:07:29 -05:00
|
|
|
$self->stash( css=>["users/login/cssaForm.css"]);
|
|
|
|
|
$self->stash(template=>'users/logina') ;
|
|
|
|
|
$self->stash(layout=>"default");
|
|
|
|
|
}
|
2018-07-27 16:45:29 -05:00
|
|
|
elsif (($self->session('ureq')//0) == 2){
|
|
|
|
|
$self->stash( css=>["users/login/cssuForm.css"]);
|
|
|
|
|
$self->stash(template=>'users/loginu') ;
|
|
|
|
|
$self->stash(layout=>"defaultContact");
|
|
|
|
|
}
|
2018-07-25 19:07:29 -05:00
|
|
|
else{
|
|
|
|
|
$self->stash( css=>["users/login/cssForm.css"]);
|
|
|
|
|
$self->stash(layout=>"defaultContact");
|
|
|
|
|
}
|
|
|
|
|
my $user = $self->param('uname') // '';
|
|
|
|
|
my $pass = $self->param('pass') //'';
|
|
|
|
|
return $self->render unless my $pmid = $self->dbg->check($user, $pass);
|
|
|
|
|
$self->session(user => $user, pmid=>$pmid, nick=> $self->param('nick'));
|
2018-07-27 16:45:29 -05:00
|
|
|
$self->redirect_to($self->session('prev')) ;
|
2018-07-13 19:06:08 -05:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
sub is_logged {
|
|
|
|
|
my $self = shift;
|
|
|
|
|
return 1 if $self->session('user');
|
2018-07-27 16:45:29 -05:00
|
|
|
$self->session(ureq=>1,prev=>$self->url_for);
|
2018-07-25 19:07:29 -05:00
|
|
|
$self->redirect_to('login');
|
|
|
|
|
}
|
|
|
|
|
sub is_admin {
|
|
|
|
|
my $self = shift;
|
2018-07-27 16:45:29 -05:00
|
|
|
return 1 if ( ($self->session('pmid') //0) == 4);
|
2018-07-25 19:07:29 -05:00
|
|
|
$self->session(ureq=>4,prev=>$self->url_for);
|
2018-07-13 19:06:08 -05:00
|
|
|
$self->redirect_to('login');
|
|
|
|
|
}
|
2018-07-27 16:45:29 -05:00
|
|
|
sub is_grulla {
|
|
|
|
|
my $self = shift;
|
|
|
|
|
return 1 if (($self->session('pmid')//0)==2);
|
|
|
|
|
$self->session(ureq=>2,prev=>$self->url_for);
|
|
|
|
|
$self->redirect_to('login');
|
|
|
|
|
}
|
2018-07-13 19:06:08 -05:00
|
|
|
|
|
|
|
|
sub logout {
|
|
|
|
|
my $self = shift;
|
|
|
|
|
$self->session(expires => 1);
|
|
|
|
|
$self->redirect_to('home');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
1;
|