/**
 * redirect
 * desc: redirect to another page
 * params: page: url path to page
 */

var resetform = true;
var blockoff = false;

function redirect(page) {
	window.location = page;
}


function record_start(uid, page) {
	st_url = baseurl+'app/ajax/record_times.pjx?point=start&sid='+uid+'&page='+page;
	ajax_do (st_url, 'ajx_start', false);
}

function record_stop(uid, page) {
	st_url = baseurl+'app/ajax/record_times.pjx?point=stop&sid='+uid+'&page='+page;
	ajax_do (st_url, 'ajx_stop', false);
}

function open_details_div(divid) {
	if (div = document.getElementById('div_'+divid)) {
		if (div.style.display == 'block') {
			div.style.display = 'none';
		} else {
			div.style.display = 'block';
		}
	}
}

var newwin = 0;

function open_window(pop, width, height) {
	newwin = 0;
	swidth = self.screen.width;
	sheight = self.screen.height;
	left = (Math.round(swidth / 2)) - (Math.round(width / 2));
	btop = (Math.round(sheight / 2)) - (Math.round(height / 2)); 
	
	try{
		newwindow=window.open(pop,'infobox','width='+width+',height='+height+',left='+left+',top='+btop+',toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,copyhistory=no, resizable=yes');
		window.newwindow.focus();
		setTimeout('newwin = 1;', 500);
		return;
	}
	catch (e){
		alert(e);
	}
	
}

window.onfocus = closePopup;

function closePopup() {
	if (window.newwindow && window.name != 'infobox' && newwin == 1 && window.newwindow.name != 'uploadStuff') {
		window.newwindow.close();
		newwin = 0;
	}
}



function openEmail(mid, mailbox) {
	emailfrm = document.getElementById('composespaceform');
	document.getElementById('page').value = mid;
	document.getElementById('mailbox').value = mailbox;
	submitFormCustom(emailfrm, 'mailspace', 'insert1', false);
}


document.onclick = record;

function record(e) {
	rtn = true;
	if (!e) var e = window.event;
	var tg = (window.event) ? e.srcElement : e.target;
	if (tg.type == 'button' || tg.type == 'image') {		
		if (tg.form) {
			if (tg.form.id) {
				thsform = document.getElementById(tg.form.id);
				form_handler(thsform);
			}
		}
		return false;
	} else if (tg.nodeName=='INPUT' && tg.type != 'checkbox' && tg.type != 'radio') {
		tg.style.border = 'none';
		tg.style.border = '2px inset';
	} else if (tg.nodeName=='SELECT') {
		tg.style.border = 'none';
		tg.style.border = '2px inset';
	}
	return rtn;
}

document.onkeypress = determineKey;

function determineKey(e2) {
	if (!e2) var e2 = window.event;
	if (e2.keyCode == 13) {
		var bg = (window.event) ? e2.srcElement : e2.target;
		if (bg.form) {
			var thistag = bg.tagName;
			if ('TEXTAREA' != thistag) {
				if (bg.form.id != '') {
					thsform = document.getElementById(bg.form.id);
					form_handler(thsform);
					return false;
				} else if (bg.form.action != "") {
					bg.form.submit();
				}
			} 
		}
		rtn = false;
	}

}



function form_handler(frm) {
	fid = frm.id;
	if (fid == ''){
		alert('NO FORM ID!!!');
	}
	if (fid == 'contactForm'){
		frm.setAttribute("name", "contactForm");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'regForm1'){
		frm.setAttribute("name", "regForm1");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'regForm2'){
		frm.setAttribute("name", "regForm2");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'buyReg1'){
		frm.setAttribute("name", "buyReg1");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'buyReg2'){
		frm.setAttribute("name", "buyReg2");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'signin'){
		frm.setAttribute("name", "signin");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'nopass'){
		frm.setAttribute("name", "nopass");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'updatemydetails'){
		frm.setAttribute("name", "updatemydetails");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'performAction'){
		frm.setAttribute("name", "performAction");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'magsub'){
		frm.setAttribute("name", "magsub");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'sendToFriend'){
		frm.setAttribute("name", "sendToFriend");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'sendemailtofriend'){
		resetform = false;
	} else if (fid == 'getSuburbs'){
		frm.setAttribute("name", "getSuburbs");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'buyer_match'){
		frm.setAttribute("name", "buyer_match");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'buyer_match_1'){
		frm.setAttribute("name", "buyer_match_1");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'buyer_match_2'){
		frm.setAttribute("name", "buyer_match_2");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'buyer_match_3'){
		frm.setAttribute("name", "buyer_match_3");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'buyer_match_4'){
		frm.setAttribute("name", "buyer_match_4");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'buyer_match_5'){
		frm.setAttribute("name", "buyer_match_5");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'subTestimonial'){
		frm.setAttribute("name", "subTestimonial");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'buyer_detailsUpdate'){
		frm.setAttribute("name", "buyer_detailsUpdate");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'sendSimilar'){
		frm.setAttribute("name", "sendSimilar");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'sendSimilarEmail'){
		frm.setAttribute("name", "sendSimilarEmail");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'bcpass'){
		frm.setAttribute("name", "bcpass");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'vcpass'){
		frm.setAttribute("name", "vcpass");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'udvend') {
		frm.setAttribute("name", "udvend");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'updateVehicleBox') {
		frm.setAttribute("name", "updateVehicleBox");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'updateFittingsBox') {
		frm.setAttribute("name", "updateFittingsBox");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'updateVendorStaff') {
		frm.setAttribute("name", "updateVendorStaff");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'selRegister') {
		frm.setAttribute("name", "selRegister");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'updateLoginDets') {
		frm.setAttribute("name", "updateLoginDets");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'updateLoginDets2') {
		frm.setAttribute("name", "updateLoginDets2");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'recoverPass') {
		frm.setAttribute("name", "recoverPass");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'updateBuyerLookingFor') {
		frm.setAttribute("name", "updateBuyerLookingFor");
		frm.setAttribute("method", "POST");
		resetform = false;
	} else if (fid == 'updateCaptcha') {
		frm.setAttribute("name", "updateCaptcha");
		frm.setAttribute("method", "POST");
		resetform = false;
	}

	//alert(frm.method+" "+frm.id);
	if (frm.name && frm.method ) {
		if (validate(frm)) {
			place1 = 'insert1';
			place2 = 'insert2';
			if (frm.place1) {
				place1 = frm.place1.value;
			} 
			if (frm.place2) {
				place2 = frm.place2.value;
			} 
			submitFormCustom(frm, place1, place2, true);
		} 
	} else {
		//alert('If you see this popup, please refresh your browsers cache.  You can do this by holding down CTRL while refreshing the page (hold down SHIFT if using firefox)');
	}
}


function updateFCK(inst) {
	var oEditor = FCKeditorAPI.GetInstance(inst);
	if (document.getElementById('storediv')){
		oEditor.InsertHtml(document.getElementById('storediv').innerHTML);
	} else {
		alert('div with id "storediv" must exist on page');
	}
}

function getFCK(inst, dest) {
	var oEditor = FCKeditorAPI.GetInstance(inst);
	htmval = oEditor.GetXHTML();
	
	if (document.getElementById(dest)) {
		document.getElementById(dest).value = htmval;
	}
	//alert(document.getElementById(dest).value);
	return true;
}

function selectAll(dparentid, selbx) {
	dparent = document.getElementById(dparentid);
	inptlst = dparent.getElementsByTagName('INPUT');
	if (inptlst.length > 0) {
		for (i=0; i < inptlst.length; i++) {
			if (inptlst[i].type=='checkbox'){
				if (selbx.checked == false) {
					inptlst[i].checked = false;
				} else {
					inptlst[i].checked = true;
				}
			}
		}
	}
}


// google suggest type function for search

// Detect if the browser is IE or not.
// If it is not IE, we assume that the browser is NS.

var IE = document.all?true:false;

// If NS -- that is, !IE -- then set up for mouse capture
if (!IE) document.captureEvents(Event.MOUSEMOVE);

// Set-up to use getMouseXY function onMouseMove
document.onmousemove = getMouseXY;

// Temporary variables to hold mouse x-y pos.s
var tempX = 0;
var tempY = 0;
var area_x = 0;
var area_y = 0;
var ht = 0;
var wd = 0;
var a = 0;
var b = 0;
//var open = false;
var div_id = '';
var is_altered = '';

function test1(objthis) {
	if (document.getElementById('d').style.display == "block") {
		document.getElementById('d').style.display = "none";
	}
	objid = 'td_'+objthis.id;
	oid = objthis.id;
	//alert(objid+' '+oid);
	//document.getElementById('changed_id').value = oid;
	obj = document.getElementById(objid);
	objwidth = document.getElementById(objid).style.width.replace('px', '');
	a = getY(obj);
	b = getX(obj);
	div_id = oid;
	height = document.getElementById('d').style.height.replace('px', '');
	width = document.getElementById('d').style.width.replace('px', '');
	diff = 0;
	if (width > objwidth) {
		diff = Number(width) - Number(objwidth);
	}
	ht = a + 16 + Number(height);
	wd = b + Number(width);
	
	document.getElementById('d').style.position = "absolute";
	document.getElementById('d').style.top = a + 22 + 'px';
	document.getElementById('d').style.left = (b - diff) + 'px';
	document.getElementById('d').style.display = "block";
}

function openTimeWindow(objectUsed, itemID) {
	document.getElementById('d').style.display = 'none';
	document.getElementById('d').innerHTML = '';
	thisselForm = document.getElementById('updateTimesDropdown');
	document.getElementById('sfitemID').value = itemID;
	document.getElementById('d').style.width = document.getElementById('td_'+objectUsed.id).style.width;
	form_handler(thisselForm);
	test1(objectUsed);
}

function closeD() {
	document.getElementById('d').style.width='450px';
	document.getElementById('d').style.display = 'none';
	document.getElementById('d').innerHTML = '';
}

function getMouseXY(e) {
	try {
		if (IE) { // grab the x-y pos.s if browser is IE
			tempX = event.clientX + document.body.scrollLeft;
			tempY = event.clientY + document.body.scrollTop;
		} else {  // grab the x-y pos.s if browser is NS
			tempX = e.pageX;
			tempY = e.pageY;
		}  
		// catch possible negative values in NS4
		if (tempX < 0){tempX = 0;}
		if (tempY < 0){tempY = 0;}  
		// show the position values in the form named Show
		// in the text fields named MouseX and MouseY
		//if (open) {
			//if (tempX > wd || tempX < b || tempY < a || tempY > ht) {
				//open = false;
				//test2();
			//}
		//}
		//document.getElementById('MouseX').value = tempX
		//document.getElementById('MouseY').value = tempY
		return true
	}
	catch (e) {
	}
	
}

function getY( oElement ) {
	var iReturnValue = 0;
	while( oElement != null ) {
		iReturnValue += oElement.offsetTop;
		oElement = oElement.offsetParent;
	}
	return iReturnValue;
}

function getX( oElement ) {
	var iReturnValue = 0;
	while( oElement != null ) {
		iReturnValue += oElement.offsetLeft;
		oElement = oElement.offsetParent;
	}
	return iReturnValue;
}

var addelems = 1;
function addAttach() {
	abox = document.getElementById('attchbox');
	if (addelems <= 6) {
		addelems ++;
		var aelem = document.createElement('span');
		aelem.id = 'span'+addelems;
		aelem.innerHTML = '<input type="file" name="attach[]" id="attach'+addelems+'" class="style9" size="40">&nbsp;&nbsp;<span class="link" onclick="removeAttch('+addelems+')">[-]</a><br/>';
		abox.appendChild(aelem);
	}
}

function removeAttch(remid) {
	abox = document.getElementById('attchbox');
	if (remspan = document.getElementById('span'+remid)) {
		abox.removeChild(remspan);
		addelems --;
	}
	return;
}

var addfprof = 1;

function largePreview(imSrc) {
	document.getElementById('mainimage').src = imSrc;
}

function toggleFavorite(ind) {
	if (ind == 1) {
		document.getElementById('favspan').innerHTML = 'REMOVE FROM FAVORITES';
		document.getElementById('subaction').value = 2;
	} else if (ind == 2) {
		document.getElementById('favspan').innerHTML = 'ADD TO FAVORITES';
		document.getElementById('subaction').value = 1;
	}
}


function updateNumSelected(tobj) {
	num = tobj.getElementsByTagName('OPTION');
	cnt = 0;
	if (num.length > 0) {
		for (i=0; i <= num.length; i++) {
			if (num[i]){	
				if (num[i].selected === true){
					cnt++;
				}
				if (cnt > 6) {
					num[i].selected = false;
					cnt --;
					alert('You may only select 6 suburbs');
					break;
				}
			}
		}
	}
}

// CUSTOM FORM SUBMITS 
// SPECIAL CASES -> WITHOUT BUTTONS OR IMAGE INPUT TYPES

function forgotPassword() {
	var tfrm = document.getElementById('nopass');
	form_handler(tfrm);
}

function subPerfAction(actid) {
	document.getElementById('actionid').value = actid;
	var tfrm = document.getElementById('performAction');
	form_handler(tfrm);
}

function sendtofriend() {
	var tfrm = document.getElementById('sendToFriend');
	form_handler(tfrm);
}

function sendsimilar() {
	var tfrm = document.getElementById('sendSimilar');
	form_handler(tfrm);
}

function sendtofriend2(itemid) {
	document.getElementById('sbusid').value = itemid;
	var tfrm = document.getElementById('sendToFriend');
	form_handler(tfrm);
}

function getSuburbsSelect(sval, tid) {
	document.getElementById('place1').value = 'insert1'+tid;
	document.getElementById('place2').value = 'insert2'+tid;
	document.getElementById('rowid').value = tid;

	if (sval == "") {
		document.getElementById('insert1'+tid).innerHTML = 'Please select state first ...';
		return false;
	}
	document.getElementById('insert1'+tid).innerHTML = '<strong style="color: #669966;">Retreiving suburb information ...</strong>';
	
	document.getElementById('stateid').value = sval;
	var tfrm = document.getElementById('getSuburbs');
	form_handler(tfrm);
}

function addVehiclesRow() {
	document.getElementById('updateRowVeh').value = "";
	velems = document.getElementById('vehBox1').getElementsByTagName('input');
	ovd = '';
	if (velems.length > 0) {
		for (i=0; i <= velems.length; i++) {
			if (velems[i]) 	{
				ovd = ovd + velems[i].name + "=" + velems[i].value + "&";
			}
		}
		document.getElementById('oldVehVals').value = ovd;
	}
	thisfrm = document.getElementById('updateVehicleBox');
	form_handler(thisfrm);
}
/**
function addVehiclesRow() {
	document.getElementById('updateRowVeh').value = "";
	thisfrm = document.getElementById('updateVehicleBox');
	form_handler(thisfrm);
}
**/


function removeVehiclesRow(rowid) {
	document.getElementById('updateRowVeh').value = rowid;
	thisfrm = document.getElementById('updateVehicleBox');
	form_handler(thisfrm);
}

function addFixturesRow() {
	document.getElementById('updateRow').value = "";

	felems = document.getElementById('fitBox1').getElementsByTagName('input');
	fovd = '';
	if (felems.length > 0) {
		for (i=0; i <= felems.length; i++) {
			if (felems[i]) 	{
				if (felems[i].type == "checkbox") {
					if (felems[i].checked == true) {
						fovd = fovd + felems[i].name + "=1&";
					} else {
						fovd = fovd + felems[i].name + "=&";
					}
				} else {
					fovd = fovd + felems[i].name + "=" + felems[i].value + "&";
				}
			}
		}
		document.getElementById('oldFitVals').value = fovd;
	}

	thisfrm = document.getElementById('updateFittingsBox');
	form_handler(thisfrm);
}
/**
function addFixturesRow() {
	document.getElementById('updateRow').value = "";
	thisfrm = document.getElementById('updateFittingsBox');
	form_handler(thisfrm);
}
**/


function removeFixturesRow(rowid) {
	document.getElementById('updateRow').value = rowid;
	thisfrm = document.getElementById('updateFittingsBox');
	form_handler(thisfrm);
}


function updateVendorStaffForm(dvsubj, dvplus) {
	
	selems = document.getElementById('staffBox1').getElementsByTagName('input');
	sovd = '';
	if (selems.length > 0) {
		for (i=0; i <= selems.length; i++) {
			if (selems[i]) 	{
				sovd = sovd + selems[i].name + "=" + selems[i].value + "&";
			}
		}
		document.getElementById('oldStaffVals').value = sovd;
	}

	selems2 = document.getElementById('staffBox1').getElementsByTagName('select');
	if (selems2.length > 0) {
		for (i=0; i <= selems2.length; i++) {
			if (selems2[i]) 	{
				sovd = sovd + selems2[i].name + "=" + selems2[i].value + "&";
			}
		}
		document.getElementById('oldStaffVals').value = sovd;
	}

	document.getElementById('vsubj').value = dvsubj;
	document.getElementById('vplus').value = dvplus;
	thisfrm = document.getElementById('updateVendorStaff');
	form_handler(thisfrm);
}
/**
function updateVendorStaffForm(dvsubj, dvplus) {
	document.getElementById('vsubj').value = dvsubj;
	document.getElementById('vplus').value = dvplus;
	thisfrm = document.getElementById('updateVendorStaff');
	form_handler(thisfrm);
}
**/

function deleteVendorStaffForm(dvplus) {
	document.getElementById('vsubj').value = "";
	document.getElementById('vplus').value = dvplus;
	thisfrm = document.getElementById('updateVendorStaff');
	form_handler(thisfrm);
}

function getSelRegForm() {
	thisfrm = document.getElementById('selRegister');
	form_handler(thisfrm);
}

function updateCaptcha_submit() {
	thisfrm = document.getElementById('updateCaptcha');
	form_handler(thisfrm);
}