﻿//fix for IE 6 site header color
var browser=navigator.appName;
var browserVersion=parseFloat(navigator.appVersion);

if(browser.indexOf('Internet Explorer')>0 && browserVersion<7) {
	executeWhenReady('headerDiv', '$(\'.lightbluediv\').css(\'background-color\',\'#004A95\');');
	executeWhenReady('headerDiv', '$(\'.fixed\').css(\'background-color\',\'#004A95\');');	
}

var standardTimeout;
function showMenu(menuId){
	$('#'+menuId).css('visibility', 'visible');
}
function hideMenu(menuId){
	$('#'+menuId).css('visibility', 'hidden');
}
function updateCartLink(){
	var rand=Math.random();
	$('#shoppingCartLink').load('/cart_counter.LassoApp?refresh='+rand);
}
function updateAccountLink(){
	var rand=Math.random();
	$('#accountLink').load('/account_check_login.LassoApp?refresh='+rand);
}
function updateCartCounterAndLoginStatus(){
	var rand=Math.random();
	$('#cartCounterAndLoginStatus').load('/cart_counter_and_login_status.lasso?refresh='+rand);
}
function preload(){
updateCartCounterAndLoginStatus();
}

var standardTimeout;

function accountCheckNickname(nickname){
	if(nickname!=''){
		$('#account_check_nickname_result').html('<img src="/images/loader.gif">').load('account_check_nickname.LassoApp?nickname='+nickname);
	}
}

function getCheckedRadioButtonValue(radioObj){
	var radioObjLength=radioObj.length;
	for(var i = 0; i < radioObjLength; i++) {
		if(radioObj[i].checked) {
			return radioObj[i].value;
		}
	}
}

function executeWhenReady(elementId, code){
	code=unescape(code);
	var evalCode=code;
	if(document.getElementById(elementId)){
		eval(evalCode);
		if(!elementId.indexOf('Search')){
			$.scrollTo( $('#top'),800);
		}
	}
	else {
		standardTimeout=setTimeout('executeWhenReady(\''+elementId+'\',\''+escape(code)+'\');',300);
	}
}

function clearForm(theForm) {
	var elements = theForm.elements; 
	theForm.reset();
	for(i=0; i<elements.length; i++) {
		field_type = elements[i].type.toLowerCase();
		if(document.getElementById(elements[i].name+'_title')){
			document.getElementById(elements[i].name+'_title').style.color='';
		}
		switch(field_type) {
			case "text": 
			case "password": 
			case "textarea":
				elements[i].value = ""; 
				break;
			case "radio":
			case "checkbox":
				if (elements[i].checked) {
						elements[i].checked = false; 
				}
				break;

			case "select-one":
			case "select-multi":
				elements[i].selectedIndex = 0;
				break;

			default: 
				break;
		}
	}
}

function submitForm(formId){
	var params = {};
	var strParams='';
	var currParamValue='';
	var formObject=$('#'+formId+' :input');
	for(x=0;x<formObject.length;x++){
		if (formObject[x].type=='text' || formObject[x].checked || formObject[x].type=='hidden' || formObject[x].type=='password' || formObject[x].type=='select-one' || formObject[x].type=='submit' || formObject[x].type=='textarea') {
			if(x>0){
				strParams+='&';
			}
			params[formObject[x].name]=formObject[x].value;
			currParamValue=escape(formObject[x].value).replace(new RegExp( '\\+', 'g' ), '%2B');
			strParams+=formObject[x].name+'='+currParamValue;
		}
	}
	//alert(document.getElementById(formId).action + ' ' + strParams);
	$.ajax( 
	    { 
	        type: 'POST', 
	        url: document.getElementById(formId).action, 
	        data: strParams, 
	        success: 
	            function(data) 
	            {
					var code = data.replace(new RegExp( '\\n', 'g' ),'').replace(new RegExp('\'', 'g'), '\\\'').replace(new RegExp('\\t', 'g'), '');
					if(formId=='accountForm'){
						if (code.indexOf('error')<0){						
							displayContent('accountdetails','');
						}
					}
					else if(formId=='account_equipment_form'){
						if (code.indexOf('error')<0){						
							refreshEquipmentCounts();
						}
					}
					else if(formId=='accountLogin'){
						if (code.indexOf('error')<0){						
							updateAccountLink();
						}					
					}
					//alert(data);
					if(formId!='accountLogin'){
						code='$(\'#responseDisplay\').html(\''+code+'\');$(\'#responseDisplay\').css(\'visibility\',\'visible\');$(\'#responseDisplay\').css(\'display\',\'block\');'
						if(code.indexOf('no longer be displayed on the Freeboard')>0){
							code=code+'$(\'#'+formId+'Status\').html(\'Offline\');';	
						}
						executeWhenReady('responseDisplay', escape(code));
					}
	            }, 
	        error: 
	            function(data) 
	            {					
					var code = data.replace(new RegExp( '\\n', 'g' ),'');
					code=code.replace(new RegExp('\'', 'g'), '\\\'');
					code='$(\'#responseDisplay\').html(\'An error occurred when attempting to update your account details. Please ensure that you have an active internet connection and then try again.\');$(\'#responseDisplay\').css(\'visibility\',\'visible\');$(\'#responseDisplay\').css(\'display\',\'block\');'
					executeWhenReady('responseDisplay', code);
	            } 
	    });
	return false;
}

function getXMLValue(XMLText,fieldName){
	var startPos=XMLText.indexOf('<' + fieldName + '>') + fieldName.length + 2;
	var endPos=XMLText.indexOf('</' + fieldName + '>');
	return XMLText.substring(startPos,endPos);
}

function removeTableRow(elementId,tableId){
	var rows=document.getElementById(tableId).getElementsByTagName('tr');
	for(i=0; i < rows.length; i++) {
		if(rows[i].id==elementId) {
			document.getElementById(tableId).deleteRow(i);
		}
	}
}

//Fix for IE 6 and menus below
function hideSelectBoxes() {
	var x = document.getElementsByTagName("select");
	
	for (i = 0; i < x.length; i++) {
	   x[i].style.visibility = "hidden";
	}
}

function showSelectBoxes() {
	var x = document.getElementsByTagName("select");
	
	for (i = 0; i < x.length; i++) {
	   x[i].style.visibility = "visible";
	}
}

function loadText(element,url) {
	$('#' + element).load(url);
}

//SuckerTree Vertical Menu 1.1 (Nov 8th, 06)
//By Dynamic Drive: http://www.dynamicdrive.com/style/

var menuids=["suckertree1"] //Enter id(s) of SuckerTree UL menus, separated by commas

function buildsubmenus(){
for (var i=0; i<menuids.length; i++){
  var ultags=document.getElementById(menuids[i]).getElementsByTagName("ul")
    for (var t=0; t<ultags.length; t++){
    ultags[t].parentNode.getElementsByTagName("a")[0].className="subfolderstyle"
		if (ultags[t].parentNode.parentNode.id==menuids[i]) //if this is a first level submenu
			ultags[t].style.left=ultags[t].parentNode.offsetWidth+"px" //dynamically position first level submenus to be width of main menu item
		else //else if this is a sub level submenu (ul)
		  ultags[t].style.left=ultags[t-1].getElementsByTagName("a")[0].offsetWidth+"px" //position menu to the right of menu item that activated it
    ultags[t].parentNode.onmouseover=function(){
    this.getElementsByTagName("ul")[0].style.display="block"
    }
    ultags[t].parentNode.onmouseout=function(){
    this.getElementsByTagName("ul")[0].style.display="none"
    }
    }
		for (var t=ultags.length-1; t>-1; t--){ //loop through all sub menus again, and use "display:none" to hide menus (to prevent possible page scrollbars
		ultags[t].style.visibility="visible"
		ultags[t].style.display="none"
		}
  }
}

if (window.addEventListener)
window.addEventListener("load", buildsubmenus, false)
else if (window.attachEvent)
window.attachEvent("onload", buildsubmenus)