Esempio n. 1
0
}
$playlist = new sotf_Playlist();
if ($jingle) {
    // play the jingle of station/series
    $obj = $repository->getObject($id);
    if (!$obj) {
        raiseError("no_such_object", $id);
    }
    if (!$obj->isLocal()) {
        // have to send user to home node of this programme
        sotf_Node::redirectToHomeNode($obj, 'listen.php');
        exit;
    }
    $playlist->addJingle($obj);
} else {
    // add normal programme
    $prg = $repository->getObject($id);
    if (!$prg) {
        raiseError("no_such_object", $id);
    }
    if (!$prg->isLocal()) {
        // have to send user to home node of this programme
        sotf_Node::redirectToHomeNode($prg, 'listen.php');
        exit;
    }
    $playlist->addProg($prg, $fileid);
}
$playlist->startStreaming();
// must start stream before! otherwise we don't know stream url
$playlist->sendRemotePlaylist();
$page->logRequest();
Esempio n. 2
0
    $fobj =& $repository->getObject($fid);
    if (!$fobj) {
        raiseError("no_such_object", $fid);
    }
    $prg = $repository->getObject($fobj->get('prog_id'));
    $mainAudio = $fobj->get('main_content') == 't';
    $filename = $fobj->get('filename');
} else {
    $prg = $repository->getObject($id);
}
if (!$prg) {
    raiseError("no_such_object", $id);
}
if (!$prg->isLocal()) {
    // have to send user to home node of this programme
    sotf_Node::redirectToHomeNode($prg, 'getFile.php');
    exit;
}
if (!$prg->isPublished()) {
    raiseError("not_published_yet");
}
if ($fobj and !$fobj->getBool('download_access')) {
    raiseError("no access");
}
if (!$prg->canListen()) {
    $page->redirect($config['localPrefix'] . '/protected.php');
    exit;
}
if ($mainAudio) {
    $filename = sotf_Utils::getFileInDir($prg->getAudioDir(), $filename);
} else {