Beispiel #1
0
 public function get_audio()
 {
     if (!is_null($this->audioid)) {
         return Audio::get_by_id($this->audioid);
     }
 }
Beispiel #2
0
<?php

if (Session::is_group_user("Music Admin")) {
    $track_id = (int) $_REQUEST["id"];
    $track = Audio::get_by_id($track_id);
    $md5 = $track->get_md5();
    $archive = $track->get_archive();
    $dir = $archive->get_localpath();
    $folder = $md5[0];
    $files = array(0 => ".flac", 1 => ".xml");
    $tables = array(0 => 'audioartists', 1 => 'audiocomments', 2 => 'audiodir', 3 => 'audiogroups', 4 => 'audiojinglepkgs', 5 => 'audiokeywords', 6 => 'audioplaylists', 7 => 'audiousers');
    $wherepre = "audioid = " . $track_id;
    $where = pg_escape_string($wherepre);
    $track_id_escaped = pg_escape_string($track_id);
    DigiplayDB::delete('audio', "id = " . $track_id_escaped);
    foreach ($tables as $table) {
        DigiplayDB::delete($table, $where);
    }
    foreach ($files as $file) {
        $path = $dir . "/" . $folder . "/" . $md5 . $file;
        $cmd = "rm " . $path;
        shell_exec($cmd);
    }
    if (Errors::occured()) {
        http_response_code(400);
        exit(json_encode(array("error" => "Something went wrong. You may have discovered a bug!", "detail" => Errors::report("array"))));
        Errors::clear();
    } else {
        exit(json_encode(array('response' => 'success', 'id' => 1)));
    }
} else {
 public function get_audio()
 {
     return Audio::get_by_id($this->audio_id);
 }
Beispiel #4
0
 public function get_audio()
 {
     return Audio::get_by_id($audioid);
 }
Beispiel #5
0
                     $current = true;
                 }
             }
             $return .= "<div class=\"showplan-audio panel " . ($current ? "panel-primary" : "panel-default") . "\" data-item-id=\"" . $item->get_id() . "\">\r\n\t\t\t\t\t<div class=\"panel-heading\" data-toggle=\"collapse\">\r\n\t\t\t\t\t\t<h4 class=\"panel-title\">\r\n\t\t\t\t\t\t\t<div class=\"pull-right\">\r\n\t\t\t\t\t\t\t\t<div class=\"controls\">" . Bootstrap::glyphicon("remove") . "</div>\r\n\t\t\t\t\t\t\t\t<div class=\"duration\">" . Time::format_succinct($audio->get_length()) . "</div></div>\r\n\t\t\t\t\t\t\t" . Bootstrap::glyphicon($type) . ($audio->get_artists() ? $audio->get_artists_str() . " - " : "") . $audio->get_title() . "\r\n\t\t\t\t\t\t</h4>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>";
         }
         if ($script = $item->get_script()) {
             $return .= "<div class=\"showplan-script panel panel-default\" data-item-id=\"" . $item->get_id() . "\">\r\n\t\t\t\t\t<div class=\"panel-heading\" data-toggle=\"collapse\" href=\"#item-" . $item->get_id() . "-toggle\">\r\n\t\t\t\t\t\t<h4 class=\"panel-title\">\r\n\t\t\t\t\t\t\t<div class=\"pull-right\">\r\n\t\t\t\t\t\t\t\t<div class=\"controls\">" . Bootstrap::glyphicon("remove") . "</div>\r\n\t\t\t\t\t\t\t\t<div class=\"duration\">" . ($script->get_length() > 0 ? Time::format_succinct($script->get_length()) : "") . "</div>\r\n\t\t\t\t\t\t\t</div>\r\n\t\t\t\t\t\t\t" . Bootstrap::glyphicon("file") . $script->get_name() . "\r\n\t\t\t\t\t\t</h4>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div id=\"item-" . $item->get_id() . "-toggle\" class=\"panel-collapse collapse\">\r\n\t\t\t\t\t\t<div class=\"panel-body\">\r\n\t\t\t\t\t\t\t" . $script->get_contents() . "\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</div>";
         }
     }
     $return .= "</div>";
     echo $return;
     break;
 case "showplan-append":
     $showplan = Showplans::get_by_id($location->get_config("default_showplan")->get_val());
     $item = new ShowplanItem();
     $audio = Audio::get_by_id($_REQUEST["id"]);
     if (!$audio) {
         exit(json_encode(array("response" => "invalid")));
     }
     $item->set_title($audio->get_title());
     $item->set_audio($audio);
     $item->set_position($showplan->get_end_position());
     $item->set_length(round($audio->get_length()));
     $item->set_showplan($showplan);
     $item->save();
     echo json_encode(array("response" => "success"));
     break;
 case "showplan-append-script":
     $showplan = Showplans::get_by_id($location->get_config("default_showplan")->get_val());
     $item = new ShowplanItem();
     $script = Scripts::get_by_id($_REQUEST["id"]);
Beispiel #6
0
<?php

Output::set_template();
if (is_numeric($_GET["id"])) {
    $audio = Audio::get_by_id($_GET["id"]);
} else {
    $audio = Audio::get_by_md5($_GET["id"]);
}
$filetypes = array("mp3" => "audio/mpeg", "flac" => "audio/flac", "wav" => "audio/wav");
if (array_key_exists($_GET["filetype"], $filetypes)) {
    $filetype = $_GET["filetype"];
    $mimetype = $filetypes[$_GET["filetype"]];
} else {
    exit(http_response_code(400));
}
if (!Session::is_group_user("Music Admin")) {
    if (!isset($_GET["key"]) || is_null(Locations::get_by_key($_GET["key"]))) {
        exit(http_response_code(401));
    }
}
$md5 = $audio->get_md5();
$fl = substr($md5, 0, 1);
header("Content-type: " . $filetype);
header("accept-ranges: bytes");
if ($filetype == "flac") {
    header("Content-Length: " . filesize($audio->get_archive()->get_localpath() . "/" . $fl . "/" . $md5 . ".flac"));
}
if ($filetype == "mp3") {
    header("Content-Length: " . 32000 * $audio->get_length());
}
if ($filetype == "wav") {
<?php

if (Session::is_group_user('Sustainer Admin')) {
    $slots = SustainerSlots::get_all();
    foreach ($slots as $slot) {
        $compareValue = "slot-" . $slot->get_day() . "-" . $slot->get_time();
        if ($compareValue == $_REQUEST["updateid"]) {
            if ((int) $_REQUEST["prerecordid"] == 0) {
                $slot->set_audio_id((int) $_REQUEST["prerecordid"]);
                $slot->save();
                $returnID = 0;
                break;
            }
            if (!($audioid = Audio::get_by_id((int) $_REQUEST["prerecordid"]))) {
                exit(json_encode(array('error' => 'Invalid audio ID.')));
            }
            if ((int) $_REQUEST["prerecordid"] != $slot->get_audio_id()) {
                $slot->set_audio_id((int) $_REQUEST["prerecordid"]);
                $slot->save();
            }
            $returnID = $audioid->get_id();
            break;
        }
    }
    if (Errors::occured()) {
        http_response_code(400);
        exit(json_encode(array("error" => "Something went wrong. You may have discovered a bug!", "detail" => Errors::report("array"))));
        Errors::clear();
    } else {
        exit(json_encode(array('response' => 'success', 'id' => $returnID)));
    }