diff --git a/airtime_mvc/application/controllers/ApiController.php b/airtime_mvc/application/controllers/ApiController.php index 52843c738..a29054ed9 100644 --- a/airtime_mvc/application/controllers/ApiController.php +++ b/airtime_mvc/application/controllers/ApiController.php @@ -134,8 +134,9 @@ class ApiController extends Zend_Controller_Action */ if (!$file_base_name) { $file_base_name = $full_path; - } - $file_base_name = substr($file_base_name, 1); + } else { + $file_base_name = substr($file_base_name, 1); + } // possibly use fileinfo module here in the future. // http://www.php.net/manual/en/book.fileinfo.php $ext = pathinfo($fileID, PATHINFO_EXTENSION); diff --git a/airtime_mvc/public/js/airtime/showbuilder/builder.js b/airtime_mvc/public/js/airtime/showbuilder/builder.js index 434a34d02..47881e9fd 100644 --- a/airtime_mvc/public/js/airtime/showbuilder/builder.js +++ b/airtime_mvc/public/js/airtime/showbuilder/builder.js @@ -679,7 +679,15 @@ var AIRTIME = (function(AIRTIME){ //re-highlight selected cursors before draw took place for (i = 0; i < cursorIds.length; i++) { $tr = $table.find("tr[id="+cursorIds[i]+"][si_id="+showInstanceIds[i]+"]"); - mod.selectCursor($tr); + + /* If the currently playing track's cursor is selected, + * and that track is deleted, the cursor position becomes + * unavailble. We have to check the position is available + * before re-highlighting it. + */ + if ($tr.find(".sb-checkbox").children().hasClass("innerWrapper")) { + mod.selectCursor($tr); + } } //if there is only 1 cursor on the page highlight it by default.