function tiiQuigoSetEnabled(b) {
	_tiiQuigoEnabled = b;
}

function tiiQuigoIsEnabled() {
	if (typeof(_tiiQuigoEnabled) == "boolean") {
		return _tiiQuigoEnabled;
	}
	return true;
}

function tiiQuigoWriteAd(pid, placementId, zw, zh, ps) {
	if (tiiQuigoIsEnabled()) {
		qas_writeAd(placementId, pid, ps, zw, zh, 'ads.adsonar.com');
	}
}

 // ### Array Helper Functions ###

function tiiArrayContains (array, value) {
	if (array != null) {
		var al = array.length;
		for (var i = 0; i < al; i++) {
			if (array[i] == value) return true;
		}
	}
	return false;
}

// ### Key=Value; Functions ###

function tiiHashKeys(string) {
	var keys = null;
	if (string != null) {
		var hash = string.split(';');
		var hl = hash.length - 1;
		if(hl > 0){
			keys = new Array();
			for(var i = 0; i < hl; i++){
				var data = hash[i].split('=');
				keys[i] = data[0].replace(' ', '');
			}
		}
	}
	return keys;
}

function tiiHashGet(string, key) {
	var value = null;
	if (string != null) {
		var keyStart = key + '=';
		var offset = string.indexOf(keyStart);
		if (offset != -1) {
			offset += keyStart.length;
			var end = string.indexOf(';', offset);
			if (end == -1) {
				end = string.length;
			}
			value = string.substring(offset, end);
		}
	}
	return value;
}

function tiiHashSet(string, key, value) {
	var string = tiiHashDelete(string, key);
	var newValue = key + '=' + value + ';';
	if (string != null) newValue = newValue + string;
	return newValue;
}

function tiiHashDelete(string, key) {
	var oldValue = tiiHashGet(string, key);
	var newString = string;
	if (oldValue != null) {
		var search = key + '=';
		var start = string.indexOf(search);
		var offset = start + search.length;
		var end = string.indexOf(';', offset) + 1;
		if (end == -1) end = string.length;
		newString = string.slice(0,start) + string.slice(end,string.length);
		return newString;

	}
	return newString;
}

function tiiGetQueryParamValue(param) {
	var startIndex;
	var endIndex;
	var valueStart;

	var qs = document.location.search;
	var detectIndex = qs.indexOf( "?" + param + "=" );
	var detectIndex2 = qs.indexOf( "&" + param + "=" );
	var key = "&" + param + "=";
	var keylen = key.length;

	if (qs.length > 1) {
		if (detectIndex != -1) {
			startIndex = detectIndex;
		} else if (detectIndex2 != -1) {
			startIndex = detectIndex2;
		} else {
			return null;
		}

		valueStart = startIndex + keylen;

		if (qs.indexOf("&", valueStart) != -1) {
			endIndex = qs.indexOf("&", startIndex + 1)
		} else {
			endIndex = qs.length
		}

		return (qs.substring(qs.indexOf("=", startIndex) + 1, endIndex));
	}

	return null;
}

// ### Date/Time Functions ###

function tiiDateGetOffsetMinutes(minutes)	{ var today = new Date(); return today.getTime() + (60000) * minutes;}
function tiiDateGetOffsetHours(hours)		{ var today = new Date(); return today.getTime() + (3600000) * hours; }
function tiiDateGetOffsetDays(days)			{ var today = new Date(); return today.getTime() + (86400000) * days; }
function tiiDateGetOffsetWeeks(weeks)		{ var today = new Date(); return today.getTime() + (604800000) * weeks; }
function tiiDateGetOffsetMonths(months)		{ var today = new Date(); return today.getTime() + (259200000) * months; }
function tiiDateGetOffsetYears(years)		{ var today = new Date(); return today.getTime() + (31536000000) * years; }
 var adConfig = new TiiAdConfig("3475.enw");
adConfig.setCmSitename("cm.enw");



adConfig.setRevSciTracking(true);

function adSetTarget() {}

function htmlAdWH() {}

function adSetType() {} 


function openLink(url,target) {
	if (target) {
		new_window= window.open(url);
	} else {
		location.href = url;
	}
}

var daysArray = new Array("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday");
var monthsArray = new Array("January","February","March","April","May","June","July","August","September","October","November","December");


function getDateCurrent() {	
	var today = new Date();
	var monthNumber = (today.getMonth());
	var monthName = monthsArray[monthNumber].substr(0,3);
	var weekDayNumber = (today.getDay());
	var weekDayName = daysArray[weekDayNumber];
	var dayNumber=today.getDate();
	if (dayNumber < 10){
		dayNumber="0" + dayNumber;
	}
	var yearNumber = today.getYear();
	if (yearNumber < 1000) {
		yearNumber+=1900;
	}
	document.write(weekDayName + ", " + monthName + ". " + dayNumber + ", " + yearNumber);
}

function getHeaderDateCurrent () {	
	var today = new Date();
	var monthNumber = (today.getMonth());
	var monthName = monthsArray[monthNumber];
	var weekDayNumber = (today.getDay());
	var weekDayName = daysArray[weekDayNumber];
	var dayNumber=today.getDate();	
	var yearNumber = today.getYear();
	if (yearNumber < 1000) {
		yearNumber+=1900;
	}
	document.write(weekDayName + ", " + monthName + " " + dayNumber + ", " + yearNumber);
}

function highLightHeaderOld (channelID) {	
	var tab;
	
	switch (channelID.toLowerCase()) {
		case "books": 
			tab=document.getElementById('books');		
			break;
		case "inside":
		case "services":
		case "inside ew":
			tab=document.getElementById('inside');
			break;
		case "dvd": 
			tab=document.getElementById('dvd'); 	
			break;
		case "music": 
			tab=document.getElementById('music');
			break;
		case "tv": 
			tab=document.getElementById('tv');
			break;
		case "movies":
		case "movie":
		case "movieheadlines": 
			tab=document.getElementById('movies');
			break;
		case "newsandnotes":
		case "news":
		case "charts":
		case "news + notes":
			tab=document.getElementById('news');
			break;			
		case "home": 
			tab=document.getElementById('home');
			break;			
		case "video": 
			tab=document.getElementById('video');
			break;
	}	
	if (tab != null ) {
		tab.className = "selectedpage";
	}
}

function highLightHeaderTab (channelID) {	
	var prefix = (document.getElementById('nav-main')) ? 'nav-' : 'pn';
	var channelMap = {
		'services':       'inside',
		'inside ew':      'inside',
		'movie':          'movies',
		'movieheadlines': 'movies',
		'newsandnotes':   'news',
		'charts':         'news',
		'news + notes':   'news'
	};
	var channel = channelID.toLowerCase();
	var tabId = prefix.concat(channelMap[channel] || channel);
	var tab = document.getElementById(tabId);
	if (tab) {
		tab.className = 'selectedpage';
	}
}

function getReleaseDateDiff(releaseDate,mtype) {	
	var now = new Date();	
	var release = new Date(releaseDate);
	var difference = release.getTime() - now.getTime(); 
	difference = Math.floor(difference / (1000 * 60 * 60 * 24)) + 1;
	if (difference > 0 && difference != 1) {
		document.write('<div class="release clear"><span class="txt">'+mtype+' Release</span><span class="days"><b>'+difference+'</b> Days</span></div>');
	} else if (difference == 1) {
		document.write('<div class="release clear"><span class="txt">'+mtype+' Release</span><span class="days"><b>'+difference+'</b> Day</span></div>');
	} else if (difference == 0) {
		document.write('<div class="release clear"><span class="txt">'+mtype+' Release</span><span class="days"><b>today</b></span></div>');
	}	
}

function getComingSoonReleaseDateDiff(releaseDate) {	
	var now = new Date();	
	var release = new Date(releaseDate);
	var difference = release.getTime() - now.getTime(); 
	difference = Math.floor(difference / (1000 * 60 * 60 * 24)) + 1;
	if (difference > 0 && difference != 1) {
		document.write('<div class="remind"><span class="num">'+difference+'</span><br /><span class="days"> Days</span></div>');
	} else if (difference == 1) {
		document.write('<div class="remind"><span class="num">'+difference+'</span><br /><span class="days"> Day</span></div>');
	} else if (difference == 0) {
		document.write('<div class="remind"><span class="num">'+difference+'</span><br /><span class="days"> today</span></div>');
	}	
}

// used to send aol message
var IM_global_title;
var IM_global_url;
var IM_default_text_IE = "Here's%20something%20that%20may%20interest%20you%20from%20EW.com:";
var IM_default_text_OT = "Here's something that may interest you from EW.com:";

function openPrintWin(which) {
	which.setAttribute('href', '?print');
	return true;
}

function popMailWin() {
    var pageURL = document.URL;
	if (pageURL.substring(pageURL.length-1)=="#") {
		pageURL = pageURL.substring(0, pageURL.length-1);
	}
		
	var pageTitle = escape(self.document.title);
	var formURL   = "https://cgi.timeinc.net/cgi-bin/mail/secure/mailurl2friend.cgi?path=/ew/static/cgi/mail/mailurl2friend/&url="  + pageURL + "&group=ew&title=" + pageTitle; 
	showCenteredPopup('emailpop', formURL, 'scrollbars=1', 540, 450);
    return false;
}

function popGameMailWin(gameUrl, gameTitle) {
    var pageURL = gameUrl;
	if (pageURL.substring(pageURL.length-1)=="#") {
		pageURL = pageURL.substring(0, pageURL.length-1);
	}
	var pageTitle = gameTitle;
	var formURL   = "https://cgi.timeinc.net/cgi-bin/mail/secure/mailurl2friend.cgi?path=/ew/static/cgi/mail/mailurl2friend/&url="  + pageURL + "&group=ew_games&title=" + pageTitle; 
	showCenteredPopup('emailpop', formURL, 'scrollbars=1', 540, 450);
    return false;
}

function showCenteredPopup(name, url, features, width, height) {
	var top = (window.screen.height / 2) - height / 2;
	var left = (window.screen.width / 2) - width / 2;
	if (features == null || features == '') {
		features = "scrollbars=yes,toolbar=no,menubar=no,status=no,location=no";
	}
	window.open (url, name.replace (' ', '_'), features + ",top=" + top + ",left=" + left + ",width=" + width + ",height=" + height);
}

function sendAIM() {
    var url   = document.URL;
	if (url.substring(url.length-1)=="#") {
		url = url.substring(0, url.length-1);
	}
		
	
	
	var title_OT = self.document.title;
    var title = escape(self.document.title);    
    title = title.replace(" ", "+")
	var uAgt = navigator.userAgent.toLowerCase();
	var isIE = uAgt.indexOf(" msie ") !=  - 1;
	var isAOLBrowser = uAgt.indexOf(" america online browser ") !=  - 1;
	if (!isIE){
		var message = IM_default_text_OT + '<br><a href="' + url + '">' + title_OT + '</a>';
	} else if (isAOLBrowser){
		var message = IM_default_text_OT + '<br><a href="' + url + '">' + title + '</a>';
	} else {
		var message = escape(IM_default_text_IE) + "%3cbr%3e%3ca+href=%22" + escape(url) + "%22%3e" + escape(title) + "%3c%2fa%3e";
	}
	try {
		location.replace("aim:goIM?message=" + message);
	}
	catch (e){
		AIMExpress.start();
		location.replace("aim:goIM?message=" + message);
	}
	return false;
}


function sendIM(title, url) {
	if (title == ''){
		title = 'Click here to checkout';
	}
	IM_global_title = title;
	IM_global_url = url;
	var uAgt = navigator.userAgent.toLowerCase();
	var isAOL = uAgt.indexOf(" aol ") !=  - 1;
	var isIE = uAgt.indexOf(" msie ") !=  - 1;
	if (!isAOL) {
		if (!isIE) {
			sendAIM();
		} else {
			if (!canRunAIM()) {
				AIMExpress.start();
			} else {
				sendAIM();
			}
		}
	}
	else {
		sendAOLCLNT();
	}
}

// To launch the STAF User Console
function openstaf(title, url, channel) {
	window.open("http://sendtoafriend.aol.com?type=disp&channelurl=" + url + "&title=" + title + "&channel=" + channel + "&url=" + url + "", null, "height=420,width=296,statusbar=0,toolbar=no,menubar=no,location=no")
}

// To send IM through AOL Client Messenger
function sendAOLCLNT() {
	var title = IM_global_title;
	var url = IM_global_url;
	var uAgt = navigator.userAgent.toLowerCase();
	var isAOL = uAgt.indexOf(" aol ") !=  - 1;
	var isIE = uAgt.indexOf("msie") !=  - 1;
	try {
		if (!isAOL){
			if (!isIE){
				document.location = "aol://9293::" + IM_default_text_OT + "<br><a href='" + url + "'>" + title + "</a>";
			} else {
				document.location = "aol://9293::" + IM_default_text_IE + "%3cbr%3e%3ca href='" + url + "'%3e" + title + "%3c%2fa%3e";
			}
		} else {
			document.location = 'aol://9293::' + IM_default_text_OT + '<br><a href="' + url + '">' + title + '</a>'
		}
	}
	catch (e){
		AIMExpress.start();
	}
}

// To check AOL Client install in the local machine or not
function canRunAOLClient() {
	var agt = navigator.userAgent.toLowerCase();
	var isIE = (agt.indexOf("msie") !=  - 1);
	if (isIE){
		var a = document.anchors;
		for (var i = 0; i < a.length; i++){
			if (a[i].name == "aolclientnotfound"){
				return false;
			}
		}
	}
	return true;
}

// To check AIM install in the local machine or not
function canRunAIM() {
	var agt = navigator.userAgent.toLowerCase();
	var isIE = (agt.indexOf("msie") !=  - 1);
	if (isIE){
		var a = document.anchors;
		for (var i = 0; i < a.length; i++){
			if (a[i].name == "aimnotfound"){
				return false;
			}
		}
	}
	return true;
}

ewMagicNumberObject = function(adWidth,adHeight,magicNumber){
	this.adWidth=adWidth;
	this.adHeight=adHeight;
	this.magicNumber=magicNumber;
	this.placementKey=adWidth + "x" + adHeight;
	this.placements=new Array();
	this.placements[this.placementKey]=magicNumber;
}

ewMagicNumberObject.prototype.getMagicNumber = function(adWidth,adHeight) {
	return this.placements[this.placementKey];
}

var ewMagicNumberObj = new ewMagicNumberObject('','','');
var ewHeaderMagicNumberObj = new ewMagicNumberObject(365,104,93223283);

var printable = false;
if (document.location.href.indexOf("?") != -1) {
	var params = document.location.href.split("?")[1];
	printable = (params.indexOf("print") != -1);
}
if (printable) {
	document.writeln('<link rel="stylesheet" type="text/css" href="/ew/css/print/0,,,00.css" />');
}


//Added 20070927 k.carter

function ewGetSTIScribbleboardPage () {
// Important to intialize to 1 
var result = 1;

if ( ew_queryVariableExists( 'commentsPage' ) == 1 ) {
	
	var temp = tiiGetQueryParamValue( 'commentsPage' );
	temp = parseInt( temp );
	if ( isNaN( temp ) == 0 && temp > 1 ) {
		result = temp;
	}
	
}



return result;
}	



function ewWriteSTIScribbleboardPagination (articleCurl) {
	//kc: Navigation to comments on Gallery pages only
	var commentsAnchor = ""
	 if (document.location.href.indexOf("/gallery/") != -1) {
	 	commentsAnchor = "&#pagecomments"
	 }
	 
	 if ( sti_scribbleboardPages > 1 && commentsPage > 1  ) {
		var previousPage = commentsPage - 1;
		//document.write('<a href="?commentsPage=1">[First]</a> ');
		document.write ('<a href="'+ articleCurl +'" class="retMain">Back to Main</a>');
		document.write('<a href="?commentsPage=' + previousPage + commentsAnchor + '" class="prev">Previous</a>');

	} 
	if ( sti_scribbleboardPages > 0 && commentsPage >= 1 ) {
		document.write( ' Page ' + commentsPage + ' of ' + sti_scribbleboardPages + '  ' );
	}
	
	if ( sti_scribbleboardPages > 1 && commentsPage < sti_scribbleboardPages ) {
		var nextPage = commentsPage + 1;
		document.write( '<a href="?commentsPage=' + nextPage +  commentsAnchor + '" class="next">Next</a>' );
	}
	
	
}

function ewWriteSTIScribbleboardTopHeader (articleCurl) {

	if ( sti_scribbleboardPages > 0 ) {
		document.write('<div class="commPagi">'); 	
		ewWriteSTIScribbleboardPagination(articleCurl);
		document.write( '</div><!--/commPagi-->' );
	}
}

function ewWriteSTIScribbleboardBottomHeader (articleCurl) {
	
	if ( sti_scribbleboardPages > 0  ) {
		document.write('<div class="commPagi cpBottom">'); 
		ewWriteSTIScribbleboardPagination(articleCurl);
		document.write( '</div><!--/commPagi-->' );
	}
}



	
