﻿//HELPER METHODS ---------------------------------------------------------
//returns the requested GET parameter from the URL
function getURLParam(param, defaultValue) 
{
    var regex = '[?&]' + param + '=([^&#]*)';
    var results = (new RegExp(regex)).exec(window.location.href);
    if(results) 
        return results[1];
    return defaultValue;
}

//prmNames are sepeared by pipe |
function removeParamterFromURL (url, prmNames)
{
    var prmNamesToRemove = prmNames.split('|');
    var nQPos = url.toString().indexOf("?");
    if (nQPos <0 || prmNamesToRemove.length ==0)
        return url;
        
    var locs = url.toString().split('?');
    if (locs.length <= 1)
        return url;
    
    var newParameters = "";
    var prmPart = escape(locs[1]);

    var prms = locs[1].split('&');
    if (prms.length == 0)
        return pureUrl;
    var n=0; 
    for (n=0; n<prms.length; n++)
    {
        var prm = prms[n].toLowerCase();
        var exist = false;
        var i=0;
        
        for (i=0; i<prmNamesToRemove.length; i++)
	{
	    var prmToRemove = prmNamesToRemove[i].toLowerCase();
            if (prm.indexOf(prmToRemove) >=0)
                exist = true;    
    	}
        if (!exist)
        {
            if (newParameters.length ==0)
                newParameters = "?"; 
            else 
                newParameters = "&"; 
            newParameters += prms[n];
        }            
    } 
    return locs[0] +  newParameters;       
}


function setShowsLinkWithoutApostrophe  (linkId, title, linkName)
{
    if (title.indexOf("'", "") >= 0)
    {
        title = title.replace("'", "");
        
        if (linkName != null && linkName != 'undefined')
        {
            var links = document.getElementsByName(linkName);
            if (links != null && links.length>0)
            {
                var i = 0;
                for (i=0; i<links.length; i++)
                    links[i].href= "/scripts/redirect.aspx?shows/" + title + "/url"; 
            }    
        }
        else
            document.getElementById(linkId).href= "/scripts/redirect.aspx?shows/" + title + "/url";
    }
}

// SEARCH ----------------------------------------------------------------
var currentSearchTextBox=1;
function submitSearch(editBoxId)
{

    var searchBoxValue = document.getElementById(editBoxId).value.toLowerCase(); 
	
    if (searchBoxValue.indexOf("search for your") >=0 || 
        searchBoxValue == null || jQuery.trim(searchBoxValue).length == 0)
        searchBoxValue = "''";
    else 	
        searchBoxValue = escape(searchBoxValue);

    document.location = "/entertainment/search/index.html?q=" + searchBoxValue;
    return true;
}


// AD SYNCHING ------------------------------------------------------------------------
var adTile = 1;
var ordinal = Math.floor( (Math.random() * 100000000));


function loadAds ()
{
    var banner = document.getElementById("thetopContainer");
    var bbox = document.getElementById("bigboxContainer");
    
//    if (banner != null && banner != 'undefined')
//    {
//        var adUrl = getAdUrl ("thetop", ""); 
//        multiTagSyncRoadBlock ("thetop");
//    }   
    if (bbox != null && bbox != 'undefined')
    {
        var adUrl = getAdUrl ("bigbox", "");
        multiTagSyncRoadBlock ("bigbox");
    }   
}


function getAdSize(type) 
{ 
    var size = "";
    if( type.toLowerCase() == 'banner' || type.toLowerCase() == 'thetop'  ) 
        size = "468x60";

    if( type.toLowerCase() == 'bbox' || type.toLowerCase() == 'bigbox' ) 
        size = "250x250";

    if( type.toLowerCase() == 'sky' ) 
        size = "120x240";
        
    return size;        
} 

function getAdUrl(location, kws) 
{
    var zone = getZone();
    var keywords = "kw=globaltv;" + 
                getKeywords(zone) + 
                ";" + kws;
    var adSize = getAdSize (location);  
    var adUrl = "";  

    adUrl = "http://ad.ca.doubleclick.net/N3081/adi/global_prg.com" + zone + ";" + keywords + ";sz=" + adSize + ";tile=1;dc_seed=213106815";
    
    return adUrl;
}

function getZone ()
{
    var url = "";
    var startPos = 0;

    //remove the domain...
    url = document.location.toString().replace("http://", "");
    startPos = url.indexOf("/");
    url = url.substring(startPos, url.length);
    
    //remove question marks
    startPos = url.indexOf("?");
    if (startPos>0)
        url = url.substring(0, startPos);

    //remove #
    startPos = url.indexOf("#");
    if (startPos>0)
        url = url.substring(0, startPos);
            
    //remove html, htm...
    url = url.replace(".html", "").replace(".htm", "");
    
    return url + ";";    
}  

function getKeywords (zone)
{
    if (zone == null || zone == 'undefined')
        return "";
    var parts= zone.split('/');
    if (parts == null || parts == 'undefined' || parts.length ==0)
        return "";
    var i=0;
    var kws = "";
    
    for (i=0; i<parts.length; i++)
        if (parts[i] != null && parts[i] != "" && parts[i] != "/")
            kws+= "kw=" + parts[i] + ";";
    return kws;
}  


//FOR VIDEO CALL ----------------------------------------------
function multiTagSyncRoadBlock (adType, adTag)
{
    if (!document.createElement) 
        return true;
    
    var adContainer = document.getElementById(adType + "Container");
    if (adContainer == null || adContainer =='undefined')
        return true;
    
    var iframeName = "frm" + adType;
    var frameObject;

    //CLEAN THE CONTAINER ----------------
    adContainer.innerHTML = "";

    //GET SIZE ---------------------------
    var adStyle_Width = "100px";
    var adStyle_Height = "100px";
    
    if( adType.toLowerCase() == 'banner' ) 
    {
        adStyle_Width = "728px";
        adStyle_Height = "90px";  
    }
    else if( adType.toLowerCase() == 'bbox' ) 
    {
        adStyle_Width = "300px";
        adStyle_Height = "250px";  
    }

    //CREATE IFRAME -----------------------
    try {
        var tempIFrame=document.createElement('iframe');
        tempIFrame.setAttribute('id', iframeName);
				tempIFrame.src = "javascript:false";
        tempIFrame.style.border='0px';
        tempIFrame.style.width= adStyle_Width;
        tempIFrame.style.height= adStyle_Height; 
        frameObject = adContainer.appendChild(tempIFrame);
		
        if (document.frames) {
	        // this is for IE5 Mac, because it will only
	        // allow access to the document object
	        // of the IFrame if we access it through
	        // the document.frames array
	        frameObject = document.frames[iframeName];
        }
    } catch(exception) {
        // This is for IE5 PC, which does not allow dynamic creation
        // and manipulation of an iframe object. Instead, we'll fake
        // it up by creating our own objects.
        iframeHTML='<iframe src="javascript:false" id="' + iframeName + '" style="';
        iframeHTML+='border:0px;';
        iframeHTML+= adStyle_Width;
        iframeHTML+= adStyle_Width;
        iframeHTML+='"><\/iframe>';
        adContainer.innerHTML+=iframeHTML;
        frameObject = new Object();
        frameObject.document = new Object();
        frameObject.document.location = new Object();
        frameObject.document.location.iframe = document.getElementById(iframeName);
        frameObject.document.location.replace = function(location) 
        {
	        this.iframe.src = location;
        }
    }
    if (navigator.userAgent.indexOf('Gecko') !=-1 && !frameObject.contentDocument) {
        // we have to give NS6 a fraction of a second
        // to recognize the new IFrame
        setTimeout('callToServer()',10); //setTimeout('callToServer("'+ awFormName +'")',10);
        return false;
    }
	
	var frmDocument;
    if (frameObject.contentDocument) {
        // For NS6
        frmDocument = frameObject.contentDocument; 
    } else if (frameObject.contentWindow) {
        // For IE5.5 and IE6
        frmDocument = frameObject.contentWindow.document;
    } else if (frameObject.document) {
        // For IE5
        frmDocument = frameObject.document;
    } 
    else 
    {
        return true;
    }

    frmDocument.location.replace(adTag);
    return false;
}




