/** * render an ad of type image * */ function test_adRenderImage() { $this->sendMessage('test_adRenderImage'); require_once MAX_PATH . '/lib/max/Delivery/common.php'; // note: following code to extract test data from db // require_once MAX_PATH . '/lib/OA/Dal/Delivery/'.$GLOBALS['_MAX']['CONF']['database']['type'].'.php'; // OA_Dal_Delivery_connect(); // $aBanner = (array)OA_Dal_Delivery_getAd(7); // $prn = print_r($aBanner, TRUE); require MAX_PATH . '/lib/max/Delivery/tests/data/test_adRenderImage.php'; $return = _adRenderImage($aBanner, $zoneId, $source, $ct0, $withText, $logClick, $logView, $useAlt, $richMedia, $loc, $referer, $useAppend); $this->assertEqual($return, $expect); }
function _adRenderFlash(&$aBanner, $zoneId = 0, $source = '', $ct0 = '', $withText = false, $logClick = true, $logView = true, $useAlt = false, $richMedia = true, $loc = '', $referer = '', $context = array()) { $conf = $GLOBALS['_MAX']['CONF']; $prepend = !empty($aBanner['prepend']) ? $aBanner['prepend'] : ''; $append = !empty($aBanner['append']) ? $aBanner['append'] : ''; $width = !empty($aBanner['width']) ? $aBanner['width'] : 0; $height = !empty($aBanner['height']) ? $aBanner['height'] : 0; $pluginVersion = !empty($aBanner['pluginversion']) ? _adRenderGetRealPluginVersion($aBanner['pluginversion']) : '4'; $logURL = _adRenderBuildLogURL($aBanner, $zoneId, $source, $loc, $referer, '&'); if (!empty($aBanner['alt_filename']) || !empty($aBanner['alt_imageurl'])) { $altImageAdCode = _adRenderImage($aBanner, $zoneId, $source, $ct0, false, $logClick, false, true, true, $loc, $referer, $context, false); $fallBackLogURL = _adRenderBuildLogURL($aBanner, $zoneId, $source, $loc, $referer, '&', true); } else { $alt = !empty($aBanner['alt']) ? htmlspecialchars($aBanner['alt'], ENT_QUOTES) : ''; $altImageAdCode = "<img src='" . _adRenderBuildImageUrlPrefix() . '/1x1.gif' . "' alt='" . $alt . "' title='" . $alt . "' border='0' />"; if ($zoneId) { $fallBackLogURL = _adRenderBuildLogURL(array('ad_id' => 0, 'placement_id' => 0), $zoneId, $source, $loc, $referer, '&', true); } else { $fallBackLogURL = false; } } $clickUrl = _adRenderBuildClickUrl($aBanner, $zoneId, $source, $ct0, $logClick); if (!empty($clickUrl)) { $status = _adRenderBuildStatusCode($aBanner); $target = !empty($aBanner['target']) ? $aBanner['target'] : '_blank'; $swfParams = array('clickTARGET' => $target, 'clickTAG' => $clickUrl); $clickTag = "<a href='{$clickUrl}' target='{$target}'{$status}>"; $clickTagEnd = '</a>'; } else { $swfParams = array(); $clickTag = ''; $clickTagEnd = ''; } if (!empty($aBanner['parameters'])) { $aAdParams = unserialize($aBanner['parameters']); if (isset($aAdParams['swf']) && is_array($aAdParams['swf'])) { $swfParams = array(); $aBannerSwf = $aBanner; $aBannerSwf['noClickTag'] = true; foreach ($aAdParams['swf'] as $iKey => $aSwf) { $aBannerSwf['url'] = $aSwf['link']; $swfParams["alink{$iKey}"] = _adRenderBuildClickUrl($aBannerSwf, $zoneId, $source, $ct0, $logClick); $swfParams["atar{$iKey}"] = $aSwf['tar']; } } } $fileUrl = _adRenderBuildFileUrl($aBanner, false); $id = 'rv_swf_{random}'; $swfId = !empty($aBanner['alt']) ? $aBanner['alt'] : 'Advertisement'; $swfId = 'id-' . preg_replace('/[a-z0-1]+/', '', strtolower($swfId)); $code = "\n<div id='{$id}' style='display: inline;'>{$altImageAdCode}</div>\n<script type='text/javascript'><!--/" . "/ <![CDATA[\n var ox_swf = new FlashObject('{$fileUrl}', '{$swfId}', '{$width}', '{$height}', '{$pluginVersion}');\n"; foreach ($swfParams as $key => $value) { $code .= " ox_swf.addVariable('{$key}', '" . preg_replace('#%7B(.*?)%7D#', '{$1}', urlencode($value)) . "');\n"; } if (!empty($aBanner['transparent'])) { $code .= " ox_swf.addParam('wmode','transparent');\n"; } else { $code .= " ox_swf.addParam('wmode','opaque');\n"; } $code .= " ox_swf.addParam('allowScriptAccess','always');\n"; if ($logView && $conf['logging']['adImpressions']) { $code .= " ox_swf.write('{$id}', " . json_encode($logURL) . ", " . json_encode($fallBackLogURL) . ");\n"; } else { $code .= " ox_swf.write('{$id}');\n"; } $code .= "/" . "/ ]]> --></script>"; if ($fallBackLogURL) { $code .= '<noscript>' . _adRenderImageBeacon($aBanner, $zoneId, $source, $loc, $referer, $fallBackLogURL) . '</noscript>'; } $bannerText = $withText && !empty($aBanner['bannertext']) ? "<br />{$clickTag}{$aBanner['bannertext']}{$clickTagEnd}" : ''; return $prepend . $code . $bannerText . $append; }
function _adRenderFlash(&$aBanner, $zoneId = 0, $source = '', $ct0 = '', $withText = false, $logClick = true, $logView = true, $useAlt = false, $richMedia = true, $loc = '', $referer = '', $context = array()) { $conf = $GLOBALS['_MAX']['CONF']; $prepend = !empty($aBanner['prepend']) ? $aBanner['prepend'] : ''; $append = !empty($aBanner['append']) ? $aBanner['append'] : ''; $width = !empty($aBanner['width']) ? $aBanner['width'] : 0; $height = !empty($aBanner['height']) ? $aBanner['height'] : 0; $pluginVersion = !empty($aBanner['pluginversion']) ? $aBanner['pluginversion'] : '4'; // $imageUrlPrefix = ($_SERVER['SERVER_PORT'] == $conf['openads']['sslPort']) ? $conf['type_web_ssl_url'] : $conf['type_web_url']; if (!empty($aBanner['alt_filename']) || !empty($aBanner['alt_imageurl'])) { $altImageAdCode = _adRenderImage($aBanner, $zoneId, $source, $ct0, false, $logClick, false, true, true, $loc, $referer, false); $fallBackLogURL = _adRenderBuildLogURL($aBanner, $zoneId, $source, $loc, $referer, '&', true); } else { $altImageAdCode = "<img src='" . _adRenderBuildImageUrlPrefix() . '/1x1.gif' . "' alt='" . $aBanner['alt'] . "' title='" . $aBanner['alt'] . "' border='0' />"; $fallBackLogURL = false; } // Create the anchor tag.. $clickUrl = _adRenderBuildClickUrl($aBanner, $zoneId, $source, $ct0, $logClick); if (!empty($clickUrl)) { // There is a link $status = _adRenderBuildStatusCode($aBanner); $target = !empty($aBanner['target']) ? $aBanner['target'] : '_blank'; $swfParams = array('clickTARGET' => $target, 'clickTAG' => $clickUrl); $clickTag = "<a href='{$clickUrl}' target='{$target}'{$status}>"; $clickTagEnd = '</a>'; } else { $swfParams = array(); $clickTag = ''; $clickTagEnd = ''; } if (!empty($aBanner['parameters'])) { $aAdParams = unserialize($aBanner['parameters']); if (isset($aAdParams['swf']) && is_array($aAdParams['swf'])) { // Converted SWF file, use paramters content $swfParams = array(); $aBannerSwf = $aBanner; // Set the flag to let _adRenderBuildClickUrl know that we're not using clickTAG $aBannerSwf['noClickTag'] = true; foreach ($aAdParams['swf'] as $iKey => $aSwf) { $aBannerSwf['url'] = $aSwf['link']; $swfParams["alink{$iKey}"] = _adRenderBuildClickUrl($aBannerSwf, $zoneId, $source, $ct0, $logClick); $swfParams["atar{$iKey}"] = $aSwf['tar']; } } } $fileUrl = _adRenderBuildFileUrl($aBanner, false); $rnd = md5(microtime()); $swfId = !empty($aBanner['alt']) ? $aBanner['alt'] : 'Advertisement'; $code = "\n<div id='ox_{$rnd}' style='display: inline;'>{$altImageAdCode}</div>\n<script type='text/javascript'><!--/" . "/ <![CDATA[\nvar ox_swf = new FlashObject('{$fileUrl}', '{$swfId}', '{$width}', '{$height}', '{$pluginVersion}');\n"; foreach ($swfParams as $key => $value) { // URL encode the value, but leave any Openads "magic macros" unescaped to allow substitution $code .= " ox_swf.addVariable('{$key}', '" . preg_replace('#%7B(.*?)%7D#', '{$1}', urlencode($value)) . "');\n"; } if (!empty($aBanner['transparent'])) { $code .= "\n ox_swf.addParam('wmode','transparent');"; } $code .= "\nox_swf.addParam('allowScriptAccess','always');\nox_swf.write('ox_{$rnd}');\n"; if ($logView && $conf['logging']['adImpressions']) { // Only render the log beacon if the user has the minumum required flash player version $code .= " if (ox_swf.installedVer.versionIsValid(ox_swf.getAttribute('version'))) { document.write(\"" . _adRenderImageBeacon($aBanner, $zoneId, $source, $loc, $referer) . "\"); }"; // Otherwise log a fallback impression (if there is a fallback creative configured) if ($fallBackLogURL) { $code .= ' else { document.write("' . _adRenderImageBeacon($aBanner, $zoneId, $source, $loc, $referer, $fallBackLogURL) . '"); }'; } } $code .= "\n/" . "/ ]]> --></script>"; if ($fallBackLogURL) { $code .= '<noscript>' . _adRenderImageBeacon($aBanner, $zoneId, $source, $loc, $referer, $fallBackLogURL) . '</noscript>'; } $bannerText = $withText && !empty($aBanner['bannertext']) ? "<br />{$clickTag}{$aBanner['bannertext']}{$clickTagEnd}" : ''; return $prepend . $code . $bannerText . $append; }
function MAX_bannerPreview($bannerId) { require_once MAX_PATH . '/lib/max/Delivery/adRender.php'; $aBanner = Admin_DA::getAd($bannerId); $aBanner['storagetype'] = $aBanner['type']; $aBanner['bannerid'] = $aBanner['ad_id']; if ($aBanner['contenttype'] == 'swf') { return MAX_adRender($aBanner, 0, '', '', '', true, '', false, false) . "<br /><br />" . _adRenderImage($aBanner, 0, '', '', true, false, false, true); } else { return MAX_adRender($aBanner, 0, '', '', '', true, '', false, false); } }