CAdvBanner :: GetHTML: Bitrix method

      
<?php 
//  CAdvBanner :: GetHTML()
//  /dist/bitrix/modules/advertising/classes/general/advertising.php:4058

    
public static function GetHTML($arBanner$bNoIndex=false)
    {
        
$strReturn "";

        
// обрабатываем изображение
        
if(intval($arBanner["IMAGE_ID"]) > && $arBanner["AD_TYPE"] <> "html" && $arBanner["AD_TYPE"] <> "template")
        {
            
$arImage CFile::GetFileArray($arBanner["IMAGE_ID"]);
            if (
$arImage)
            {
                
$file_type GetFileType($arImage["FILE_NAME"]);
                
$path $arImage["SRC"];
                switch(
$file_type)
                {
                    case 
"FLASH":
                        
$arParams = array();
                        
$url $param "";
                        
$alt $a_title $a_target "";
                        if (
strlen(trim($arBanner["URL"]))>0)
                        {
                            
$param CAdvBanner::PrepareHTML($arBanner["URL"], $arBanner);
                            
$param CAdvBanner::GetRedirectURL($param$arBanner);
                            
$url $param;
                            
$arParams[] = "flash_link=".urlencode($param);
                            if (
strlen(trim($arBanner["URL_TARGET"]))>0)
                            {
                                
$arParams[] = "flash_target=".urlencode($arBanner["URL_TARGET"]);
                                
$a_target ' target="'.htmlspecialcharsbx($arBanner["URL_TARGET"]).'" ';
                            }
                        }
                        if (
strlen(trim($arBanner["IMAGE_ALT"]))>0)
                        {
                            
$alt CAdvBanner::PrepareHTML($arBanner["IMAGE_ALT"], $arBanner);
                            
$arParams[] = "flash_alt=".urlencode($alt);
                            
$a_title " title=\"".htmlspecialcharsbx($alt)."\" ";
                        }

                        if (
count($arParams)>0)
                            
$param "?".implode("&amp;",$arParams);

                        if (
$arBanner["FLASH_TRANSPARENT"] == '')
                            
$arBanner["FLASH_TRANSPARENT"] = 'transparent';

                        if (
$arBanner["FLASH_JS"] != 'Y')
                        {
                            
$strReturn '<div style="width: '.$arImage["WIDTH"].'px; height: '.$arImage["HEIGHT"].'px; padding:0; margin:0">';
                            if(
strlen(trim($arBanner["URL"]))>&& $arBanner["NO_URL_IN_FLASH"] == "Y")
                            {
                                
$strReturn .= ($bNoIndex'<noindex>':'').'<div style="position:absolute; z-index:100;"><a href="'.$url.'"'.$a_target.$a_title.($bNoIndex' rel="nofollow"':'').'><img src="/bitrix/images/1.gif" width="'.$arImage["WIDTH"].'" height="'.$arImage["HEIGHT"].'" style="border:0;" alt="'.htmlspecialcharsEx($alt).'" /></a></div>'.($bNoIndex'</noindex>':'');
                            }
                            
$strReturn .=
'<OBJECT
    classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000"
    codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0"
    id="banner_'
.$arBanner["ID"].'"
    WIDTH="'
.$arImage["WIDTH"].'"
    HEIGHT="'
.$arImage["HEIGHT"].'">
        <PARAM NAME="movie" VALUE="'
.$path.$param.'" />
        <PARAM NAME="quality" VALUE="high" />
        <PARAM NAME="bgcolor" VALUE="#FFFFFF" />
        <PARAM NAME="wmode" VALUE="'
.$arBanner["FLASH_TRANSPARENT"].'" />
        <EMBED
            src="'
.$path.$param.'"
            quality="high"
            bgcolor="#FFFFFF"
            wmode="'
.$arBanner["FLASH_TRANSPARENT"].'"
            WIDTH="'
.$arImage["WIDTH"].'"
            HEIGHT="'
.$arImage["HEIGHT"].'"
            NAME="banner"
            TYPE="application/x-shockwave-flash"
            PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer">
        </EMBED>
</OBJECT></div>'
;
                        }
                        else
                        {
                            
$strReturn "";

                            static 
$bScript null;
                            if(
$bScript === null)
                            {
                                
$bScript true;
                                
$strReturn .= '<script type="text/javascript" src="'.CUtil::GetAdditionalFileURL('/bitrix/js/advertising/flash.js').'"></script>';
                            }

                            
$altImgPath '';
                            
$arAltImage CFile::GetFileArray($arBanner["FLASH_IMAGE"]);
                            if (
$arAltImage)
                            {
                                
$altImgPath $arAltImage["SRC"];
                            }

                            
$test_id 'id'.RandString(10);
                            
$strReturn .= '<div id="'.$test_id.'" style="width: '.$arImage["WIDTH"].'px; height: '.$arImage["HEIGHT"].'px; padding:0; margin:0;">';
                            
$altHref '';
                            if(
trim($arBanner["URL"]) <> '')
                            {
                                if(
$arBanner["NO_URL_IN_FLASH"] == "Y")
                                    
$strReturn .= ($bNoIndex'<noindex>':'').'<div style="position:absolute; z-index:100;"><a href="'.$url.'"'.$a_target.$a_title.($bNoIndex' rel="nofollow"':'').'><img src="/bitrix/images/1.gif" width="'.$arImage["WIDTH"].'" height="'.$arImage["HEIGHT"].'" style="border:0;" alt="'.htmlspecialcharsEx($alt).'" /></a></div>'.($bNoIndex'</noindex>':'');
                                else
                                    
$altHref $url;
                            }
                            
$strReturn .= '</div>';
                            
$strReturn .= '<script type="text/javascript">bx_adv_includeFlash("'.$test_id.'", "'.
                                
CUtil::JSEscape($path.$param).'", "'.
                                
$arImage["WIDTH"].'", "'.$arImage["HEIGHT"].'", "'.
                                
$arBanner["FLASH_TRANSPARENT"].'", "'.
                                
CUtil::JSEscape($altImgPath).'", '.
                                (
intval($arBanner["FLASH_VER"]) <= 0'null':intval($arBanner["FLASH_VER"])).', "'.
                                
CUtil::JSEscape($altHref).'", "'.
                                
CUtil::JSEscape(htmlspecialcharsbx($arBanner["URL_TARGET"])).'", "'.
                                
CUtil::JSEscape(htmlspecialcharsbx($alt)).'");</script>';
                        }
                        break;

                    default:
                        
$alt CAdvBanner::PrepareHTML(trim($arBanner["IMAGE_ALT"]), $arBanner);
                        
$strImage "<img alt=\"".htmlspecialcharsEx($alt)."\" title=\"".htmlspecialcharsEx($alt)."\" src=\"".$path."\" width=\"".$arImage["WIDTH"]."\" height=\"".$arImage["HEIGHT"]."\" style=\"border:0;\" />";
                        if (
strlen(trim($arBanner["URL"]))>0)
                        {
                            
$url $arBanner["URL"];
                            
$url CAdvBanner::PrepareHTML($url$arBanner);
                            
$url CAdvBanner::GetRedirectURL($url$arBanner);
                            
$target = (strlen(trim($arBanner["URL_TARGET"]))>0) ? " target=\"".$arBanner["URL_TARGET"]."\" " "";
                            
$strReturn = ($bNoIndex'<noindex>':'')."<a href=\"".$url."\"".$target.($bNoIndex' rel="nofollow"':'').">".$strImage."</a>".($bNoIndex'</noindex>':'');
                        }
                        else
                        {
                            
$strReturn .= $strImage;
                        }
                        break;
                }
            }
        }

        if(
$arBanner["CODE"] <> '')
        {
            
$code $arBanner["CODE"];
            if (
$arBanner["CODE_TYPE"] == "text")
            {
                
$code TxtToHTML($code);
            }
            
$code CAdvBanner::PrepareHTML($code$arBanner);
            
$strReturn .= CAdvBanner::ReplaceURL($code$arBanner);
        }

        return 
$strReturn;
    }