﻿            
function photocreditcontainer()
{
this.PhotoCredits = new Array();

   this.AddCredit = function(credit)
   {
       this.PhotoCredits[this.PhotoCredits.length]=credit;
   }

   this.RenderCredits = function()
   {
       if (this.PhotoCredits.length == 0)
       {
       //    document.write('Photo Credits Go Here.');
       } else {
           document.write('Photo Credits: ');
           for(var i=0; i<this.PhotoCredits.length; i++)
           {
            if ( this.PhotoCredits[i] != '' )
            {
                if (i!=0) document.write('; ');
                document.write(this.PhotoCredits[i]);
            }
           }
       }
   }
}

function getObjectIDFromURL(str)
{
    try
    {
        var m = str.match(/\/(\d+)$/);
        if(m){ return parseInt(m[1],10); }
    }
    catch(e)
    { 
    }
    
    return 0;
}


var PhotoCredits = new photocreditcontainer();

var strServiceProvider = "";
var strSearchKey = "";
var strTvObjectName = "";
var strTvObjectType = "";
var iTvObjectID = 0;
var iGridAds = 0;
var bHDTVOnlyFilter = false;
var strRealURL = "";


// grab search keyword
var qs = document.location.search;
var mt = qs.match(/keyword=([^\&]+)/i);
if(mt)
{
    strSearchKey = mt[1];
}

//
// set doc domain to tvguide.com so IFrames can communicate
//
try
{
    setDocDomain();
}
catch(err)
{
}  

function setDocDomain()
{
    var domParts = document.domain.split('.');
    switch(domParts.length)
    {
        case 0:
            break;
        case 1:
            break;
        default:
            document.domain = domParts[domParts.length-2] + '.' + domParts[domParts.length-1];
            break;
    }
}

function commentCount(iContentID)
{
    var icnt = parseInt(Math.random()*100,10);
    document.write("<div class='cmt-cnt'>" + icnt + " comments...</div>");
}

function fmtNum(i)
{
    if(parseInt(i,10)<10)
    {
        return "0" + i;
    }
    return i;
}

function cmtdt(iContentID, Yr, Mo, Dy, Hr, Mn)
{    
    //
    // articles older than 12 hours show the timestamp
    // newer articles show time respective to current
    // all times used are from tvg servers
    //
    var maxHrs = 12;
    
    var stmp = "";
    var cdt = new Date(Yr, Mo, Dy, Hr, Mn, 0, 0); 
    
    // fake random comments 
    var icnt = parseInt(Math.random()*100,10);

    // age of article in milliseconds          
    var msecs = tvgServerTimeUTC.getTime()-cdt.getTime();
    
    // cutoff age in milliseconds
    var cmsecs = maxHrs * 60 * 60 * 1000;
     
    // if less than cutoff  
    if(msecs < cmsecs)
    {
        // show time elapsed
        var ihrs = parseInt( (msecs/(60*60*1000)), 10);
        var imns = parseInt( (msecs-(ihrs*60*60*1000)) / (60*1000), 10);
        
        switch(ihrs)
        {
            case 0: stmp = imns + " minutes ago";
                break;
            case 1: stmp = ihrs + "hour " + imns + " minutes ago";
                break;
            default: stmp = ihrs + "hours " + imns + " minutes ago";
                break;                        
        }
    }
    else
    {
        // show absolute posting time
        stmp = cdt.getFullYear() + "." + fmtNum(cdt.getMonth()+1) + "." + fmtNum(cdt.getDay());                
        stmp += " " + fmtNum(cdt.getHours()) + ":" + fmtNum(cdt.getMinutes()) + " GMT";
    }                   
    document.write("<div class='cmt-cnt'>" + stmp + "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" + icnt + " comments...</div>");    
}


function setCookie(strName, strValue, iDays)
{
	var strCookie = strName + "=" + strValue + "; ";
	if(iDays!=0)
	{
	    var date = new Date();
	    date.setTime(date.getTime()+(iDays*24*60*60*1000));
		strCookie += "expires=" + date.toGMTString() + "; ";
	}
    var dom = document.domain;
    var tvg = ".tvguide.com";    
    if(dom.indexOf(tvg)==dom.length-tvg.length)
    {
        strCookie += "domain=" + tvg + "; ";
    }
	strCookie += "path=/";
	document.cookie = strCookie;
}

function readCookie(strName)
{
	var name = strName + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(name) == 0) return c.substring(name.length,c.length);
	}
	return null;
}

function deleteCookie(strName)
{
	setCookie(strName, "", -1);
}

function GetXmlHttpObject(handler)
{ 
	var objXmlHttp = null;

	if (navigator.userAgent.indexOf("Opera")>=0)
	{
		return null; 
	}
	if (navigator.userAgent.indexOf("MSIE")>=0)
	{ 
		var strName="Msxml2.XMLHTTP";
		if (navigator.appVersion.indexOf("MSIE 5.5")>=0)
		{
			strName="Microsoft.XMLHTTP";
		} 
		try
		{ 
			objXmlHttp = new ActiveXObject(strName);
			objXmlHttp.onreadystatechange = handler;
			return objXmlHttp;
		} 
		catch(e)
		{ 
			// alert("Error. Scripting for ActiveX might be disabled");
			return null;
		} 
	} 
	if (navigator.userAgent.indexOf("Mozilla")>=0)
	{
		objXmlHttp = new XMLHttpRequest();
		objXmlHttp.onload = handler;
		objXmlHttp.onerror = handler;
		return objXmlHttp;
	}
	return null;
}

var strHostName = document.location.hostname.toLowerCase();
var strTvgHost = strHostName;
var strTvgServer = "";

switch(strHostName)
{
    case "community.tvguide.com" :
    case "stage-community.tvguide.com" :
    case "tvguide.com" :
    case "video.tvguide.com" :
    case "bbp-pilot.tvguide.com" :
    case "rad1onlsps1.tvguide.com" :
    case "movies-dev.tvguide.com" :
        strTvgHost = "www.tvguide.com";
        break;
    case "movies-qa.tvguide.com" :
        strTvgHost = "qa.tvguide.com";
        break;
    case "movies-frogserv.tvguide.com" :
        strTvgHost = "frogserv.tvguide.com";
        break;
}

if(strHostName!=strTvgHost)
{
    strTvgServer = "http://" + strTvgHost;
}

function doLoginLogout(nInOut)
{
	switch(nInOut)
	{
	case 0:
		document.location=strTvgServer+'/FAP/Login.aspx?ReturnUrl='+escape(document.location.href);
		break;
	case 1:
		deleteCookie('tvguser');
		//deleteCookie('MAPCookie');
		//deleteMAPCookie();
		//document.location=document.location.href;
		document.location = strTvgServer + '/FAP/MAPAction.aspx?returnUrl=' + document.location.href;
		break;
	}
}

function doUserArea()
{
	var objLoginLeft = document.getElementById('tnLogonLogoff');
	var objLoginCenter = document.getElementById('tnSignUpUser');
	var objLoginRight = document.getElementById('tnFreeNewsletter');

	if(isLoggedInX)
	{
		document.write("<span id='topSpanLogin' style='font-size: 12px; color:#FFFFFF;'>Logged in as <a href='"+strTvgServer+"/FAP/ProfileUpdate.aspx' style='font-size:12px; color:#FFFFFF;'>"+tvgUserName+"</a></span>");
		if(objLoginLeft!=null){ objLoginLeft.innerHTML="<a href='javascript:doLoginLogout(1)'><img src='"+strTvgServer+"/images/buttons/logout.gif'></a>" }
		if(objLoginCenter!=null){ objLoginCenter.innerHTML="<a href='"+strTvgServer+"/FAP/ProfileUpdate.aspx'><img src='"+strTvgServer+"/images/buttons/mySettings.gif'></a>" }
		if(objLoginRight!=null){ objLoginRight.innerHTML="<a href='"+strTvgServer+"/FAP/ProfileUpdate.aspx'><img src='"+strTvgServer+"/images/buttons/freeNewsletter.gif'></a>" }
	}
	else
	{
	    document.write("<span id='topSpanLogin' style='font-size: 12px; color:#FFFFFF;'></span>");
		if(objLoginLeft!=null){ objLoginLeft.innerHTML="<a href='javascript:doLoginLogout(0)'><img src='"+strTvgServer+"/images/buttons/login.gif'></a>" }
		if(objLoginCenter!=null){ objLoginCenter.innerHTML="<a href='"+strTvgServer+"/FAP/Registration.aspx'><img src='"+strTvgServer+"/images/buttons/newUserSignup.gif'></a>" }
		if(objLoginRight!=null){ objLoginRight.innerHTML="<a href='"+strTvgServer+"/FAP/Newsletter.aspx'><img src='"+strTvgServer+"/images/buttons/freeNewsletter.gif'></a>" }
	}
}

function submitOVGSearch()
{
  var OVGSearchBox = document.getElementById("txtOVGSearch");
  var searchString;
  
  if(OVGSearchBox)
  {
      searchString = OVGSearchBox.value;
      if(searchString)
      {
        doOVGSearch(searchString);
      }
      else
        alert("Please enter some search text");
  }
}

function doOVGSearch(searchString)
{
  var submitURL = "http://video.tvguide.com/results.aspx?primary=SEARCH&searchvalue=";
  if(searchString)
  {
    searchString = EncodeCrossBrowser(searchString);
    submitURL += searchString;
    window.location=submitURL;
  }
}

function EncodeCrossBrowser(stringToEncode) {
    // Use JavaScript built-in function IE 5.5+ and Netscape 6+ and Mozilla
    if (typeof encodeURIComponent == "function")
        return encodeURIComponent(stringToEncode);
    else
        return escape(stringToEncode);
}

// STUBBED FUNCTIONS FOR LISTINGS
// function countListingsPage(){}
// function countGridAction(strAction, strValue){}
// function collectWebtrendsData(){}
// function countGridViewEx(strViewType, strFilter, strProviderType, nChannels, nMinutes, iAjaxLoadTime, iAjaxRender, iAjaxBytes){}

function urchinTracker(strURL){}

function HideContent(d) {
if(d.length < 1) { return; }
document.getElementById(d).style.display = "none";
}
function ShowContent(d) {
if(d.length < 1) { return; }
document.getElementById(d).style.display = "block";
}
function ReverseContentDisplay(d) {
if(d.length < 1) { return; }
if(document.getElementById(d).style.display == "none") { document.getElementById(d).style.display = "block"; }
else { document.getElementById(d).style.display = "none"; }
}

