1
0
Fork 0
mirror of https://github.com/DanielnetoDotCom/YouPHPTube synced 2025-10-03 17:59:55 +02:00
Oinktube/plugin/AD_Server/VMAP.php
Daniel Neto baaf82b742 Update
2025-01-09 13:37:32 -03:00

67 lines
No EOL
2.4 KiB
PHP

<?php
header('Content-type: application/xml');
require_once '../../videos/configuration.php';
allowOrigin();
header('Access-Control-Allow-Credentials: true');
$ad_server = AVideoPlugin::loadPluginIfEnabled('AD_Server');
if (empty($ad_server)) {
die("not enabled");
}
if (empty($_GET['video_length'])) {
$_GET['video_length'] = 300;
}
if (empty($_GET['vmap_id'])) {
$_GET['vmap_id'] = uniqid();
}
$videos_id = getVideos_id();
$vmaps = AD_Server::getVMAPSFromRequest();
echo '<?xml version="1.0" encoding="UTF-8"?>';
?>
<vmap:VMAP xmlns:vmap="http://www.iab.net/videosuite/vmap" version="1.0">
<?php
if(empty($vmaps)){
if (!empty($_REQUEST['vmaps'])) {
$vmaps = _json_decode(base64_decode($_REQUEST['vmaps']));
} else{
echo '<!-- $_REQUEST[vmaps] is empty -->'.PHP_EOL;
}
if(empty($vmaps)) {
if(!empty($_REQUEST['video_length'])){
$video_length = intval($_REQUEST['video_length']);
}else{
$video_length = self::getVideoLength();
}
$ad_server = AVideoPlugin::loadPlugin('AD_Server');
$vmaps = $ad_server->getVMAPs($video_length);
}
}
if(empty($vmaps)) {
echo '<!-- $vmaps is empty -->'.PHP_EOL;
}
foreach ($vmaps as $key => $value) {
if (empty($value['VAST']['campaing'])) {
echo '<!-- campaing is empty '.json_encode($value).' -->'.PHP_EOL;
continue;
}
$AdTagURI = "{$global['webSiteRootURL']}plugin/AD_Server/VAST.php";
$AdTagURI = addQueryStringParameter($AdTagURI, 'campaign_has_videos_id', $value['VAST']['campaing']);
$AdTagURI = addQueryStringParameter($AdTagURI, 'vmap_id', $_GET['vmap_id'] ?? '');
$AdTagURI = addQueryStringParameter($AdTagURI, 'key', $key);
$AdTagURI = addQueryStringParameter($AdTagURI, 'videos_id', $videos_id);
$AdTagURI = AVideoPlugin::replacePlaceHolders($AdTagURI, $videos_id);
?>
<vmap:AdBreak timeOffset="<?php echo $value['timeOffset']; ?>">
<vmap:AdSource id="<?php echo $value['idTag']; ?>" allowMultipleAds="true" followRedirects="true" breakId="<?php echo $value['idTag']; ?>-break">
<vmap:AdTagURI templateType="vast3"><![CDATA[<?php echo $AdTagURI; ?>]]></vmap:AdTagURI>
</vmap:AdSource>
</vmap:AdBreak>
<?php
}
?>
</vmap:VMAP>
<!-- AD_Server -->