bye bye github
This commit is contained in:
63
lib/Dojo/Controller/Data.pm
Normal file
63
lib/Dojo/Controller/Data.pm
Normal file
@@ -0,0 +1,63 @@
|
||||
package Dojo::Controller::Data;
|
||||
use Mojo::Base 'Mojolicious::Controller';
|
||||
use Dojo::Support qw{ dmph merge_hash load_module };
|
||||
use Dojo::Conf;
|
||||
use Net::Telnet;
|
||||
|
||||
my $server_name = $Dojo::Conf::chat->{chat_srv};
|
||||
our $t; #telnet server object
|
||||
sub simple{
|
||||
my $c=shift;
|
||||
my $n=$c->param("dreq")//"";
|
||||
my $json = {status => "304"};
|
||||
$json = \%Dojo::Conf::radio if $n =~m/^radio$/ ;
|
||||
$json = candy() if $n =~m/^candy$/ ;
|
||||
$c->render(json=>$json);
|
||||
}
|
||||
|
||||
sub candy{
|
||||
my $c=shift;
|
||||
my $r="-1";
|
||||
if (connectT()) {
|
||||
if ($c->param("command") =~/^isOn$/){ $r = isOn(); }
|
||||
elsif( $c->session("pmid") == 4 ){
|
||||
$r = turnOn() if ($c->param("command") =~/^on$/);
|
||||
$r = turnOff() if ($c->param("command") =~/^off$/);
|
||||
}}
|
||||
else {$r="connection error";};
|
||||
$c->render(json => {a=>$r});
|
||||
}
|
||||
|
||||
sub turnOff{
|
||||
return 1 unless (isOn());
|
||||
grep(/Result: true/,sendT("host:deactivate('$server_name')"))?1:0;
|
||||
}
|
||||
sub turnOn{
|
||||
return 1 unless (!isOn());
|
||||
grep(/Result: true/,sendT("host:activate('$server_name')"))?1:0;
|
||||
}
|
||||
|
||||
sub isOn{ grep(/\s$server_name/,sendT("host:list()"))? 1:0; }
|
||||
|
||||
sub sendT{
|
||||
commandT(shift);
|
||||
my @r = $t->getlines(All=>0);
|
||||
disconnectT();
|
||||
return @r
|
||||
}
|
||||
sub connectT{
|
||||
$t = new Net::Telnet ( Port=>5582, Timeout=>1, Errmode=>'return' );
|
||||
# $t = new Net::Telnet ( Port=>5582, Timeout=>1, Errmode=>'die' );
|
||||
return 1 if $t->open();
|
||||
return 0;
|
||||
}
|
||||
sub commandT{
|
||||
$t->getlines(All=>0);#empty buffer
|
||||
$t->print(shift); #run istruction
|
||||
}
|
||||
sub disconnectT{ $t->close();}
|
||||
|
||||
1
|
||||
__END__
|
||||
|
||||
|
||||
12
lib/Dojo/Controller/Example.pm
Normal file
12
lib/Dojo/Controller/Example.pm
Normal file
@@ -0,0 +1,12 @@
|
||||
package Dojo::Controller::Example;
|
||||
use Mojo::Base 'Mojolicious::Controller';
|
||||
|
||||
# This action will render a template
|
||||
sub welcome {
|
||||
my $self = shift;
|
||||
|
||||
# Render template "example/welcome.html.ep" with message
|
||||
$self->render(msg => 'Welcome to the Mojolicious real-time web framework!');
|
||||
}
|
||||
|
||||
1;
|
||||
99
lib/Dojo/Controller/Home.pm
Normal file
99
lib/Dojo/Controller/Home.pm
Normal file
@@ -0,0 +1,99 @@
|
||||
package Dojo::Controller::Home;
|
||||
use Mojo::Base 'Mojolicious::Controller';
|
||||
use Dojo::Support qw{ dmph merge_hash load_module };
|
||||
use Dojo::Conf;
|
||||
|
||||
sub tst{
|
||||
my $c=shift;
|
||||
my ($v,$w)= load_module($c);
|
||||
# $c->stash($v);
|
||||
$c->stash(d =>$v);
|
||||
|
||||
}
|
||||
|
||||
sub home {
|
||||
my $c = shift;
|
||||
$c->stash((load_module($c))[0]);
|
||||
$c->stash( map{ $_->{nombre} => $_->{contenido}} @{$c->dbv->mod});
|
||||
}
|
||||
|
||||
sub pang {
|
||||
my $c = shift;
|
||||
my ($v,$w)=load_module($c);
|
||||
$c->stash($v);
|
||||
$c->stash( $c->dbv->pang($w) );
|
||||
}
|
||||
|
||||
sub cal {
|
||||
my $c = shift;
|
||||
$c->stash((load_module($c))[0]);
|
||||
my ($data,$block)=$c->dbv->cal;
|
||||
my %hdata;
|
||||
map{ push @{ $hdata{$_->{bid}} },$_; }(@$data);
|
||||
$c->stash( r=>\%hdata, b=>$block);
|
||||
}
|
||||
|
||||
sub event{
|
||||
my $c = shift;
|
||||
$c->stash((load_module($c))[0]);
|
||||
$c->stash(%{($c->dbv->event($c->param("id")))->[0]});
|
||||
}
|
||||
sub contact{
|
||||
my $c = shift;
|
||||
if ($c->param("mup")){
|
||||
$c->flash(mname => $c->param("mname"));
|
||||
$c->redirect_to('contact2');
|
||||
}else{
|
||||
my $dir= "/$c->{stash}{controller}/$c->{stash}{action}";
|
||||
$c->stash( css=>["$dir/cssContact1.css"], js=>[]);
|
||||
$c->stash( layout=>"default");
|
||||
}
|
||||
}
|
||||
|
||||
sub contact2{
|
||||
my $c = shift;
|
||||
$c->redirect_to("home") unless $c->flash('mname');
|
||||
my $dir= "/$c->{stash}{controller}/contact";
|
||||
$c->stash( css=>["$dir/cssContact2.css"], js=>[]);
|
||||
$c->stash( layout=>"default");
|
||||
$c->stash( mname=>$c->flash('mname'));
|
||||
}
|
||||
|
||||
sub store{
|
||||
my $c = shift;
|
||||
$c->stash((load_module($c))[0]);
|
||||
$c->stash( r=>$c->dbv->store);
|
||||
}
|
||||
|
||||
sub tv{
|
||||
my $c = shift;
|
||||
$c->stash( merge_hash(
|
||||
(load_module($c))[0],
|
||||
(load_module($c,"home/tv/trans"))[0]
|
||||
));
|
||||
my ($series,$table)=$c->dbv->tv;
|
||||
$c->stash( series=>$series, table=>$table);
|
||||
}
|
||||
|
||||
sub podcast{
|
||||
my $c = shift;
|
||||
$c->stash((load_module($c))[0]);
|
||||
|
||||
my ($txt,$h)=$c->dbv->podcast;
|
||||
$c->stash( t=>$txt, pod=>$h,);
|
||||
}
|
||||
|
||||
sub radio{
|
||||
my $c=shift;
|
||||
$c->stash((load_module($c))[0]);
|
||||
$c->stash(%{($c->dbv->radio)->[0]});
|
||||
$c->stash($Dojo::Conf::radio);
|
||||
$c->stash(nick=>$c->session("nick"));
|
||||
}
|
||||
|
||||
|
||||
#$c->render(text =>"$c->{match}->position");
|
||||
#$c->render(text=>"$c->{stash}{controller}");
|
||||
#$c->render(text=>"$c->{match}{stack}->[0]{controller}");
|
||||
#$c->render(text=>"$h->{css}[0]");
|
||||
1;
|
||||
28
lib/Dojo/Controller/Users.pm
Normal file
28
lib/Dojo/Controller/Users.pm
Normal file
@@ -0,0 +1,28 @@
|
||||
package Dojo::Controller::Users;
|
||||
use Mojo::Base 'Mojolicious::Controller';
|
||||
use Dojo::Support qw{ merge_hash load_module };
|
||||
|
||||
|
||||
sub login {
|
||||
my $c = shift;
|
||||
$c->stash((load_module($c))[0]);
|
||||
my $user = $c->param('uname') // '';
|
||||
my $pass = $c->param('pass') //'';
|
||||
return $c->render unless my $pmid = $c->dbg->check($user, $pass);
|
||||
$c->session(user => $user, pmid=>$pmid, nick=> $c->param('nick'));
|
||||
$c->redirect_to('radio');
|
||||
}
|
||||
|
||||
sub is_logged {
|
||||
my $self = shift;
|
||||
return 1 if $self->session('user');
|
||||
$self->redirect_to('login');
|
||||
}
|
||||
|
||||
sub logout {
|
||||
my $self = shift;
|
||||
$self->session(expires => 1);
|
||||
$self->redirect_to('home');
|
||||
}
|
||||
|
||||
1;
|
||||
Reference in New Issue
Block a user