﻿//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();
	if($('#datepicker')){
		$(function() {
			$("#datepicker").datepicker({ changeYear: true , changeMonth: true, dateFormat: 'yy-mm-dd' });
			if($('#datepicker2')){
				$("#datepicker2").datepicker({ changeYear: true , changeMonth: true, dateFormat: 'yy-mm-dd' });
			}
		});
	}
}

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);
}

function findValue(li) {
	if( li == null ) return false;

	if( !!li.extra ){
		var XMLText=li.extra[0];
		var categoryId=getXMLValue(XMLText,'categoryid');
		var subcategoryId=getXMLValue(XMLText,'subcategoryid');
		if(categoryId){
			document.getElementById('categoryId').value=categoryId;
			
			$('#subcategoryID_Row_Search').html('');
			var rand=Math.random();
			rand=String(rand);
			
			$('#subcategoryID_Row_Search').empty().load('get_subcategory_lists_with_stats.lasso?elementId=subcategoryId_Search&list='+list+'&categoryid='+categoryId+'&refresh='+rand);
			if(subcategoryId){
				executeWhenReady('subcategoryId_Search','document.getElementById(\'subcategoryId_Search\').value='+subcategoryId+';');
			}
		}
		else {
			document.getElementById('categoryId').value="";
			$('#subcategoryID_Row_Search').empty().load('get_subcategory_lists_with_stats.lasso?elementId=subcategoryId_Search&list='+list+'&categoryid='+categoryId+'&refresh='+rand);
			if(subcategoryId){
				executeWhenReady('subcategoryId_Search','document.getElementById(\'subcategoryId_Search\').value='+subcategoryId+';');
			}									
		}
	}

}

function selectItem(li) {
	findValue(li);
}

function formatItem(row) {
	return row[0] + " (id: " + row[1] + ")";
}

$(function() {
	$("#itemname").autocomplete(
								"drilling_equipment_itemname_search.LassoApp",
								{
									extraParams: { list: list },
									matchContains:'options.matchContains',
									onItemSelect:selectItem,
									onFindValue:findValue
								}
							   );
});


//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)