summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xrhautoimport-nw73
1 files changed, 56 insertions, 17 deletions
diff --git a/rhautoimport-nw b/rhautoimport-nw
index 697b003..53011cd 100755
--- a/rhautoimport-nw
+++ b/rhautoimport-nw
@@ -30,6 +30,7 @@ use XML::Feed::Enclosure;
use URI::URL;
use HTML::Entities;
+use lib '../rhrdlibs/lib/';
use lib '/usr/local/share/rhautoimport/';
use rhautoimport;
@@ -56,15 +57,22 @@ if(!defined $allowed_dbs[0] && defined $allowed_dbs[1]) {
exit 1;
}
-if(scalar(@allowed_dbs) != 1) {
- print "found more or less than one Dropbox for this group?!\n";
+my $idx = 0;
+my $idx_reb = 1;
+if(scalar(@allowed_dbs) != 2) {
+ print "found more or less than 2 Dropboxes for this group?!\n";
exit 1;
}
-my $show_id = $allowed_dbs[0]->{'SHOWID'};
-my $show_title = $allowed_dbs[0]->{'SHOWTITLE'};
+my $show_id = $allowed_dbs[$idx]->{'SHOWID'};
+my $show_title = $allowed_dbs[$idx]->{'SHOWTITLE'};
+my $show_id_reb = $allowed_dbs[$idx_reb]->{'SHOWID'};
+my $show_title_reb = $allowed_dbs[$idx_reb]->{'SHOWTITLE'};
my @today = Date::Calc::Today();
+@today = Date::Calc::Add_Delta_Days(@today, -7);
+
+
my @import_date = @today;
if( Date::Calc::Day_of_Week(@today) > 3 ) {
@import_date = Date::Calc::Add_Delta_Days(@import_date, 7);
@@ -75,8 +83,10 @@ if( Date::Calc::Day_of_Week(@today) != 3 ) {
@import_date = Date::Calc::Business_to_Standard(@import_date);
}
my @broadcast_day = Date::Calc::Add_Delta_Days(@import_date, -5);
+my @import_date_reb = Date::Calc::Add_Delta_Days(@import_date, 3);
print "day of original broadcast: " . Date::Calc::Date_to_Text(@broadcast_day) . "\n";
print "day of Radio Helsinki broadcast: " . Date::Calc::Date_to_Text(@import_date) . "\n";
+print "day of Radio Helsinki rebroadcast: " . Date::Calc::Date_to_Text(@import_date_reb) . "\n";
my $id = sprintf("%04d-%02d-%02d", @import_date);
my $bd = sprintf("%04d-%02d-%02d", @broadcast_day);
@@ -145,25 +155,54 @@ if($uri eq "") {
exit 1;
}
-print "\n\nwill import '$uri' to show $show_id, $show_title\n\n";
+my $exit_code = 0;
+print "\n\nwill import '$uri' to show $show_id, $show_title\n";
+my ($ret, $log, $keptfile_uri) = rhautoimport::import_uri($show_id, $uri->as_string, "keep");
+if($ret == 0) {
+ print "\nImport Success:\n\n";
+ print $log;
+ print "\n";
+ ($ret, $log) = rhautoimport::pv_add_note($sum_title, $sum_text, $PV_ID, sprintf("%04d-%02d-%02d", @import_date), "1");
+ print $log;
+ if($ret) {
+ print "\nIgnoring failed note import - manual intervention necessary!\n";
+ $exit_code = 23;
+ }
+
+ print "\n";
+
+ if(!defined($keptfile_uri)) {
+ print "rhimportd didn't provide a clue where to find the kept file... will import '$uri' to rebroadcast $show_id_reb, $show_title_reb\n";
+ ($ret, $log) = rhautoimport::import_uri($show_id_reb, $uri->as_string);
+ } else {
+ print "re-using kept file '$keptfile_uri' to import rebroadcast $show_id_reb, $show_title_reb\n";
+ ($ret, $log) = rhautoimport::import_uri($show_id_reb, $keptfile_uri, "delete-with-dir");
+ }
+
+ if($ret == 0) {
+ print "\nImport Success:\n\n";
+ print $log;
+ print "\n";
+ ($ret, $log) = rhautoimport::pv_add_note($sum_title, $sum_text, $PV_ID, sprintf("%04d-%02d-%02d", @import_date_reb), "2");
+ print $log;
+ if($ret) {
+ print "\nIgnoring failed note import - manual intervention necessary!\n";
+ $exit_code = 23;
+ }
-my ($ret, $log) = rhautoimport::import_uri($show_id, $uri->as_string);
-if($ret) {
+ } else {
+ print "\nImport Error:\n\n";
+ print $log;
+ print "\n\nNot adding PV note!!";
+ print "\n\nSince the import for the regular broadcast went through we will not retry this import!!!";
+ $exit_code = 23;
+ }
+} else {
print "\nImport Error:\n\n";
print $log;
print "\n\nNot adding PV note!!";
exit 1;
}
-print "\nImport Success:\n\n";
-print $log;
-print "\n";
-my $exit_code = 0;
-($ret, $log) = rhautoimport::pv_add_note($sum_title, $sum_text, $PV_ID, $id, "1");
-print $log;
-if($ret) {
- print "\nIgnoring failed note import - manual intervention necessary!\n";
- $exit_code = 23;
-}
unlink($STAT_FILE);
open(my $fhs, '>', $STAT_FILE);