summaryrefslogtreecommitdiff
path: root/rhautoimport-po
diff options
context:
space:
mode:
authorChristian Pointner <equinox@helsinki.at>2019-01-30 13:20:37 (GMT)
committerChristian Pointner <equinox@helsinki.at>2019-01-30 13:20:37 (GMT)
commit01ff101609b75b59b55e9530073a74e83f527af6 (patch)
tree332957eecb98be6e6ab239251fb974ac347a7f54 /rhautoimport-po
parenta06b8c6debe1f21431bf9d2bc30e6ae16bdb650c (diff)
make date selection for Panoptikum robust
Diffstat (limited to 'rhautoimport-po')
-rwxr-xr-xrhautoimport-po11
1 files changed, 8 insertions, 3 deletions
diff --git a/rhautoimport-po b/rhautoimport-po
index 13153c4..49947fb 100755
--- a/rhautoimport-po
+++ b/rhautoimport-po
@@ -42,7 +42,7 @@ my $RD_GROUP = "panoptikum";
my $PV_ID = '570';
my $TITLE="Panoptikum";
my $LAST_RUN = 0;
-my $upload_delay_days = 0; # files are usally there on the same day of the original broadcast
+my $upload_delay_days = 3; # files are usally there 3 days after the original broadcast
binmode(STDIN, ":utf8");
binmode(STDOUT, ":utf8");
@@ -110,7 +110,7 @@ if(Date::Calc::Delta_Days(@broadcast_date, @today) <= $upload_delay_days) {
my $id = sprintf("%04d-%02d-%02d", @import_date);
my $bd = sprintf("%04d-%02d-%02d", @broadcast_date);
-print "looking for files with cba:broadcastDate $bd in RSS Feed\n";
+print "looking for files with cba:broadcastDate $bd in RSS Feed (will be using cba:productionDate if cba:broadcastDate is not set)\n";
print " -> $RSS_URL\n";
my ($result, $feed) = rhautoimport::fetch_parse_rss_cba($RSS_URL);
@@ -130,8 +130,13 @@ for my $entry ($feed->entries) {
next unless $entry->enclosure;
my $entry_bdt = $entry->{'entry'}{'https://cba.fro.at/help#feeds'}{'broadcastDate'};
+ my $format_string = "%a, %d %b %Y %H:%M:%S";
+ unless (defined $entry_bdt) {
+ $entry_bdt = $entry->{'entry'}{'https://cba.fro.at/help#feeds'}{'productionDate'};
+ $format_string = "%a, %d %b %Y";
+ }
next unless (defined $entry_bdt);
- my $bdt = DateTime::Format::Strptime::strptime("%a, %d %b %Y %H:%M:%S", $entry_bdt);
+ my $bdt = DateTime::Format::Strptime::strptime($format_string, $entry_bdt);
next unless($broadcast_date[0] == $bdt->year && $broadcast_date[1] == $bdt->month && $broadcast_date[2] == $bdt->day);