From be89d5f1957d159df4289494c7cab9722e8dc9a5 Mon Sep 17 00:00:00 2001 From: Christian Pointner <equinox@helsinki.at> Date: Fri, 19 Sep 2014 23:45:16 +0000 Subject: renamed listdropboxes to listshows loading show list diff --git a/README b/README index 3cd567e..91173dd 100644 --- a/README +++ b/README @@ -31,7 +31,7 @@ add the following to the virtualhost config: Include /etc/rivendell/apache.conf - <Location /listdrobpoxes.cgi> + <Location /listshows.cgi> SetHandler perl-script PerlResponseHandler ModPerl::Registry PerlOptions +ParseHeaders diff --git a/index.html b/index.html index 5b3d00d..5e7fbaf 100644 --- a/index.html +++ b/index.html @@ -42,6 +42,17 @@ $('#alertbox').html('<div class="alert alert-info"><a class="close" data-dismiss="alert" href="#">×</a><h4 class="alert-heading">' + heading + '</h4>' + message + '</div>'); } + function updateShowsList(data, status, req) { + alert(data); + } + + var shows_list = []; + function app_shows_init() { + shows_list = []; + data = { LOGIN_NAME: username, PASSWORD: token }; + $.post("/listshows.cgi", data, updateShowsList, "xml") + } + function selectApp(app) { switch(app) { case "musicpools": @@ -56,6 +67,7 @@ $('#app-musicpools').hide(); $('#nav-btn-musicpools').removeClass('active'); app = 'shows'; + app_shows_init(); } sessionStorage.setItem("app", app); } @@ -178,8 +190,7 @@ <div class="span10"> <form class="well form-inline"> <label class="control-label" for="select-dropbox"><h3>Sendung auswählen</h3></label> - <select id="select-dropbox"> - <option>Democracy Now!</option> + <select id="show-selector"> </select> </form> </div> @@ -192,22 +203,22 @@ </div> <div class="row-fluid"> <div class="span12"> - <h2 id="show-title">Democracy Now!</h2> + <h2 id="show-title"></h2> </div> </div> <div class="row-fluid" id="show-details"> <div class="span2"> </div> <div class="span2"> - <strong>Tag:</strong> <span id="show-day">Dienstag</span> + <strong>Tag:</strong> <span id="show-dow"></span> </div> <div class="span2"> - <strong>Rythmus:</strong> <span id="show-rhythm">wöchentlich</span> + <strong>Rythmus:</strong> <span id="show-rhythm"></span> </div> <div class="span2"> - <strong>Startzeit:</strong> <span id="show-starttime">00:00</span> + <strong>Startzeit:</strong> <span id="show-starttime"></span> </div> <div class="span2"> - <strong>Dauer:</strong> <span id="show-length">30 Minuten</span> + <strong>Dauer:</strong> <span id="show-length"></span> </div> <div class="span2"> </div> </div> diff --git a/listdrobpoxes.cgi b/listdrobpoxes.cgi deleted file mode 100755 index 7ef0bcf..0000000 --- a/listdrobpoxes.cgi +++ /dev/null @@ -1,66 +0,0 @@ -#!/usr/bin/perl - -use strict; -use CGI; -use File::Basename; -use lib dirname( __FILE__ ) . '/lib'; -use rddb; - -binmode(STDIN, ":utf8"); -binmode(STDOUT, ":utf8"); -binmode(STDERR, ":utf8"); - -my $status = 'ERROR'; -my $errorstring = 'unknown'; -my $responsecode = 500; -my @dropboxes = (); - -my $q = CGI->new; -my $username = $q->param('LOGIN_NAME'); -my $token = $q->param('PASSWORD'); - -my $dbh; -($dbh, $status, $errorstring) = rddb::opendb(); -if(defined $dbh) { - my $result; - ($result, $status, $errorstring) = rddb::check_token($dbh, $username, $token); - if($result == 1) { - $responsecode = 200; - @dropboxes = rddb::get_dropboxes($dbh, $username); - } elsif($result == 0) { - $responsecode = 403; - } else { - $responsecode = 500; - } - rddb::closedb($dbh); -} - -print "Content-type: application/xml; charset=UTF-8\n\n"; - -if($responsecode != 200) { - print "<RDWebResult>\n"; - print " <ResponseCode>" . $responsecode . "</ResponseCode>\n"; - print " <ErrorString>" . $errorstring . "</ErrorString>\n"; - print "</RDWebResult>\n"; -} else { - print "<dropboxList>\n"; - for my $href (@dropboxes) { - print " <dropbox>\n"; - print " <group>" . $href->{'GROUP'} . "</group>\n"; - print " <group-description>" . $href->{'GROUPDESC'} . "</group-description>\n"; - print " <type>" . $href->{'TYPE'} . "</type>\n"; - print " <showid>" . $href->{'SHOWID'} . "</showid>\n"; - print " <normalization-level>" . $href->{'NORMLEVEL'} . "</normalization-level>\n"; - print " <autotrim-level>" . $href->{'TRIMLEVEL'} . "</autotrim-level>\n"; - print " <parameters>" . $href->{'PARAM'} . "</parameters>\n"; - if($href->{'TYPE'} eq "show") { - print " <show-title>" . $href->{'SHOWTITLE'} . "</show-title>\n"; - print " <show-rhythm>" . $href->{'RHYTHM'} . "</show-rhythm>\n"; - print " <show-dayofweek>" . $href->{'DOW'} . "</show-dayofweek>\n"; - print " <show-starttime>" . $href->{'STARTTIME'} . "</show-starttime>\n"; - print " <show-length>" . $href->{'LENGTH'} . "</show-length>\n"; - } - print " </dropbox>\n"; - } - print "</dropboxList>\n"; -} diff --git a/listshows.cgi b/listshows.cgi new file mode 100755 index 0000000..7ef0bcf --- /dev/null +++ b/listshows.cgi @@ -0,0 +1,66 @@ +#!/usr/bin/perl + +use strict; +use CGI; +use File::Basename; +use lib dirname( __FILE__ ) . '/lib'; +use rddb; + +binmode(STDIN, ":utf8"); +binmode(STDOUT, ":utf8"); +binmode(STDERR, ":utf8"); + +my $status = 'ERROR'; +my $errorstring = 'unknown'; +my $responsecode = 500; +my @dropboxes = (); + +my $q = CGI->new; +my $username = $q->param('LOGIN_NAME'); +my $token = $q->param('PASSWORD'); + +my $dbh; +($dbh, $status, $errorstring) = rddb::opendb(); +if(defined $dbh) { + my $result; + ($result, $status, $errorstring) = rddb::check_token($dbh, $username, $token); + if($result == 1) { + $responsecode = 200; + @dropboxes = rddb::get_dropboxes($dbh, $username); + } elsif($result == 0) { + $responsecode = 403; + } else { + $responsecode = 500; + } + rddb::closedb($dbh); +} + +print "Content-type: application/xml; charset=UTF-8\n\n"; + +if($responsecode != 200) { + print "<RDWebResult>\n"; + print " <ResponseCode>" . $responsecode . "</ResponseCode>\n"; + print " <ErrorString>" . $errorstring . "</ErrorString>\n"; + print "</RDWebResult>\n"; +} else { + print "<dropboxList>\n"; + for my $href (@dropboxes) { + print " <dropbox>\n"; + print " <group>" . $href->{'GROUP'} . "</group>\n"; + print " <group-description>" . $href->{'GROUPDESC'} . "</group-description>\n"; + print " <type>" . $href->{'TYPE'} . "</type>\n"; + print " <showid>" . $href->{'SHOWID'} . "</showid>\n"; + print " <normalization-level>" . $href->{'NORMLEVEL'} . "</normalization-level>\n"; + print " <autotrim-level>" . $href->{'TRIMLEVEL'} . "</autotrim-level>\n"; + print " <parameters>" . $href->{'PARAM'} . "</parameters>\n"; + if($href->{'TYPE'} eq "show") { + print " <show-title>" . $href->{'SHOWTITLE'} . "</show-title>\n"; + print " <show-rhythm>" . $href->{'RHYTHM'} . "</show-rhythm>\n"; + print " <show-dayofweek>" . $href->{'DOW'} . "</show-dayofweek>\n"; + print " <show-starttime>" . $href->{'STARTTIME'} . "</show-starttime>\n"; + print " <show-length>" . $href->{'LENGTH'} . "</show-length>\n"; + } + print " </dropbox>\n"; + } + print "</dropboxList>\n"; +} -- cgit v0.10.2