Files
dojo/lib/Dojo/Model/Vuelo.pm

154 lines
3.9 KiB
Perl
Raw Normal View History

2018-07-13 19:06:08 -05:00
package Dojo::Model::Vuelo;
use Mojo::File 'path';
use Mojo::JSON qw(decode_json encode_json);
2018-07-19 03:45:46 -05:00
use Dojo::Support qw{ dmph merge_hash load_module get_names};
2018-07-13 19:06:08 -05:00
use File::Basename;
use Text::Markdown qw{ markdown };
use Encode qw{ decode_utf8 };
use DBI;
use Dojo::Conf;
sub new { bless {}, shift };
sub mod{
my $q="select nombre,contenido from casa;";
2018-07-18 04:28:26 -05:00
return \@{_read($q)};
2018-07-13 19:06:08 -05:00
}
sub pang{
my ($c,$q)=@_;
return {map { basename($_,".md") => load_md("public/$_")}@{$q->{md}}};
}
sub cal {
2018-07-18 04:28:26 -05:00
my $block=_read (path("public/home/cal/q1Block.q")->slurp);
my $data=_read (path("public/home/cal/q3Event.q")->slurp);
2018-07-13 19:06:08 -05:00
return ($data,$block);
}
sub event{
my ($self,$id)=@_;
2018-07-18 04:28:26 -05:00
return _read (path("public/home/event/qEvent.q")->slurp,$id);
2018-07-13 19:06:08 -05:00
}
sub store{
2018-07-18 04:28:26 -05:00
return _read (path("public/home/store/qStore.q")->slurp);
2018-07-13 19:06:08 -05:00
}
sub tv{
2018-07-18 04:28:26 -05:00
my $series = _read (path("public/home/tv/qSeries.q")->slurp); #group,name
my $table = _read (path("public/home/tv/qTable.q")->slurp); #name,order,group
2018-07-13 19:06:08 -05:00
return ($series,$table);
}
sub podcast{
my $txt = path("public/home/podcast/text.txt")->slurp;
my $hash = decode_json path("public/home/podcast/jsonPod.json")->slurp;
return ($txt,$hash);
}
sub radio{
my $q="select contenido as rmod from casa where nombre='rmod';";
2018-07-18 04:28:26 -05:00
return _read($q);
2018-07-13 19:06:08 -05:00
}
2018-07-19 03:45:46 -05:00
2018-07-18 16:04:47 -05:00
sub umod{
my $c=shift;
my $q="update casa set contenido = ? where nombre = ? ;";
return _write($q,@_);
}
2018-07-19 03:45:46 -05:00
# admin =================================0
2018-07-18 16:04:47 -05:00
sub urmod{
my $c=shift;
my $q="update casa set contenido = ? where nombre = ? ;";
return _write($q,@_);
}
sub rmsg{
my @empty;
my $q= path("public/home/admin/mensajes/qEntries.q")->slurp;
my $dbh = DBI->connect("DBI:mysql:".Dojo::Conf::MSGDB.":".Dojo::Conf::MSGDB_H,Dojo::Conf::MSGDB_UR,Dojo::Conf::MSGDB_URP);
return \@empty unless($dbh);
my $h=$dbh->selectall_arrayref($q,{ Slice => {} },@bind);
#((col1=>d1,col2=>d1),(col1=>d2,col2=>d2))
$dbh->disconnect();
return $h;
}
sub rmsgid{
my ($c,@bind)=@_;
my @empty;
my $q= path("public/home/admin/mensajes/json/qGetInfo.q")->slurp;
my $dbh = DBI->connect("DBI:mysql:".Dojo::Conf::MSGDB.":".Dojo::Conf::MSGDB_H,Dojo::Conf::MSGDB_UR,Dojo::Conf::MSGDB_URP);
return \@empty unless($dbh);
my $h=$dbh->selectall_arrayref($q,{ Slice => {} },@bind);
#((col1=>d1,col2=>d1),(col1=>d2,col2=>d2))
$dbh->disconnect();
return $h;
}
2018-07-19 03:45:46 -05:00
sub admevent{
my $h = {
ecourse=>_read("select nombre as name, id from curso;"),
eplace =>_read("select nombre as name, id from lugar;"),
emini =>_read("select nombre as name, id from mes;"),
ilist => [get_names("public/home/cal/img/")],
eprev =>_read(path("public/home/admin/event/qEprev.q")->slurp),
};
return $h
}
# json ======
sub ecourse{
my ($c,@id)=@_;
return _read(path("public/home/admin/event/json/qEvent.q")->slurp,@id);
}
sub qcourse{
my ($c,@id)=@_;
return _read(path("public/home/admin/event/json/qCourse.q")->slurp,@id);
}
sub qplace{
my ($c,@id)=@_;
return _read(path("public/home/admin/event/json/qPlace.q")->slurp,@id);
}
#============
#Change =====
#============
2018-07-18 16:04:47 -05:00
2018-07-19 03:45:46 -05:00
#ayudas =====================================
2018-07-13 19:06:08 -05:00
sub _read{
2018-07-18 04:28:26 -05:00
my ($q,@bind)=@_;
2018-07-13 19:06:08 -05:00
my (@empty,$arr);
my $dbh = DBI->connect("DBI:mysql:".Dojo::Conf::VUELODB.":".Dojo::Conf::VUELODB_H,Dojo::Conf::VUELODB_UR,Dojo::Conf::VUELODB_URP);
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;
}
2018-07-18 04:28:26 -05:00
sub _write{
my $q=shift;
my (@empty);
my $dbh = DBI->connect("DBI:mysql:".Dojo::Conf::VUELODB.":".Dojo::Conf::VUELODB_H,Dojo::Conf::VUELODB_UW,Dojo::Conf::VUELODB_UWP);
return 0 unless($dbh);
my $h=$dbh->do($q,{ Slice => {} },@_);
$dbh->disconnect();
return $h;
}
2018-07-13 19:06:08 -05:00
sub load_md{
return "" unless
my $text = path(shift)->slurp;
return markdown( decode_utf8($text) );
}
sub load_txt{
return "" unless
my $text = path(shift)->slurp;
return decode_utf8($text);
}
2018-07-17 23:26:10 +00:00
1;