var redirectForm;
var AMP = '&';

function checkPartnerRedirect()
{
	redirectForm = document.forms['partnerLoginForm'];

	if (redirectForm != null)
		setTimeout(function() { redirectForm.submit();},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()
{
	YUI().use("blue", function(Y) {
			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',1025,844);
				}
				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();
}

function isWellFormedEmailAddress(testAddress)
{
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if(filter.test(testAddress))
		return true;
	return false;
};

/**  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 (isWellFormedEmailAddress(emailValue))
			{
				return true;
			}
			else
			{
				alert('Please enter a valid email address!');
				fieldObj.focus();
				fieldObj.select();
				return false;
			}
		}
	}
}

/**
	Banner ad for ITV Partner - javascript *mostly* taken from their site, but tweaked slightly
	(Partner commented out now!)
*/
/*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);
	YUI().use("blue", function(Y) {
			var url = 'services.xml?name=getCityStates&cid=' + cid + '&csfid=' + csfid + '&includeAllValues=' + includeAllValues+'&initValue='+encodeURIComponent(initValue)+'&includeOther='+includeOther;
			BLUE.ajax(url, { eid: csddDivId });
		});
}

showMatrixTable = function(divId,fi,colDefs)
{
	YUI().use("blue","table", function(Y) {
		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);
		new BLUE.table.Table({ autoUpdate: true });
	});
};

function goAjax(page, module, parms, screen)
{
	if(ISUD(module))
		location = page + ".html";

	var qstring = '';
	var parm;
	for(parm in parms)
	{
		if(qstring.length > 0)
			qstring += "&";
		qstring += parm + '=' + parms[parm];
	}

	if(screen != null)
		qstring+="&screen=" + screen;

	//BLUE.makeRequest(page + '.html?module=' + module + "&" + qstring+"&ajax=true", 'mi'+module);

	YUI().use("blue", function(Y) {
			BLUE.ajax(page + '.html?module=' + module + "&" + qstring+"&ajax=true", { eid: 'mi'+module});
		});
};

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);*/

	YUI().use("datamatrix", function(Y) {
			new BLUE.datamatrix.DMTable( {
				tableAtts: { "class": "v2" },
				data : data,
				//columnNames : ["col1"],
				autoUpdate: true,
				pNode: "result",
				//numberOfColumnHeaders: 2,
				columnDefs: cols
				/*translate: function(ci,val,conf) {
					if(conf.columnNames[ci] == "lastLogin")
						return Y.DataType.Date.format(new Date(val), {format:"%B %d, %Y"});
					else
						return val;*/
				});

		//EV.on(ge('result').getElementsByTagName('input'),'click',function() {
		Y.all("#result tr").on("click", function(e) {
				var tr = e.currentTarget; // get row..
				log("tr: " + tr.opener());
				if(tr.hasClass('selected'))
					tr.removeClass('selected')
				else
					tr.addClass('selected');
			});

		function getSelRows()
		{
			var res = [];
			Y.all("#result tr").each(function(trNode) {
					if(trNode.hasClass('selected'))
						res.push(parseInt(trNode.getAttribute("data-index")));
				});
			return res;
		}

		Y.one("#dactivate").on("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 += data[res[i]].id + ',';
					ge('ids').value = ids;
					ge('dactivateForm').submit();
				}
			});
	}); // end YUI().use()
}

function hlMenu(id)
{
	log('id',id);
	log('href',document.location.href.indexOf('InternshipPage'));

	// for internships
	if((id == 'm-jobSearch') && (document.location.href.indexOf('InternshipPage') >= 0))
	{
		document.getElementById('m-internships').className = "headmenuitem headmenuitemSelected";
		return;
	}

	if(document.getElementById(id) !== null)
		document.getElementById(id).className = "headmenuitem headmenuitemSelected";
}

function checkAllBoxes(form, fieldPrefix)
{
	e = document.forms[form].elements;
	for(var i=0;i!=e.length;i++)
	{
		if(e[i].name.substring(0,fieldPrefix.length) == fieldPrefix)
			e[i].checked = true;
	}
}

function uncheckAll(form, fieldPrefix)
{
	e = document.forms[form].elements;
	for(var i=0;i != e.length;i++)
	{
		if(e[i].name.substring(0,fieldPrefix.length) == fieldPrefix)
			e[i].checked = false;
	}
}


