Files
dojo/lib/Dojo/Model/Users.pm
2018-08-15 02:47:30 -05:00

60 lines
1.4 KiB
Perl

package Dojo::Model::Users;
use strict;
use warnings;
use DBI;
use Mojo::Util 'secure_compare';
use Dojo::Conf;
sub new { bless {}, shift }
sub grulla_pass{
return
_read( "select pass as gpass from usuario where nombre like 'grullas'")->[0]
};
sub ugrulla_pass{
my($c,$p)=@_;
_write("update usuario set pass= ? where nombre like 'grullas'",$p);
}
sub check {
my ($self, $user, $pass) = @_;
my $q="select permiso_id as pid from usuario where nombre = ? and pass=? ";
# | 0 | bloqueado |
# | 1 | invitado |
# | 2 | usuario |
# | 3 | pago |
# | 4 | master |
my $r= _read($q,$user,$pass)->[0];
return $r->{pid} // 0;
}
sub _read{
my ($q,@bind)=@_;
my (@empty,$arr);
my $dbh = DBI->connect("DBI:mysql:".Dojo::Conf::GRULLADB.":".Dojo::Conf::GRULLADB_H,Dojo::Conf::GRULLADB_UR,Dojo::Conf::GRULLADB_URP,{mysql_enable_utf8 => 1});
return \@empty unless($dbh);
#$dbh->do(qq{SET NAMES 'utf8'});
my $h=$dbh->selectall_arrayref($q,{ Slice => {} },@bind);
#((col1=>d1,col2=>d1),(col1=>d2,col2=>d2))
$dbh->disconnect();
return $h;
}
sub _write{
my ($q,@bind)=@_;
my (@empty);
my $dbh = DBI->connect("DBI:mysql:".Dojo::Conf::GRULLADB.":".Dojo::Conf::GRULLADB_H,Dojo::Conf::GRULLADB_UW,Dojo::Conf::GRULLADB_UWP);
return 0 unless($dbh);
my $h=$dbh->do($q,{ Slice => {} },@bind);
$dbh->disconnect();
# log("db write:". $h );
return $h;
}
1;