if (document.images) {
	preloaded = new Image();
	preloaded.src = 'Images/tabOffHoverBG.png';
}

var swatches = new Array();
swatches[1] = new Array();
swatches[2] = new Array();
swatches[3] = new Array();

swatches[1][0] = '731715';
swatches[1][1] = '3C667F';
swatches[1][2] = '255024';
swatches[1][3] = '666666';
swatches[1][4] = '465F7B';
swatches[1][5] = '94638A';
swatches[1][6] = 'D77300';

swatches[2][0] = '890000';
swatches[2][1] = '444444';
swatches[2][2] = '368800';
swatches[2][3] = '533364';
swatches[2][4] = '4F6E8C';
swatches[2][5] = '5C744F';
swatches[2][6] = 'DF5400';
swatches[2][7] = '105EA0';

swatches[3][0] = '444444';
swatches[3][1] = '004BA8';
swatches[3][2] = '9C0000';
swatches[3][3] = '4F7097';
swatches[3][4] = '366318';
swatches[3][5] = '74388D';
swatches[3][6] = 'CE5C00';


var MonthName = new Array(13);
MonthName[0]  = "";
MonthName[1]  = "January";
MonthName[2]  = "February";
MonthName[3]  = "March";
MonthName[4]  = "April";
MonthName[5]  = "May";
MonthName[6]  = "June";
MonthName[7]  = "July";
MonthName[8]  = "August";
MonthName[9]  = "September";
MonthName[10]  = "October";
MonthName[11] = "November";
MonthName[12] = "December";
   
var RedirectAllowed = true;

function TextAreaInit(FormFieldID, DisplayID, Limit)
{	
	var FormField			= document.getElementById(FormFieldID);
	var DisplayDiv 			= document.getElementById(DisplayID);

	TextAreaCounter(FormField, DisplayDiv, Limit);
	
	FormField.onchange = function () { TextAreaCounter(FormField, DisplayDiv, Limit); }
	FormField.onkeyup = function () { TextAreaCounter(FormField, DisplayDiv, Limit); }
}

function TextAreaCounter(FormField, DisplayDiv, Limit)
{	var AvailableCharacters = Limit - FormField.value.length;

	if(AvailableCharacters < 0)
	{	DisplayDiv.style.color = "red";
		DisplayDiv.innerHTML = "You have have exceeded the limit by " + Math.abs(AvailableCharacters) + " characters";	}
	else
	{	DisplayDiv.style.color = "";
		DisplayDiv.innerHTML = "You have " + AvailableCharacters + " characters remaining";	}
}

function FormatNumber(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

function DataPointHover(Chart, DataPoint)
{	var GraphDataPointObject = document.getElementById("GraphDataPoint");

	GraphDataPointObject.style.top = (Chart.get_absoluteY() + 15) +'px';
	GraphDataPointObject.style.left = (Chart.get_absoluteX() + 650) + 'px';

	if(Chart.get_id()=="DevicesChart")
		GraphDataPointObject.innerHTML = "<b>" + DataPoint.get_dataPoint().get_parentSeries().get_name().replace(" STB", " ").replace("_", " ") + "</b><br />" + FormatNumber(DataPoint.get_dataPoint().get_y()) + " unique STBs<br />" + DataPoint.get_dataPoint().get_x();
	else if(Chart.get_id()=="ViewsChart")
		GraphDataPointObject.innerHTML = "<b>" + DataPoint.get_dataPoint().get_parentSeries().get_name().replace(" Views", " ").replace("_", " ") + "</b><br />" + FormatNumber(DataPoint.get_dataPoint().get_y()) + " views<br />" + DataPoint.get_dataPoint().get_x();
	else
		GraphDataPointObject.innerHTML = "<b>" + DataPoint.get_dataPoint().get_parentSeries().get_name().replace(" Views", " ").replace("_", " ") + "</b><br />" + FormatNumber(DataPoint.get_dataPoint().get_y()) + "<br />" + DataPoint.get_dataPoint().get_x();

	GraphDataPointObject.style.visibility = 'visible';        }

function DataPointExit(who, what)
{	 document.getElementById("GraphDataPoint").style.visibility = 'hidden';     }


function CalendarRangeChange(sender, eventArgs)
{	var SelectedDates = sender.get_selectedDates().get_dateArray();
	var CalendarID = sender.get_id();
	var HiddenStart = document.getElementById(CalendarID + "Start");
	var HiddenEnd = document.getElementById(CalendarID + "End");
	var HiddenLast = document.getElementById(CalendarID + "Last");

	if(SelectedDates.length==1)
	{	var StartDate;
		var EndDate;

		var LastDate;
		
		if (HiddenLast.value=="")
		{	LastDate = SelectedDates[0]; }
		else
		{	LastDate = new Date(HiddenLast.value); }
		
		if(LastDate > SelectedDates[0])
		{	StartDate = SelectedDates[0];
			EndDate = LastDate; }
		else
		{	StartDate = LastDate;
			EndDate = SelectedDates[0]; }

		LastDate = SelectedDates[0];
		
		if(StartDate!=EndDate)
		{ sender.get_selectedDates().selectRange(StartDate, EndDate, false); }
		
		HiddenStart.value = StartDate.toLocaleDateString();
		HiddenEnd.value = EndDate.toLocaleDateString();
		
		if (HiddenLast.value=="")
			HiddenLast.value = LastDate;
		else
			HiddenLast.value = "";
	}
	else
	{	HiddenStart.value = SelectedDates[0].toLocaleDateString();
		HiddenEnd.value = SelectedDates[SelectedDates.length-1].toLocaleDateString();
		HiddenLast.value = "";	}
		
	document.getElementById(CalendarID + "Clear").style.visibility = "";
}

function CalendarClear(sender)
{	document.getElementById(sender.get_id() + "Start").value = "";
	document.getElementById(sender.get_id() + "End").value = "";
	document.getElementById(sender.get_id() + "Last").value = "";

	sender.get_selectedDates().clear(); }

function ImageSelectItem(ImageSelect, Option, ImageURL)
{	document.getElementById(ImageSelect).value = Option;
	document.getElementById(ImageSelect + 'Icon').src = ImageURL;
	document.getElementById(ImageSelect + 'Items').className = 'ItemsOff';	 }

function ImageSelectShow(ImageSelect)
{	if(document.getElementById(ImageSelect + 'Items').className == 'ItemsOn')
		document.getElementById(ImageSelect + 'Items').className = 'ItemsOff';
	else
		document.getElementById(ImageSelect + 'Items').className = 'ItemsOn';
}

function switcher(i) {
	var id = document.getElementById(i);
	var s = id.src;
	var type;
	var src;
	var nsrc;

	if (s.indexOf(".gif") >= 0) {
		type = ".gif";
	} else if (s.indexOf(".jpg") >= 0) {
		type = ".jpg";
	} else if (s.indexOf(".png") >= 0) {
		type = ".png";
	} else {
		alert("This is not an image.");
	}

	src = s.replace(type, "");

	if (src.indexOf("-on") == -1) {
		nsrc = src + "-on" + type;
	} else {
		nsrc = src.replace(/-on/, "");
		nsrc += type;
	}

	id.src = nsrc;
}

function CopyToClipboard(source) {
	var sourcetext = document.getElementById(source).innerHTML.replace(/<br \/>/g, '').replace(/<br>/g, '').replace(/<BR>/g, '').replace(/&lt;/g, '<').replace(/&gt;/g, '>').replace(/&amp;/g, '&');

	if (window.clipboardData) {
		clipboardData.setData("Text", sourcetext);
	}
}

function ForgotPassword() {
	document.getElementById('reminder_text').className = 'on';
}

function EditStep(step) {
	for (i=1; i<=4; i++) {
		document.getElementById('EditStep'+i).className = (i == step) ? 'edit_step on' : 'edit_step off';
		if (document.getElementById('step_tab_'+i).className.indexOf('error') == -1) {
			document.getElementById('step_tab_'+i).className = (i == step) ? 'step_tab step_active' : 'step_tab step_inactive';
		}
		else {
			document.getElementById('step_tab_'+i).className = (i == step) ? 'step_tab step_active_error' : 'step_tab step_inactive_error';
		}
	}
}

function FormatDate(date) {
	var d = new Date(date);
	return (d.getMonth()+1) + '/' + d.getDate() + '/' + d.getFullYear();
}

function DateString(date) {
	var montharray = new Array('January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November');
	var d = new Date(date);
	return montharray[d.getMonth()] + ' ' + d.getDate() + ', ' + d.getFullYear();
}

/* Overlay positioning/close */
function setPos(tar, el) {
	var tarleft = tartop = 0;
	var tarWidth = tar.offsetWidth;
	if (tar.offsetParent) {
		do {
			tarleft += tar.offsetLeft;
			tartop += tar.offsetTop;
		} 
		while (tar = tar.offsetParent);
	}
	el.className = "on";
	el.style.top = tartop - el.offsetHeight + 10 + "px";
	el.style.left = tarleft + (tarWidth/2) + "px";
}
	
function closeOverlay(el) {
	el.parentNode.parentNode.parentNode.className = "off";
}

/* Object Validation */
function ValidString(object) {
	if (object == null || object == undefined || object == 'undefined') {
		return '';
	} else {
		return object;
	}
}

function ValidNumber(object) {
	if (object == null || object == undefined || object == 'undefined' || isNaN(object) == true) {
		return 0;
	} else {
		return parseInt(object);
	}
}

function ShowDate(object) {
	if (ValidString(object) != '') {
		var newdate = new Date(object);
		if (newdate.getFullYear() > 1900) {
			return true;
		} else {
			return false;
		}
	} else {
		return false;
	}
}

// load flash
var protocol = document.location.protocol;
var tr = 0;
function fl(url,w,h,t,p,params) {
	var name = getfilename(url);
	var fla = '<object id="' + name + '" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="' + protocol + '//download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="' + w + '" height="' + h + '">';
	fla += '<param name="movie" value="' + url + '" />';
	fla += '<param name="quality" value="high" />';
	fla += '<param name="allowFullScreen" value="true" />';
	fla += '<param name="showmenu" value="false" />';
	fla += '<param name="AllowScriptAccess" value="always" />';
	if (params != null) {
		for (attr in params) {
			fla += '<param name="'+attr+'" value="'+params[attr]+'" />';
		}
	}
	if (tr == 0 && (params == null || params["wmode"] == undefined)) {
		fla += '<param name="wmode" value="transparent" />';
	}
	fla += '<embed name="' + name + '" src="' + url + '" quality="high" pluginspage="' + protocol + '//www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" ';
	if (tr == 0 && (params == null || params["wmode"] == undefined)) {
		fla += 'wmode="transparent" ';
	}
	if (params != null) {
		for (attr in params) {
			fla += attr+'="'+params[attr]+'" ';
		}
	}
	fla += 'allowFullScreen="true" showmenu="false" AllowScriptAccess="always" width="' + w + '" height="' + h + '"></embed>';
	fla +='</object>';
	
	if ((t == null || t == '') && (p == null || p == 0 || p == '')) {
		document.write(fla);
	} else if (t != null && t != "" && (p == null || p == 0 || p == '')) {
		document.getElementById(t).innerHTML = fla;
	} else if (p!= null && p == 1) {
		parent.document.getElementById(t).innerHTML = fla;
	}
}

function getfilename(url) {
	var removeargs = url.substring(0,url.indexOf('.swf'));
	var removepaths = removeargs.substring(removeargs.lastIndexOf('/')+1,removeargs.length);
	return removepaths;
}
