108 lines
3.1 KiB
Perl
108 lines
3.1 KiB
Perl
package Dojo::Controller::Admin;
|
|
use Mojo::File 'path';
|
|
use Mojo::JSON qw(decode_json encode_json);
|
|
use Mojo::Base 'Mojolicious::Controller';
|
|
use Dojo::Support qw{ log };
|
|
|
|
|
|
|
|
# Admin =======================================================================
|
|
sub admin{
|
|
my $c= shift;
|
|
$c->redirect_to('/admin/home');
|
|
}
|
|
|
|
sub home{
|
|
my $c=shift;
|
|
$c->dbv->umod($c->param('link'),$c->param('update'))
|
|
if (($c->param("hup") // " " )=~/Cambiar/);
|
|
$c->stash(template=>"admin/home");
|
|
$c->stash(layout=>"admin");
|
|
$c->stash( $c->dbv->mod);
|
|
}
|
|
|
|
sub radio{
|
|
my $c=shift;
|
|
$c->dbv->umod($c->param('link'),'rmod')
|
|
if (($c->param("hup") // " " )=~/Cambiar/);
|
|
$c->dbg->ugrulla_pass($c->param('gpass'))
|
|
if (($c->param("pup") // " " )=~/Cambiar/);
|
|
$c->stash($c->dbv->mod);
|
|
$c->stash($c->dbg->grulla_pass);
|
|
$c->stash(apend => ["admin/candySwitch"]);
|
|
$c->stash(template=>"admin/radio");
|
|
$c->stash(layout=>"admin");
|
|
}
|
|
|
|
sub mensajes{
|
|
my $c=shift;
|
|
$c->stash( h=>$c->dbv->msg_heads);
|
|
$c->stash(template=>"admin/mensajes");
|
|
$c->stash(layout=>"admin");
|
|
}
|
|
|
|
|
|
# Eventos =====================================================================
|
|
sub eventos{
|
|
my $c=shift;
|
|
if ( (my $t=$c->param('type') // "") =~/[ecp]/){
|
|
my $id=$c->param('id');
|
|
my $req=$c->param('req');
|
|
if ( $req eq "Eliminar"){
|
|
$c->mproc->event_del($id) if ($t eq 'e');
|
|
$c->mproc->course_del($id) if ($t eq 'c');
|
|
$c->mproc->place_del($id) if ($t eq 'p');
|
|
}
|
|
elsif( $req eq "Aceptar"){
|
|
if($t eq 'e'){
|
|
my @list=map{$c->param($_)}qw/eplace yini mini dini yend mend dend cost promo pen ecourse eimg een id/;
|
|
$c->mproc->event_up(@list) if ($id ==0);
|
|
$c->mproc->event_ch(@list) if ($id >0);
|
|
}
|
|
if($t eq 'c'){
|
|
my @list=map{$c->param($_)}qw/cname csubjects cservices cen id/;
|
|
$c->mproc->course_up(@list) if ($id ==0);
|
|
$c->mproc->course_ch(@list) if ($id >0);
|
|
}
|
|
if($t eq 'p'){
|
|
my @list=map{$c->param($_)}qw/pname paddr pobs pto pst pco plat plng pen id/;
|
|
$c->mproc->place_up(@list) if ($id ==0);
|
|
$c->mproc->place_ch(@list) if ($id >0);
|
|
}
|
|
}
|
|
$c->redirect_to("/admin/eventos");
|
|
}
|
|
|
|
$c->stash(
|
|
courses=>$c->mproc->courses,
|
|
places=>$c->mproc->places,
|
|
months=>['enero','febrero','marzo','abril','mayo','junio','julio','agosto','septiembre','octubre','noviembre','diciembre' ],
|
|
events=>$c->mproc->events,
|
|
img=>$c->mproc->eimgList,
|
|
);
|
|
$c->stash(template=>"admin/event");
|
|
$c->stash(layout=>"admin");
|
|
}
|
|
|
|
# Funciones auxiliares ========================================================
|
|
sub json{
|
|
my $c=shift;
|
|
my $id = $c->param('id');
|
|
my $req = $c->param('dreq');
|
|
my $json = "304";
|
|
$json = $c->dbv->msg($id) if $req=~/mensaje/;
|
|
$json = $c->dbv->rmsgid ($id) if $req =~/^mensajes$/;
|
|
|
|
$json = $c->mproc->course($id) if $req=~/course/;
|
|
$json = $c->mproc->place($id) if $req=~/place/;
|
|
$json = $c->mproc->eventa($id) if $req=~/event/;
|
|
$json = $c->mproc->ecourse($id) if $req =~/^ecourse$/;
|
|
$json = $c->mproc->qcourse($id) if $req =~/^qcourse$/;
|
|
$json = $c->mproc->qplace ($id) if $req =~/^qplace$/;
|
|
$c->render(json=>$json);
|
|
}
|
|
|
|
|
|
|
|
1;
|