var redirectForm;
var AMP = '&';

function checkPartnerRedirect()
{
	redirectForm = document.forms['partnerLoginForm'];
	f = function()
	{
		redirectForm.submit();
	}

	if (redirectForm != null)
	{
		var t = setTimeout("f();",5000);
	}
}

function submitForm(formObj)
{
	formObj.submit();
}

/**
	Assumes a form element with the name of 'override' exists and sets its value to the passed screenName
*/
function setOverrideScreen(screenName)
{
	var field = document.getElementById('override');
	field.value = screenName;
}

/**
	Checks if a payment option is WorldPay and pop up the shopping page if it is
*/
function checkForWorldPay()
{
	var options =  document.getElementsByName("paymentType");

	for (var i=0; i<options.length; ++i)
	{
		if ((options[i].checked)&&(options[i].value == 1))
		{
			var link = document.getElementById("wpLink");
			var loc = link.href;
			BLUE.popup(loc,'worldPay');
		}
		if ((options[i].checked)&&(options[i].value == 2))
		{
			var link = document.getElementById("ppLink");
			var loc = link.href;
			BLUE.popup(loc,'payPal',800,600);
		}
	}
}

/** for printing */
function printit(btn)
{
	ie = false;
	gecko = false;

	if (document.all)
	{
		// Internet Explorer 4+
		ie = true;
	}
	else
	if(navigator.product == 'Gecko')
	{
		gecko = true;
	}

	if(ie)
	{
		btn.removeNode();
	}
	else if(gecko)
	{
		btn.type="hidden";
	}

	window.print();
}

/**  check if a form's "email" field is valid */
function testEmail(form,fieldName)
{
	//alert("fieldName: " + fieldName);
	var els = form.elements;
	for (var i=0; i<els.length; ++i)
	{
		var fieldObj = form.elements[i];
		if (fieldObj.name === fieldName)
		{
			var emailValue = fieldObj.value;

			if (BLUE.isWellFormedEmailAddress(emailValue))
			{
				return true;
			}
			else
			{
				alert('Please enter a valid email address!');
				fieldObj.focus();
				fieldObj.select();
				return false;
			}
		}
	}
}

/**
*	Check that tiny MCE is loaded before submitting, or wait
*/
function submitIfTinyMCE(formName)
{
	var totalWait=0;
	/*		wait 10 miliseconds each time		*/
	while (!tinyMCE.isLoaded)
	{
		totalWait += 10;
		/*		after 10 seconds, go ahead with the submit anyway	*/
		if (totalWait > 10000)
		{
			alert('There is a problem with a script on this page. Please use Ctrl-Next to submit the form.');
			document.forms[formName].submit();
			return;
		}
		pausecomp(10);
	}
	document.forms[formName].submit();
}

/**
	Banner ad for ITV Partner - javascript *mostly* taken from their site, but tweaked slightly
*/
var varCounter=0;

function ChangeImgBanner()
{
	var varWidth=650;
	var varHeight=90;
	var varImage_Path=new Array();

	varImage_Path[1]="http://www.itv-asia.com/imagesads/Header/AmericanAirlines.gif";

	varImage_Path[2]="http://www.itv-asia.com/imagesads/Header/DavesCustomTailoring.jpg";

	varImage_Path[3]="http://www.itv-asia.com/imagesads/Header/CCI.gif";

	varImage_Path[4]="http://www.itv-asia.com/imagesads/Header/DeGlobal.gif";

	varImage_Path[5]="http://www.itv-asia.com/imagesads/Header/JWT.jpg";

	varImage_Path[6]="http://www.itv-asia.com/imagesads/Header/Regus.gif";

	varImage_Path[7]="http://www.itv-asia.com/imagesads/Header/ShanghaiBusinessReview.gif";

	varImage_Path[8]="http://www.itv-asia.com/imagesads/Header/21Communications.gif";

	var varURL_Link=new Array();

	varURL_Link[1]="http://www.aa.com";

	varURL_Link[2]="http://www.tailordave.com";

	varURL_Link[3]="http://www.ccichinaltd.com";

	varURL_Link[4]="http://www.deglobal.net";

	varURL_Link[5]="http://www.jwtchina.com";

	varURL_Link[6]="http://www.en.regus.cn";

	varURL_Link[7]="http://www.sbr.net.cn";

	varURL_Link[8]="http://www.21cms.com";

	var varEntity=new Array();

	varEntity[1]="American Airlines";

	varEntity[2]="DavesCustomTailoring";

	varEntity[3]="CCI";

	varEntity[4]="DeGlobal";

	varEntity[5]="JWT";

	varEntity[6]="Regus";

	varEntity[7]="Shanghai";

	varEntity[8]="21Com";

	var varPreloadImage=new Array();
	for (c=1;c<=varImage_Path.length;c++)
	{
		varPreloadImage[c]=new Image();
		varPreloadImage[c].src=varImage_Path[c];
	}

	varCounter++;
	if (varCounter>=varImage_Path.length) varCounter=1;
	var objImage = document.getElementById('objImage');

	objImage.innerHTML = "<a href='" + varURL_Link[varCounter] + "'><img src='" + varImage_Path[varCounter] + "' alt='" + varEntity[varCounter] + "' width=" + varWidth + " height=" + varHeight + " border=0></a>";
	var timer=setTimeout("ChangeImgBanner()",15000);
}

function setCountryListener(cfid,csfid,csddDivId,includeAllValues,initValue,includeOther)
{
	document.getElementById(cfid).onchange = function() { populateCityDD(csfid,ge(cfid).value,csddDivId,includeAllValues,'',includeOther); };
	populateCityDD(csfid,ge(cfid).value,csddDivId,includeAllValues,initValue,includeOther); // let's do it to start as well...
}

function populateCityDD(csfid,cid,csddDivId,includeAllValues,initValue,includeOther)
{
	BLUE.makeRequest('services.xml?name=getCityStates&cid=' + cid + '&csfid=' + csfid + '&includeAllValues=' + includeAllValues+'&initValue='+encodeURIComponent(initValue)+'&includeOther='+includeOther,csddDivId);
}

showMatrixTable = function(divId,fi,colDefs)
{
	if(!ISUD(fi.columns))
	{
		if(ISUD(fi.columnTitles))  // provided columns, but not titles, so use colDefs..
		{
			fi.columnTitles = [];
			for(c in fi.columns)
			{
				if(fi.columns[c] == 'id')
					fi.columnTitles[fi.columnTitles.length] = 'ID';
				else
				{
					if(ISUD(colDefs[fi.columns[c]]))
						fi.columnTitles[fi.columnTitles.length] = fi.columns[c];
					else
						fi.columnTitles[fi.columnTitles.length] = colDefs[fi.columns[c]].display;
				}
			}
		}
	}
	else
	{  // didn't provide columns or columnTitles, so MUST have provided colDefs, grab first 5
		fi.columns = ['id'];
		fi.columnTitles = ['ID'];
		var maxCols = 5;
		if(!ISUD(fi.maxCols))
			maxCols = fi.maxCols;
		var i = 1;
		for(c in colDefs)
		{
			if(i < maxCols)
			{
				fi.columns[i] = c;
				fi.columnTitles[i] = colDefs[c].display;
				i++;
			}
		}
	}

	BLUE.showTable(divId,fi);
};

function showJobmailAds(data,cols)
{
	// show the matrix with a special ID field which shows a checkbox on it...
	showMatrixTable( 'result', {
		data : data,
		columns : [ '', 'id', 'title', 'body','url','edit' ],
		datacon : function(fid,o,ro,ri,ci) {
			if(ci == 0)
				return '<input type="checkbox" name="result' + ri + '"/>';
			if(fid == 'url')
				return '<a href="' + o + '" target="_blank">' + o + '</a>';
			if(fid == 'edit')
				return '<a href="" onClick="BLUE.goAjax(\'jobMailAdmin\',\'1852002532\',{ \'rowId\': ' + ro.id + '},\'editAd\'); return false;"><img src="images/pencil.gif"/></a>';
			return o;
		}
	},cols);

	EV.on(ge('result').getElementsByTagName('input'),'click',function() {
			var e = DOM.getAncestorByTagName(this,'tr');
			if(DOM.hasClass(e,'selected'))
				DOM.removeClass(e,'selected')
			else
				DOM.addClass(e,'selected');
		});

	function getSelRows()
	{
		var res = [];
		var is = ge('result').getElementsByTagName('input');
		for(i=0;i<is.length;i++)
		{
			var op = is[i];
			if(op.checked)
				res[res.length] = data[i];
		}
		return res;
	}

	EV.on('dactivate','click', function() {
			var res = getSelRows();
			if(res.length == 0)
			{
				BLUE.alert('No items selected', 'Please select the ads to activate/deactivate');
				return;
			}
			else
			{
				var ids = '';
				for(i in res)
					ids += res[i].id + ',';
				ge('ids').value = ids;
				ge('dactivateForm').submit();
			}
		});
}

