From d1016e1e09bf460ede1ac49e91650351b3aff4a4 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Fri, 15 Apr 2016 21:42:05 +0200 Subject: new export format of PV diff --git a/debian/control b/debian/control index e6c6cf8..b185e24 100644 --- a/debian/control +++ b/debian/control @@ -8,7 +8,7 @@ Standards-Version: 3.9.6 Package: librhrd-perl Architecture: all -Depends: ${misc:Depends}, ${perl:Depends}, libconfig-inifiles-perl, libdbi-perl, libdbd-mysql-perl, libdatetime-perl, libdatetime-timezone-perl, libjson-any-perl, liburi-perl, libwww-perl +Depends: ${misc:Depends}, ${perl:Depends}, libconfig-inifiles-perl, libdbi-perl, libdbd-mysql-perl, libdate-calc-perl, libdatetime-perl, libdatetime-timezone-perl, libjson-any-perl, liburi-perl, libwww-perl Description: Radio Helsinki Rivendell Perl Modules These modules are used by rhwebimport, rhimport as well by some other scripts. diff --git a/utils/rhrd-schedules b/utils/rhrd-schedules index 6e60509..3579821 100755 --- a/utils/rhrd-schedules +++ b/utils/rhrd-schedules @@ -27,7 +27,7 @@ use lib "../lib/"; use RHRD::rddb; use RHRD::utils; -use String::MkPasswd qw(mkpasswd); +use Date::Calc; sub print_usage { @@ -57,19 +57,26 @@ sub generate sub show__day { - my ($ctx, $year, $month, $day) = @_; + my ($ctx, @date) = @_; - my ($ret, $data) = RHRD::utils::fetch_parse_json("https://pv.helsinki.at/export/day_schedule/$year/$month/$day", "rhrd-schedules"); + print "https://pv.helsinki.at/export/day_schedule/$date[0]/$date[1]/$date[2]\n"; + + my ($ret, $data) = RHRD::utils::fetch_parse_json("https://pv.helsinki.at/export/day_schedule/$date[0]/$date[1]/$date[2]", "rhrd-schedules"); if(!$ret) { print STDERR "Error fetching export from PV: $data\n"; return 1; } + my $dow = Date::Calc::Day_of_Week(@date); + my $errcnt = 0; for my $entry (@{$data}) { my $start = ${$entry}{'start'}; my $title = ${$entry}{'title'}; - my $showid = ${$entry}{'id'}; + my $pvid = ${$entry}{'id'}; + my $showid = ${$entry}{'automation-id'}; + + next if $pvid == 1; # 'Unmoderiertes Musikprogramm' print " $start: ($showid) -> "; if($showid > 0) { @@ -85,7 +92,7 @@ sub show__day print "OK: $title\n"; } } else { - print "ERROR: show not configured\n"; + print "ERROR: show '$pvid|$title' not configured\n"; $errcnt++; } } @@ -98,12 +105,12 @@ sub show my ($ctx, $week, $dow) = @_; # TODO: parse week number and day - my $year = 2016; - my $month = 4; - my $day = 14; - print "$day.$month.$year:\n"; # TODO: print dow - my $errcnt = show__day($ctx, $year, $month, $day); + my @date = (2016, 4, 14); + +# print "$date[0].$date[1].$date[2] (" . Date::Calc::Day_of_Week_to_Text() . "):\n"; + print Date::Calc::Date_to_Text(@date) . ":\n"; + my $errcnt = show__day($ctx, @date); print " -> $errcnt errors.\n\n"; return 0; } @@ -120,10 +127,7 @@ my ($ctx, undef, $errorstring) = RHRD::rddb::init(); if(defined $ctx) { if($cmd eq "generate") { if($num_args == 2 && $ARGV[1] =~ m/^(\d{4})-(\d{2})-(\d{2})$/) { - my $year = $1; - my $month = $2; - my $day = $3; - $ret = generate($ctx, $year, $month, $day); + $ret = generate($ctx, $1, $2, $3); } else { print_usage(); $ret = 1; -- cgit v0.10.2