middle mahler

This commit is contained in:
mynah
2019-03-15 20:55:37 +01:00
105 changed files with 224 additions and 359 deletions

View File

@@ -12,10 +12,10 @@
chat_channel => 'Grullas@radio.chat.chaos.foundation',
#Radio =====================================================
radio_server_name=>"http://chaos.foundation:8000/q",
radio_server_name=>"http://radio.chaos.foundation:8000/q",
radio_server =>"https://radio.chaos.foundation",
radio_channel => "/q",
radio_listen_url =>"https://chaos.foundation/q",
radio_listen_url =>"http://radio.chaos.foundation:8000/q",
#RTPM =======================================================
rtmp_server =>"rtmp://chaos.foundation/steam",

View File

@@ -31,7 +31,7 @@ use Dojo::Model::Users;
# =============================================================================
# json ========================================================================
$r->any('/json/:dreq')->to('data#simple');
$r->any('/json/*dreq')->to('data#simple');
# =============================================================================
# candy =======================================================================

View File

@@ -1,16 +1,21 @@
package Dojo::Controller::Data;
use Mojo::File 'path';
use Mojo::JSON qw(decode_json encode_json);
use Mojo::Base 'Mojolicious::Controller';
use Dojo::Support qw{ dmph merge_hash load_module };
use Net::Telnet;
my $server_name = "";
our $t; #telnet server object
my $data_path = path('lib/Dojo/Model/Data')->make_path;
sub simple{
my $c=shift;
my $n=$c->param("dreq")//"";
my $json = {status => "304"};
$json = { srv =>$c->config->{radio_server} } if $n =~m/^radio$/ ;
$json = candy() if $n =~m/^candy$/ ;
$json = decode_json($data_path->child("$n")->slurp)
if $n=~m/^podcast\/podcast.json$/;
$c->render(json=>$json);
}

View File

@@ -1,24 +1,13 @@
package Dojo::Controller::Home;
use Mojo::Base 'Mojolicious::Controller';
use Mojo::Template;
use Dojo::Support qw{ log dmph merge_hash load_module get_names};
#use Dojo::Support qw{ log dmph merge_hash load_module get_names};
use Dojo::Support qw{ log get_names};
sub tst{
my $c=shift;
# $c->stash( merge_hash(
# (load_module("home/tst"))[0],
# (load_module("home/contact"))[0]
#));
# $c->stash(apend => ["home/contact"]);
#$c->stash( (load_module("home/tst"))[0] );
#$c->stash(layout=> "defaultContact");
#my $x = [get_names("public/home/cal/img/")];
#log("@$x");
#$c->stash( ilist => $x);
#$c->dbv->tst;
$c->render(text=> $c->config->{radio}{'channel'});
}
# User ========================================================================
sub home_ {
my $c = shift;
@@ -27,32 +16,32 @@ sub tst{
sub home {
my $c = shift;
$c->stash((load_module("home/home"))[0]);
$c->stash( $c->dbv->mod) ;
$c->stash(layout=>'default');
}
sub pang {
my $c = shift;
my ($v,$w)=load_module("home/pang");
$c->stash($v);
$c->stash( $c->dbv->md_to_hash(@{$w->{'md'}}) );
my $h=$c->dbv->pang_md;
map { $c->stash( $_ => $h->{$_}) } keys %$h;
$c->stash(layout=>'default');
}
sub cal {
my $c = shift;
$c->stash((load_module("home/cal"))[0]);
my $data=$c->dbv->calendar_events;
my $block=$c->dbv->calendar_monthblock;
my %hdata;
map{ push @{ $hdata{$_->{bid}} },$_; }(@$data);
$c->stash( r=>\%hdata, b=>$block);
my %h;
map{ push @{ $h{$_->{bid}} },$_; }(@$data);
$c->stash( r=>\%h, b=>$block);
$c->stash(layout=>'default');
}
sub event{
my $c = shift;
$c->stash((load_module("home/event"))[0]);
$c->stash(layout=> "defaultContact");
$c->stash($c->dbv->event($c->param("id")));
$c->stash(layout=> "defaultContact");
}
sub contact{
@@ -67,7 +56,7 @@ sub tst{
);
$c->redirect_to('contact2');
}else{
$c->stash((load_module("home/contact"))[0]);
$c->stash(layout=>'default');
}
}
@@ -75,42 +64,34 @@ sub tst{
my $c = shift;
$c->redirect_to("home") unless $c->flash('mname');
$c->stash( mname=>$c->flash('mname'));
$c->stash((load_module("home/contact2"))[0]);
$c->stash(layout=>'default');
}
sub store{
my $c = shift;
$c->stash((load_module("home/store"))[0]);
$c->stash( r=>$c->dbv->store);
$c->stash(layout=> "defaultContact");
}
sub tv{
my $c = shift;
$c->stash( merge_hash(
(load_module("home/tv"))[0],
(load_module("home/tv/trans"))[0]
));
$c->stash( videos=>$c->dbv->tv_videos, table=>$c->dbv->tv_series);
$c->stash(layout=> "defaultContact");
}
sub podcast{
my $c = shift;
$c->stash((load_module("home/podcast"))[0]);
$c->stash(layout=> "defaultContact");
$c->stash( t=>$c->dbv->podcast_txt, pod=>$c->dbv->podcast_infoHash);
}
sub bcast{
my $c = shift;
$c->stash((load_module("home/bcast"))[0]);
$c->stash(layout=> "defaultContact");
}
sub radio{
my $c=shift;
$c->stash((load_module("home/radio"))[0]);
$c->stash(layout=> "defaultContact");
$c->stash($c->dbv->mod);
$c->stash(nick=>$c->session("nick"));
@@ -137,7 +118,6 @@ sub tst{
my $c=shift;
$c->dbv->umod($c->param('link'),$c->param('update'))
if (($c->param("hup") // " " )=~/Cambiar/);
$c->stash((load_module("home/admin/home"))[0]);
$c->stash(template=>"home/admin/home");
$c->stash(layout=>"admin");
$c->stash( $c->dbv->mod);
@@ -151,10 +131,6 @@ sub tst{
if (($c->param("pup") // " " )=~/Cambiar/);
$c->stash($c->dbv->mod);
$c->stash($c->dbg->grulla_pass);
$c->stash( merge_hash(
(load_module("home/admin/radio"))[0],
(load_module("home/admin/candySwitch"))[0],
));
$c->stash(apend => ["home/admin/candySwitch"]);
$c->stash(template=>"home/admin/radio");
$c->stash(layout=>"admin");
@@ -162,7 +138,6 @@ sub tst{
sub admin_mensajes{
my $c=shift;
$c->stash((load_module("home/admin/mensajes"))[0]);
$c->stash( h=>$c->dbv->msg_heads);
$c->stash(template=>"home/admin/mensajes");
$c->stash(layout=>"admin");
@@ -194,15 +169,10 @@ sub tst{
$c->dbv->place_up(@list) if ($id ==0);
$c->dbv->place_ch(@list) if ($id >0);
}
}
$c->redirect_to("/admin/eventos");
}
$c->stash(
courses=>$c->dbv->courses,
places=>$c->dbv->places,
@@ -210,7 +180,6 @@ sub tst{
events=>$c->dbv->events,
img=>$c->dbv->eimgList,
);
$c->stash((load_module("home/admin/event"))[0]);
$c->stash(template=>"home/admin/event");
$c->stash(layout=>"admin");
}

View File

@@ -1,5 +1,4 @@
package Dojo::Model::Vuelo;
use Mojo::File 'path';
package Dojo::Model::Vuelo; use Mojo::File 'path';
use Mojo::JSON qw(decode_json encode_json);
use Dojo::Support qw{ log dmph merge_hash load_module get_names};
use Mojo::Base 'Mojolicious::Controller';
@@ -12,46 +11,50 @@ use DBI;
use Dojo::Conf;
sub new { bless {}, shift };
my $data_path = path('lib/Dojo/Model/Data')->make_path;
#just for fun
# Read vdg user ===============================================================
# mensaje del día:mod,rmod,yt,fb,sc
sub mod{
my $q="select nombre,contenido from casa;";
my %h=map{ $_->{nombre} => $_->{contenido}}@{_read($q)};
return %h;
}
sub md_to_hash{
my ($self,@filelist)=@_;
return {map { basename($_,".md") => load_md("public/$_")}@filelist};
sub pang_md{
my $c=shift;
my %h = map {
$_=> markdown(decode_utf8($data_path->child('pang/'.$_.'.md')->slurp))
} ("pang","helen","benjamin");
return \%h;
}
sub calendar_monthblock {
return _read (path("public/home/cal/q1Block.q")->slurp);
return _read ($data_path->child("cal/q1Block.q")->slurp);
}
sub calendar_events {
return _read (path("public/home/cal/q3Event.q")->slurp);
return _read ($data_path->child("cal/q3Event.q")->slurp);
}
sub event{
my ($self,$id)=@_;
return shift @{ _read (path("public/home/event/qEvent.q")->slurp,$id)};
my ($c,$id)=@_;
return shift @{ _read ($data_path->child("event/qEvent.q")->slurp,$id)};
}
sub store{
return _read (path("public/home/store/qStore.q")->slurp);
return _read ($data_path->child("/store/qStore.q")->slurp);
}
sub tv_videos{
return _read (path("public/home/tv/qSeries.q")->slurp); #group,name
return _read ($data_path->child("/tv/qSeries.q")->slurp); #group,name
}
sub tv_series{
return _read (path("public/home/tv/qTable.q")->slurp); #name,order,group
return _read ($data_path->child("/tv/qTable.q")->slurp); #name,order,group
}
sub podcast_txt{
# return "Hemos desarrollado con mucho cariño ejercicios gratuitos y descargables que pueden ser practicados por cualquier persona aún antes de asistir a uno de los cursos de instrucción.";
return decode_utf8(path("public/home/podcast/text.txt")->slurp);
return decode_utf8($data_path->child("/podcast/text.txt")->slurp);
}
sub podcast_infoHash{
return decode_json path("public/home/podcast/jsonPod.json")->slurp;
return decode_json $data_path->child("/podcast/podcast.json")->slurp;
}
#==============================================================================
@@ -60,7 +63,7 @@ sub new { bless {}, shift };
sub msg_heads{
my ($self,@bind)=@_;
my @empty;
my $q= path("public/home/admin/mensajes/qEntries.q")->slurp;
my $q= $data_path->child("/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,{mysql_enable_utf8 => 1});
return \@empty unless($dbh);
my $h=$dbh->selectall_arrayref($q,{ Slice => {} },@bind)//"error";
@@ -72,7 +75,7 @@ sub new { bless {}, shift };
sub msg{
my ($c,@bind)=@_;
my @empty;
my $q= path("public/home/admin/mensajes/json/qGetInfo.q")->slurp;
my $q= $data_path->child("/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,{mysql_enable_utf8 => 1});
return \@empty unless($dbh);
my $h=$dbh->selectall_arrayref($q,{ Slice => {} },@bind)//\@empty;
@@ -81,13 +84,19 @@ sub new { bless {}, shift };
return shift @$h;
}
sub courses{ return _read("select nombre as name, id from curso;")}
sub course { return shift @{_read(path("public/home/admin/event/json/qCourse.q")->slurp,pop)}}
sub course { return shift @{_read($data_path->child("/admin/event/json/qCourse.q")->slurp,pop)}}
sub places { return _read("select nombre as name, id from lugar;")}
sub place { return shift @{_read(path("public/home/admin/event/json/qPlace.q")->slurp,pop)}}
sub place { return shift @{_read($data_path->child("/admin/event/json/qPlace.q")->slurp,pop)}}
sub months { return _read("select nombre as name, id from mes;")};
sub events { return _read(path("public/home/admin/event/qEprev.q")->slurp)}
sub eventa { return shift @{_read(path("public/home/admin/event/json/qEvent.q")->slurp,pop)}}
sub eimgList{ return [get_names("public/home/cal/img/")] }
sub events { return _read($data_path->child("/admin/event/qEprev.q")->slurp)}
sub eventa { return shift @{_read($data_path->child("/admin/event/json/qEvent.q")->slurp,pop)}}
# sub eimgList{ return [get_names("public/home/cal/img/")] }
sub eimgList{
my $dp = path('public/home/cal/img')->make_path;
return [ map{ $_->basename} grep{/(jpg|png)$/i}@{$dp->list} ];
}
#==============================================================================
# Write vdg user ==============================================================
sub contact{
@@ -112,27 +121,27 @@ sub new { bless {}, shift };
sub event_up{
my ($self,@bind)=@_;
return _write(path("public/home/admin/event/add/qEup.q")->slurp,@bind);
return _write($data_path->child("/admin/event/add/qEup.q")->slurp,@bind);
}
sub course_up{
my ($self,@bind)=@_;
return _write(path("public/home/admin/event/add/qCup.q")->slurp,@bind);
return _write($data_path->child("/admin/event/add/qCup.q")->slurp,@bind);
}
sub place_up{
my ($self,@bind)=@_;
return _write(path("public/home/admin/event/add/qPup.q")->slurp,@bind);
return _write($data_path->child("/admin/event/add/qPup.q")->slurp,@bind);
}
sub event_ch{
my ($self,@bind)=@_;
return _write(path("public/home/admin/event/change/qEup.q")->slurp,@bind);
return _write($data_path->child("/admin/event/change/qEup.q")->slurp,@bind);
}
sub course_ch{
my ($self,@bind)=@_;
return _write(path("public/home/admin/event/change/qCup.q")->slurp,@bind);
return _write($data_path->child("/admin/event/change/qCup.q")->slurp,@bind);
}
sub place_ch{
my ($self,@bind)=@_;
return _write(path("public/home/admin/event/change/qPup.q")->slurp,@bind);
return _write($data_path->child("/admin/event/change/qPup.q")->slurp,@bind);
}
#==============================================================================

View File

@@ -62,7 +62,7 @@ article.edit input[name=cost]{
width:100px;
}
article.edit input[type=number]{
width:60px;
width:70px;
}
article.edit textarea{
flex:3;

View File

@@ -1,25 +0,0 @@
#!/usr/bin/perl
use warnings;
use strict;
use JSON;
use Cwd 'abs_path';
use lib abs_path("../../")."/sibelius2/conf";
use Paths;
#-------------------------
print getNames( Paths::MOD ."/cal/img");
sub getNames{
my $dir = shift;
my @file_name;
opendir(DIR, $dir) or die "error opening dir: $dir \n$!";
while (my $file = readdir(DIR)) {
next unless ( $file =~m/^[\w\d]/);
next unless (-f "$dir/$file");
push(@file_name,{name=>$file,tag=>"ilist"});
}
closedir(DIR);
return encode_json( \@file_name );
}
1;
__END__

View File

@@ -1,48 +0,0 @@
#!/usr/bin/perl -s
use warnings;
use strict;
#---
use Cwd 'abs_path';
use lib abs_path("../../")."/sibelius2/conf";
use Paths;
use Init;
use ServerVars;
use Net::Telnet;
use MIME::Lite;
use JSON;
#-------------
### MimeLite necesita sendmail, para arch, sendmail esta sin atender,
### puedes usar msmtp msmtp-mta para simular sendmail. este ultimo
### necesita configurarse con un correo.
my ($mod_name,$sid) = @ARGV;
my %var = (Init::modInit($sid),%ServerVars::sk);
my $server_name = $var{'chat_srv'};
my @arr;
push (@arr,{name=>"one",tag=>"notag"});
my $to = 'benjamuga@gmail.com';
my $from = 'mensajes@vuelodegrulla.com';
my $subject = "Mensaje de $var{'mname'}";
my $message = "Enviado por:
<h1>$var{'mname'}</h1>
<h2>correo:</br>$var{'mail'}<h2>
<p>$var{'msg'}</p>
";
my $msg = MIME::Lite->new(
From => $from,
To => $to,
Subject => $subject,
Data => $message
);
$msg->attr("content-type" => "text/html");
$msg->send;
print encode_json( \@arr ) ."\n";
1
__END__

View File

@@ -1,14 +0,0 @@
/* c#host localhost*/
/* c#database #dbmsg */
/* c#user #dbmsg_w */
/* c#password #dbmsg_wp */
/* c#write write*/
insert into entrada
(nombre,correo,pagina,texto,fecha)
values
( q#mname , q#mail , q#wp , q#msg ,now() );

View File

@@ -1,13 +0,0 @@
/* c#host localhost*/
/* c#database #dbdata */
/* c#user #dbdata_user */
/* c#password #dbdata_pass */
select
nombre as "tag",
contenido as "uContent"
from casa;

View File

Before

Width:  |  Height:  |  Size: 278 KiB

After

Width:  |  Height:  |  Size: 278 KiB

View File

Before

Width:  |  Height:  |  Size: 589 KiB

After

Width:  |  Height:  |  Size: 589 KiB

View File

Before

Width:  |  Height:  |  Size: 364 KiB

After

Width:  |  Height:  |  Size: 364 KiB

View File

@@ -1,31 +0,0 @@
<section class="spacer"></section>
<section id="trs" class="trans header">
<h2 class="textHead"> Nuestro querido maestro Pang He Ming </h3>
</section>
<section class=" trans content flex">
<article id="apang" class="imageHead"></article>
<article class="text">
<!-- ##pang.txt -->
</article>
</section>
<section id="trs" class="trans header">
<h2 class="textHead"> Los maestros Zhang Qing (Helen) y  Qiu Fu Chun (Karl). </h3>
</section>
<section class=" trans content flex">
<article id="ahel" class="imageHead"></article>
<article class="text">
<!-- ##helen.txt -->
</article>
</section>
<section id="trs" class="trans header">
<h2 class="textHead"> Instructor Benjamín Munñóz </h3>
</section>
<section class=" trans content flex">
<article id="aben" class="imageHead"></article>
<article class="text">
<!-- ##benjamin.txt -->
</article>
</section>

View File

Before

Width:  |  Height:  |  Size: 343 KiB

After

Width:  |  Height:  |  Size: 343 KiB

View File

@@ -2,7 +2,7 @@ body{
background-repeat: no-repeat;
background-attachment: fixed;
background-size:cover;
background-image:url("grulla_21.jpg");
background-image:url("bkg_grulla_21.jpg");
background-position: right top;
}
@@ -40,9 +40,9 @@ article.imageHead{
margin:20px;
min-height:300px
}
article#apang{ background-image:url("img/maestro.png");}
article#ahel{ background-image:url("img/helen.png");}
article#aben{ background-image:url("img/ben.png");}
article#apang{ background-image:url("maestro.png");}
article#ahel{ background-image:url("helen.png");}
article#aben{ background-image:url("ben.png");}
/* text column -------------------*/
article.text{

View File

@@ -1,5 +1,5 @@
var sources;
d3.json( "home/podcast/jsonPod.json",function(d){
d3.json( "/json/podcast/podcast.json",function(d){
d3.select("#audioframe").attr("src",d[0].source);
sources=d;
});

BIN
public/home/store/img/libro.jpg Executable file → Normal file

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 58 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -1,3 +1,5 @@
% stash css=>["/home/admin/admin.css","/home/admin/event/event.css"];
% stash js=>["/home/admin/event/event.js"];
<section class="name" flex> <article class="user">
<p class="title">Editar Eventos</p>
</article> </section>
@@ -38,7 +40,7 @@
<option value="<%= $_->{'id'} %>"><%= $_->{'name'} %></option>
<% } %><% (@{stash('months')}) %><% if defined(stash('months')); %>
</select>
<input id="yini" type="number" min="2017" max="2050" name="yini" value="2017"/>
<input id="yini" type="number" min="2019" max="2050" name="yini" value="2019"/>
</div>
<div class="flex field">
<label>Fecha fin</label>
@@ -48,7 +50,7 @@
<option value="<%= $_->{'id'} %>"><%= $_->{'name'} %></option>
<% } %><% (@{stash('months')}) %><% if defined(stash('months')); %>
</select>
<input id="yend" type="number" min="2017" max="2050" name="yend" value="2017"/>
<input id="yend" type="number" min="2019" max="2050" name="yend" value="2019"/>
</div>
<div class="flex field">
<label>Costo</label> <input id="cost" type="text" name="cost"/>

View File

@@ -1,3 +1,5 @@
% stash css=>["/home/admin/admin.css","/home/admin/home/admin.css"];
% stash js=>["/home/admin/home/buttons.js","/home/admin/home/fb.js"];
<section class="title flex">
<article class="title"> <p>Editar Casa</p> </article>
</section>

View File

@@ -1,3 +1,5 @@
% stash css=>["/home/admin/admin.css","/home/admin/mensajes/msg.css"];
% stash js=>["/home/admin/mensajes/msg.js"];
<section class="flex messages">
<article class="select">
<select id="sentry" class="entry" size=10>

View File

@@ -1,3 +1,13 @@
% stash css=>[
% "/home/admin/admin.css",
% "/home/admin/radio/admin.css",
% "/home/admin/candySwitch/main.css",
% "/home/admin/candySwitch/switch.css"
% ];
% stash js=>[
% "/home/admin/radio/loadInfo.js",
% "/home/admin/candySwitch/cSwitch.js"
% ];
<section class="title flex">
<article class="title"> <p>Radio</p> </article>
<article class="bcast"> <form action="/admin/radio" method="post">

View File

@@ -1,3 +1,5 @@
% stash css=>["/home/bcast/cast.css"];
<link rel="stylesheet" href="//releases.flowplayer.org/7.2.1/skin/skin.css">
<script src="//releases.flowplayer.org/7.2.1/flowplayer.min.js"></script>
<script src="//releases.flowplayer.org/dashjs/flowplayer.dashjs.min.js"></script>

View File

@@ -1,11 +1,9 @@
% stash css=>["home/cal/cal.css/"];
<section class="title"> <p>Próximos eventos</p></section>
<section class="cal">
% foreach (@$b) {
<section class="month flex">
<div class="spacer"></div> <p class="month">
<section class="month flex"> <div class="spacer"></div>
<p class="month">
<%= $_->{text} %>
</p>
<div class="spacer"></div>
@@ -24,11 +22,9 @@
<img class="small" src= "home/cal/img/<%= $d->{imagen_chica} %>">
<article class="more"> ... </article>
</article>
</article>
</section>
</a>
%}
%}
%} }
</section>

View File

@@ -1,3 +1,4 @@
% stash css=>["/home/contact/contact1.css"];
<section id="msg" class="contact">
<section class="cbanner">

View File

@@ -1,3 +1,4 @@
% stash css=>["/home/contact2/contact2.css"];
<section class="contact">
<section class="cbanner">

View File

@@ -1,3 +1,4 @@
% stash css=> ["/home/event/event.css"];
<section class="event">
<section class="eimage">
</section>

View File

@@ -1,3 +1,5 @@
%stash css=>[ "/home/home/animation.css", "/home/home/grid.css", "/home/home/head.css", "/home/home/osc.css", "/home/home/trans.css" ];
%stash js=>["/home/home/d3_tras.js","/home/home/fb.js","/home/home/bcast.js"];
<section id="ihead">
<div id="courtain">
<div class="logo"></div>
@@ -36,14 +38,11 @@
<iframe id="evideo"
src="https://www.youtube.com/embed/<%= $yt %> " allowfullscreen>
</iframe>
</article>
<div class="group flex">
<article class="box-2 fb">
<div class="fb-post" id="fbdiv" data-href="<%= $fb %>"
data-width="450" data-show-text="true"></div>
</article>
<article class="box-1 sc">
<%== $sc %>

View File

@@ -1,3 +1,5 @@
% stash css => ["home/pang/pang.css"];
% stash js => ["home/pang/d3Tras.js"];
<section class="spacer"></section>
<section id="trs" class="trans header">

Some files were not shown because too many files have changed in this diff Show More