diff --git a/airtime_mvc/application/models/Block.php b/airtime_mvc/application/models/Block.php index c41bc579f..327d83c01 100644 --- a/airtime_mvc/application/models/Block.php +++ b/airtime_mvc/application/models/Block.php @@ -467,9 +467,9 @@ SQL; Logging::info("Adding to block"); Logging::info("at position {$pos}"); } - + foreach ($p_items as $ac) { - Logging::info("Adding audio file {$ac}"); + Logging::info("Adding audio file {$ac[0]}"); try { if (is_array($ac) && $ac[1] == 'audioclip') { $res = $this->insertBlockElement($this->buildEntry($ac[0], $pos)); diff --git a/airtime_mvc/application/models/Preference.php b/airtime_mvc/application/models/Preference.php index e695c404c..0d54206e2 100644 --- a/airtime_mvc/application/models/Preference.php +++ b/airtime_mvc/application/models/Preference.php @@ -206,7 +206,7 @@ class Application_Model_Preference $fade = number_format($fade, 2); //fades need 2 leading zeros for DateTime conversion - $fade = rtrim(str_pad($fade, 5, "0", STR_PAD_LEFT), "0"); + $fade = str_pad($fade, 5, "0", STR_PAD_LEFT); return $fade; } diff --git a/airtime_mvc/application/models/Schedule.php b/airtime_mvc/application/models/Schedule.php index f46bfedde..f4acdf886 100644 --- a/airtime_mvc/application/models/Schedule.php +++ b/airtime_mvc/application/models/Schedule.php @@ -674,6 +674,12 @@ SQL; $start = self::AirtimeTimeToPypoTime($item["start"]); $end = self::AirtimeTimeToPypoTime($item["end"]); + list(,,,$start_hour,,) = explode("-", $start); + list(,,,$end_hour,,) = explode("-", $end); + + $same_hour = $start_hour == $end_hour; + $independent_event = !$same_hour; + $schedule_item = array( 'id' => $media_id, 'type' => 'file', @@ -687,7 +693,7 @@ SQL; 'end' => $end, 'show_name' => $item["show_name"], 'replay_gain' => is_null($item["replay_gain"]) ? "0": $item["replay_gain"], - 'independent_event' => false + 'independent_event' => $independent_event, ); self::appendScheduleItem($data, $start, $schedule_item); } @@ -859,6 +865,8 @@ SQL; $data = array(); $data["media"] = array(); + //Harbor kick times *MUST* be ahead of schedule events, so that pypo + //executes them first. self::createInputHarborKickTimes($data, $range_start, $range_end); self::createScheduledEvents($data, $range_start, $range_end); diff --git a/utils/airtime-import/airtime-import.py b/utils/airtime-import/airtime-import.py index c77a0f21e..1e55c732c 100644 --- a/utils/airtime-import/airtime-import.py +++ b/utils/airtime-import/airtime-import.py @@ -8,6 +8,9 @@ import json import shutil import commands +sys.path.append('/usr/lib/airtime/media-monitor/mm2/') +from media.monitor.pure import is_file_supported + # create logger logger = logging.getLogger() @@ -53,8 +56,7 @@ def copy_or_move_files_to(paths, dest, flag): copy_or_move_files_to(sub_path, dest, flag) elif(os.path.isfile(path)): #copy file to dest - ext = os.path.splitext(path)[1] - if( 'mp3' in ext or 'ogg' in ext ): + if(is_file_supported(path)): destfile = dest+os.path.basename(path) if(flag == 'copy'): print "Copying %(src)s to %(dest)s..." % {'src':path, 'dest':destfile} @@ -159,7 +161,7 @@ def WatchAddAction(option, opt, value, parser): path = currentDir+path path = apc.encode_to(path, 'utf-8') if(os.path.isdir(path)): - os.chmod(path, 0765) + #os.chmod(path, 0765) res = api_client.add_watched_dir(path) if(res is None): exit("Unable to connect to the server.")