﻿// FROM ESSENTIAL.ASPX

// Browser Sniffer
// sniffer_version = "1.2"
var agt = navigator.userAgent.toLowerCase();
var appVer = navigator.appVersion.toLowerCase();

// *** BROWSER VERSION ***
var is_minor = parseFloat(appVer);
var is_major = parseInt(is_minor);

var is_opera = (agt.indexOf("opera") != -1);

var is_mac = (agt.indexOf("mac")!=-1);
var iePos  = appVer.indexOf('msie');
if (iePos !=-1) {
   if(is_mac) {
       var iePos = agt.indexOf('msie');
       is_minor = parseFloat(agt.substring(iePos+5,agt.indexOf(';',iePos)));
   }
   else is_minor = parseFloat(appVer.substring(iePos+5,appVer.indexOf(';',iePos)));
   is_major = parseInt(is_minor);
}
                                  
var is_konq = false;
var kqPos   = agt.indexOf('konqueror');
if (kqPos !=-1) {
   is_konq  = true;
   is_minor = parseFloat(agt.substring(kqPos+10,agt.indexOf(';',kqPos)));
   is_major = parseInt(is_minor);
}                                 

var is_getElementById   = (document.getElementById) ? "true" : "false";
var is_getElementsByTagName = (document.getElementsByTagName) ? "true" : "false";
var is_documentElement = (document.documentElement) ? "true" : "false";

var is_safari = ((agt.indexOf('safari')!=-1)&&(agt.indexOf('mac')!=-1))?true:false;
var is_khtml  = (is_safari || is_konq);

var is_gecko = ((!is_khtml)&&(navigator.product)&&(navigator.product.toLowerCase()=="gecko"))?true:false;
var is_gver  = 0;
if (is_gecko) is_gver=navigator.productSub;

var is_moz   = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
                (agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1)  &&
                (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1)     &&
                (is_gecko) && 
                ((navigator.vendor=="")||(navigator.vendor=="Mozilla")||(navigator.vendor=="Debian")));
var is_fb = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
             (agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1)  &&
             (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1)     &&
             (is_gecko) && (navigator.vendor=="Firebird"));
var is_fx = ((agt.indexOf('mozilla/5')!=-1) && (agt.indexOf('spoofer')==-1) &&
             (agt.indexOf('compatible')==-1) && (agt.indexOf('opera')==-1)  &&
             (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1)     &&
             (is_gecko) && (navigator.vendor=="Firefox"));
if ((is_moz)||(is_fb)||(is_fx)) {
   var is_moz_ver = (navigator.vendorSub)?navigator.vendorSub:0;
   if(!(is_moz_ver)) {
       is_moz_ver = agt.indexOf('rv:');
       is_moz_ver = agt.substring(is_moz_ver+3);
       is_paren   = is_moz_ver.indexOf(')');
       is_moz_ver = is_moz_ver.substring(0,is_paren);
   }
   is_minor = is_moz_ver;
   is_major = parseInt(is_moz_ver);
}
var is_fb_ver = is_moz_ver;
var is_fx_ver = is_moz_ver;

var is_nav  = ((agt.indexOf('mozilla')!=-1) && (agt.indexOf('spoofer')==-1)
            && (agt.indexOf('compatible') == -1) && (agt.indexOf('opera')==-1)
            && (agt.indexOf('webtv')==-1) && (agt.indexOf('hotjava')==-1)
            && (!is_khtml) && (!(is_moz)) && (!is_fb) && (!is_fx));

if ((navigator.vendor)&&
    ((navigator.vendor=="Netscape6")||(navigator.vendor=="Netscape"))&&
    (is_nav)) {
   is_major = parseInt(navigator.vendorSub);
   is_minor = parseFloat(navigator.vendorSub);
}
var is_firefox	= is_fx;
var is_nav2 = (is_nav && (is_major == 2));
var is_nav3 = (is_nav && (is_major == 3));
var is_nav4 = (is_nav && (is_major == 4));
var is_nav4up = (is_nav && is_minor >= 4);
var is_navonly      = (is_nav && ((agt.indexOf(";nav") != -1) ||
                      (agt.indexOf("; nav") != -1)) );
var is_nav6   = (is_nav && is_major==6);
var is_nav6up = (is_nav && is_minor >= 6);
var is_nav5   = (is_nav && is_major == 5 && !is_nav6);
var is_nav5up = (is_nav && is_minor >= 5);
var is_nav7   = (is_nav && is_major == 7);
var is_nav7up = (is_nav && is_minor >= 7);

var is_ie   = ((iePos!=-1) && (!is_opera) && (!is_khtml));
var is_ie3  = (is_ie && (is_major < 4));
var is_ie4   = (is_ie && is_major == 4);
var is_ie4up = (is_ie && is_minor >= 4);
var is_ie5   = (is_ie && is_major == 5);
var is_ie5up = (is_ie && is_minor >= 5);
var is_ie5_5  = (is_ie && (agt.indexOf("msie 5.5") !=-1));
var is_ie5_5up =(is_ie && is_minor >= 5.5);
var is_ie6   = (is_ie && is_major == 6);
var is_ie6up = (is_ie && is_minor >= 6);

var is_aol   = (agt.indexOf("aol") != -1);
var is_webtv = (agt.indexOf("webtv") != -1);
if (is_nav6up) {
   is_minor = navigator.vendorSub;
}

// *** PLATFORM ***
var is_win   = ( (agt.indexOf("win")!=-1) || (agt.indexOf("16bit")!=-1) );
var is_win16 = ((agt.indexOf("win16")!=-1) ||
           (agt.indexOf("16bit")!=-1) || (agt.indexOf("windows 3.1")!=-1) ||
           (agt.indexOf("windows 16-bit")!=-1) );
var is_win31 = ((agt.indexOf("windows 3.1")!=-1) || (agt.indexOf("win16")!=-1) ||
                (agt.indexOf("windows 16-bit")!=-1));
var is_winnt = ((agt.indexOf("winnt")!=-1) || (agt.indexOf("windows nt")!=-1));
var is_win95 = ((agt.indexOf("win95")!=-1) || (agt.indexOf("windows 95")!=-1));
var is_win98 = ((agt.indexOf("win98")!=-1) || (agt.indexOf("windows 98")!=-1));
var is_winme = ((agt.indexOf("win 9x 4.90")!=-1));
var is_win2k = ((agt.indexOf("windows nt 5.0")!=-1) || (agt.indexOf("windows 2000")!=-1));
var is_winxp = ((agt.indexOf("windows nt 5.1")!=-1) || (agt.indexOf("windows xp")!=-1));
var is_winxp_sp2 = ((is_winxp) && (agt.indexOf("sv1")!=-1));	//Currently only works in IE
var is_win32 = (is_win95 || is_winnt || is_win98 ||
                ((is_major >= 4) && (navigator.platform == "Win32")) ||
                (agt.indexOf("win32")!=-1) || (agt.indexOf("32bit")!=-1));

var is_mac    = (agt.indexOf("mac")!=-1);


//Sets a JS variable for SSL pages for image paths etc.
var http_type;
http_type = 'http';

if(document.location.href.split(":")[0] == 'https')
{
	http_type = 'https';
}


//Writes style sheet into page
//document.write('<link rel="stylesheet" type="text/css" href="/templates/msa/includes/style.asp">');

//Create Arrays for Vault & Media Center
var vaultArray = new Array();
var vaultItemsArray = new Array();
var mediaArray = new Array();
var mediaItemsArray = new Array();
var imageArray = new Array();
var imageItemsArray = new Array();

//Image Rollover Function
function rollOver(img_name, img_src)
{
	if (document.images)
	{
		document [img_name].src = img_src;
	}
}

//Feed Item Class
function feeditem(ImageUrl, ImageWidth, ImageHeight, NewWindow, Title, Desc, MoreLinkText, Url, MovieBitrate, Onclick)
{
	this.ImageUrl = ImageUrl;
	this.ImageWidth = ImageWidth;
	this.ImageHeight = ImageHeight;
	this.NewWindow = NewWindow;
	this.Title = Title;
	this.Desc = Desc;
	this.MoreLinkText = MoreLinkText;
	this.Url = Url;
	this.MovieBitrate = MovieBitrate;
	this.Onclick = Onclick;
}

//General Purpose popUp Script
//usage: (#, #, 'name', 'url', 1/0, 1/0) where the last 2 parameters must be a 1 or 0.
function popUpWindow (window_width, window_height, window_name, window_url, _resizeable, _scrollbars, center )
{
	var options="resizable="+_resizeable+",scrollbars="+_scrollbars+",width="+window_width+",height="+window_height+"";
	if (center)
	{
	    var yScrolltop;
	    var xScrollleft;
	    var de = document.documentElement;
	    var pageWidth = window.innerWidth || self.innerWidth || (de&&de.clientWidth) || document.body.clientWidth;
	    var pageHeight = window.innerHeight || self.innerHeight || (de&&de.clientHeight) || document.body.clientHeight

	    if (self.pageYOffset || self.pageXOffset) {
		    yScrolltop = self.pageYOffset;
		    xScrollleft = self.pageXOffset;
	    } else if (de && de.scrollTop || de.scrollLeft ){	 // Explorer 6 Strict
		    yScrolltop = de.scrollTop;
		    xScrollleft = de.scrollLeft;
	    } else if (document.body) {// all other Explorers
		    yScrolltop = document.body.scrollTop;
		    xScrollleft = document.body.scrollLeft;
	    }
	    
	    options += ",left=" + (xScrollleft + (pageWidth - window_width)/2) + ",top=" + (yScrolltop + (pageHeight-window_height)/2) + "";
	}
	popupWin=window.open(window_url, window_name, options);
	return false;
}

// General Cookie Read/Write/Delete Functions
function setCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/; domain=.verizon.net;";
	document.cookie = name+"="+value+expires+"; path=/;";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	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(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}
//this function reads a specific cooke from cooke collection( For example fiosvoice cooke from user_profile cookie
function readCookieFromCollection(Collectionname, cookieName)
{
    var collection = readCookie(Collectionname);
    if(collection != null)
    {
    var nameEQ = cookieName + "=";
	var ca = collection.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(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
    }
    return null;
}
//directs the browser that opened the popup to the specified link
//usage: openerLink('URL STRING');
function openerLink(link_location)
{
	opener.location.href=link_location;
	return false;
}

// Site Search Functions


function submitAdvancedSearch()
{
	var site_search_URL = 'http://netservices.verizon.net/portal/msa/bookmark?SearchResSite&q=';
	var web_search_URL = 'http://netservices.verizon.net/portal/msa/bookmark?webSearch&searchType=basic&keywords=';
	var search_text = document.frm_advanced_search.keywords.value;
	
	if (document.getElementById('search_site').checked == true)
	{
		location.href = site_search_URL + escape(search_text);
		return false;
	}
	else
	{
		location.href = web_search_URL + escape(search_text);
		return false;
	}
}

function advancedSearchOnClick(selected_radio)
{
	var adv_search_site = 'http://netservices.verizon.net/portal/msa/bookmark?SearchAdvSite';
	var adv_search_web = 'http://netservices.verizon.net/portal/msa/bookmark?webSearch&searchType=advanced';
	
	if (selected_radio=='web')
	{
		document.getElementById('advanced_search_link').href = adv_search_web;
		document.getElementById('yahooSearchImage').style.visibility = 'visible';
	}
	else
	{
		document.getElementById('advanced_search_link').href = adv_search_site;
		document.getElementById('yahooSearchImage').style.visibility = 'hidden';
	}
	return false;
}


//LQ Auto tabbing Functions
function isNumericLQ()
{
	if (is_nav)
	{
		return;
	}
	else
	{
		get=event.keyCode;
		if((get>47&&get < 58)||(get==8)||(get==9)) 
		{
			return true;
		}
		else
		{
			event.returnValue=false;
		}
	}
}

function AutoTabLQ(hItem, maxLength, linkItem )
{	
	isNumericLQ();
	if (is_mac)
	{
		return;
	}
	else
	{
		var vKeyCode,oItem;
		oItem = eval(linkItem);	
		vKeyCode = window.event.keyCode
		if(vKeyCode==9 && window.event.shiftKey){ return; }
		switch(window.event.keyCode)
		{
			case 37 : return;
			case 39 : return;
			case 16 : return;
			case 46 : return;
		}
		if (window.event.keyCode != 9 )
		{
			if( typeof(oItem) == "object" )
			{					
				if(bAutotab && (String(oItem.value).length ==0) && (String(hItem.value).length == maxLength) && (window.event.keyCode != 8))
				{
					oItem.focus();
				}
			}
		}
	}
	bAutotab = true;
}

bAutotab = true;
function stopAutoTabLQ()
{
	bAutotab = false;
}


// Flash Player version sniffer
var flashTargetMajor = 7;
var flashTargetMinor = 0;	// The release number (example where 79 is the minor version: 6,0,79,0) - leave as 0 if uncertain

var hasFlash = false,
    hasActiveX = false,
    navPlugins = (navigator.plugins.length > 0),
    ieVer = parseFloat(navigator.appVersion.split("MSIE")[1]);

var fullVersion, majorVersion, minorVersion;

if(navPlugins || (is_ie && is_mac && ieVer >= 5)) {
	var plugin = navigator.plugins["Shockwave Flash"];
	var pluginDescription = plugin.description.split(" ");
	for(var i=0; i < pluginDescription.length; i++) {
		if(!isNaN(parseInt(pluginDescription[i]))) {
			majorVersion = parseInt(pluginDescription[i]);
			minorVersion = parseInt(plugin.description.split("r")[1]);
			break;
		}
	}
	if(majorVersion >= flashTargetMajor && minorVersion >= flashTargetMinor) hasFlash = true;
}
else if(is_win && is_ie) {
	document.write('<script language="VBScript"\>\n');
	document.write('function isHere(chk)\n');
	document.write('  isHere = false\n');
	document.write('  on error resume next\n');
	document.write('  if ScriptEngineMajorVersion > 1 then\n');
	document.write('    isHere = IsObject(CreateObject(chk))\n');
	document.write('  end if\n');
	document.write('end function\n');
	document.write('</script\>');

	//try {
		hasActiveX = isHere("msxml");
		if (!hasActiveX) {
			hasActiveX = isHere("Microsoft.ActiveXPlugin.1");
		}
	//} catch(e) {
	//	hasActiveX = false;
	//}
	
	if(hasActiveX) {
		for(var i=2; i<=flashTargetMajor; i++) {
			if(isHere("ShockwaveFlash.ShockwaveFlash."+i)) majorVersion = i;
		}
	}
	minorVersion = 0;
	if(majorVersion >= flashTargetMajor) hasFlash = true;
}
fullVersion = majorVersion+",0,"+minorVersion+",0";

//Get Onload Events
function getOLs()
{
	if(typeof window.onload=='function')
	{ 
		// test to see if onload has been set
		if(typeof ol_ol=='undefined')ol_ol=new Array(); // test if array variable already exists
		ol_ol.push(window.onload); // this captures any previous onload function
	}
}

//Movies.com MAX Player popup function
function launchMoviesMaxPlayer(destination)
{
	return popUpWindow (750, 520, 'video_center', destination, 0, 0, true );
}

//
// tooltip with html content
//
var _timeout;

function showTooltip( _tooltip_id, _this )
{
	clearTimeout(_timeout);
	var tooltip_by_id	= document.getElementById( _tooltip_id ).style;
	var object_top		= _this.offsetTop;
	var object_left		= _this.offsetLeft;
	var tooltip_width	=	350;
	var tooltip_height= 60;
	
	var browser_width;
	var browser_height;
	var offset_adjustment;
	
	// adjust tooltip position for collision between tooltip and browser chrome
	if (self.innerWidth)
	{
		browser_width = self.innerWidth;
		browser_height = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientWidth)
	{
		browser_width = document.documentElement.clientWidth;
		browser_height = document.documentElement.clientHeight;
	}
	else if (document.body)
	{
		browser_width = document.body.clientWidth;
		browser_height = document.body.clientHeight;
	}
	
	if (object_top < tooltip_height)
	{
		tooltip_by_id.top = (object_top + 20) + 'px';
	}
	else
	{
		tooltip_by_id.top = (_this.offsetTop - 60) + 'px';
	}
	
	if (browser_width - object_left < tooltip_width)
	{
		offset_adjustment = tooltip_width - (browser_width - object_left) + 6;
		tooltip_by_id.left = (_this.offsetLeft - offset_adjustment) + 'px';
	}
	else
	{
		tooltip_by_id.left = _this.offsetLeft + 'px';
	}
	
	tooltip_by_id.display = 'block';
}

function hideTooltip( _tooltip_id )
{
	var tooltip_by_id = document.getElementById( _tooltip_id ).style;
	tooltip_by_id.display = 'none';
}

function hideTooltipWithLag( _tooltip_id )
{
	_timeout = setTimeout("hideTooltip('" + _tooltip_id + "');", 500);
}

//
//Welcocme Basket 
//

function add_bookmark(url,title)
	{
  	if(document.all && is_win)
		{
    	window.external.AddFavorite(url,title);
		}
		else
		{
			alert("We're sorry, this function isn't available in your browser.\n\nPlease press [CTRL + D] or [Cmd + D].");
		}
		return false;
  }


//END FROM ESSENTIAL.ASPX

// determines whether the user is logged in, called from Flash
function isLoggedIn()
{ 
    var objLoggedIn = Object(); 
    
    if (readCookie("logout_url") != null)
    {
        objLoggedIn.IsLoggedIn = "true";
    }
    else
    {
        objLoggedIn.IsLoggedIn = "false";
    }
    return objLoggedIn;
}
// gets the username from the username cookie, called from Flash
function getUserName()
{ 
    var user_obj = Object(); 
    //user_obj.userName=readCookie("username");
    user_obj.userName = Verizon.Surround.Security.Authentication.getJSUserName();
    return user_obj;
}

function getConnection()
{ 
    var user_obj = Object();
    user_obj.userConnection = readCookie("product_type");
    return user_obj;
}

function getState()
{ 
    var user_obj = Object(); 
    user_obj.userState = readCookie("state");
    return user_obj;
}

function querystring(name)   // returns a named value from the querystring
{
   var tmp = ( location.search.substring(1) );
   var i   = tmp.toUpperCase().indexOf(name.toUpperCase()+"=");

   if ( i >= 0 )
   {
      tmp = tmp.substring( name.length+i+1 );
      i = tmp.indexOf("&");
      return unescape( tmp = tmp.substring( 0, (i>=0) ? i : tmp.length ));
   }

   return("");
}

function stringFormat(str)
{
    for(i = 1; i < arguments.length; i++)
    {
        str = str.replace('{' + (i - 1) + '}', arguments[i]);
    }
    return str;
}

// this function determines the name of the flash movie
function thisMovie(movieName) {
    if (navigator.appName.indexOf("Microsoft") != -1) {
        return window[movieName]
    }
    else {
        return document[movieName]
    }
}

function closePopupWindow(window)
{
    window.close();
}
