var stockData = {
	myCon:   		false,
	control:		false,
	body:    		false,
	loader:  		false,
	target: 		false,
	pageURL:		false,
	params: 		false,
	myFuncWhenDone: false,
	
	stockTotal:		false,
	currentPage:	false,
	SearchParams:	false,
	
	isMozilla:		false,
	isMouseOver:	false,
	quicksearchTried: false,
	objMessage:		null,
	
	objList: 		null,
	objArray: 		null,
	objPosition: 	null,
	varPosition:	null,
	formControl:	null,
	
	showCheckList: function(valIDVehicle) {
		var strVehicle = document.getElementById('Vehicle_' + valIDVehicle).value
		var strHeader = document.getElementById('VehicleHeader_' + valIDVehicle).value
		//var strDescription = document.getElementById('Description_' + valIDVehicle).value
		/*
			VEHICLETRANSMISSION_
			VEHICLEKMS_
			VEHICLECOLOREXTERIOR_
			VEHICLEFUEL_
			VEHICLEDOORS_
			CONDITIONGRADE_
			CHASSISNOORIG_
		*/
		var strVEHICLETRANSMISSION = document.getElementById('VEHICLETRANSMISSION_' + valIDVehicle).value
		var strVEHICLEKMS = document.getElementById('VEHICLEKMS_' + valIDVehicle).value
		var strVEHICLECOLOREXTERIOR = document.getElementById('VEHICLECOLOREXTERIOR_' + valIDVehicle).value
		var strVEHICLEFUEL = document.getElementById('VEHICLEFUEL_' + valIDVehicle).value
		var strVEHICLEDOORS = document.getElementById('VEHICLEDOORS_' + valIDVehicle).value
		var strCONDITIONGRADE = document.getElementById('CONDITIONGRADE_' + valIDVehicle).value
		var strCHASSISNOORIG = document.getElementById('CHASSISNOORIG_' + valIDVehicle).value
		
		var strFrontImage = document.getElementById('FrontImage_' + valIDVehicle).value
		var strChassis = document.getElementById('Chassis_' + valIDVehicle).value
		stockData.selectItem(valIDVehicle);
		stockData.myCon = new AjaxDell();
		if(!stockData.myCon) return;
		
		stockData.target = document.getElementById('vehiclequicksearchmyCheckListContainer');
		stockData.pageURL = "stocklist_action.asp";
		stockData.params = "action=getpreloggedchecklist" 
		stockData.params += "&header=" + strHeader;
		//stockData.params += "&description=" + strDescription; 
		stockData.params += "&vehicletransmission=" + strVEHICLETRANSMISSION; 
		stockData.params += "&vehiclekms=" + strVEHICLEKMS; 
		stockData.params += "&vehiclecolorexterior=" + strVEHICLECOLOREXTERIOR; 
		stockData.params += "&vehiclefuel=" + strVEHICLEFUEL; 
		stockData.params += "&vehicledoors=" + strVEHICLEDOORS; 
		stockData.params += "&conditiongrade=" + strCONDITIONGRADE; 
		stockData.params += "&chassisnoorig=" + strCHASSISNOORIG; 

		stockData.params += "&frontimage=" + strFrontImage; 
		stockData.params += "&chassis=" + strChassis;
		stockData.params += "&vehicleid=" + strVehicle;
		
		stockData.myFuncWhenDone = function(xmlObj) {
			var xmlChecklist = xmlObj.responseText;
			//document.write(xmlChecklist);
			stockData.target.innerHTML = xmlChecklist;
			stockData.getVehiclePosition(valIDVehicle);
			/*
			if (stockData.objArray.length == undefined || stockData.objArray.length == 1) {
				document.getElementById('button_next').style.display = 'none';
				document.getElementById('button_prev').style.display = 'none';
			}else{
				document.getElementById('button_next').style.display = '';
				document.getElementById('button_prev').style.display = '';
			}
			*/
		}
		//stockData.showHideDetails(stockData.target);
		stockData.showDetails(stockData.target);
		var loader = "<img class='loader' src='/images/loader/ajax-loader1.gif' border='0' />";
		stockData.target.innerHTML = loader
		stockData.retrieveContent();
	},
	
	showHideDetails: function(elemObj) {
		if (elemObj.style.visibility == "hidden") {
			elemObj.style.visibility = "visible";
			elemObj.style.position = "static";
		} else {
			elemObj.style.visibility = "hidden";
			elemObj.style.position = "absolute";
		}
	},
	
	showDetails: function(elemObj) {
		elemObj.style.visibility = "visible";
		elemObj.style.position = "static";
	},

	getStocklist: function(valBatch, status) {

		//right template visibility:none for the wide quicksearch.asp start by:jcheng
		stockData.quicksearchTried = true;
		document.getElementById("rightcontent").style.display = "none";
		document.getElementById("maincontent").style.width = "701px";
		document.getElementById("vehiclequicksearchcontainer").style.width = "701px";
		if(document.all)
		{
			//for ie browser
			document.getElementById("vehiclequicksearchcontent").style.width = "701px";
			document.getElementById("vehiclequicksearchcontentLeft").style.width = "477px";
			document.getElementById("vehiclequicksearchcontentRight").style.width = "215px";						
			for (i=0; i<document.getElementsByTagName("div").length; i++)
			{
				if (document.getElementsByTagName("div")[i].className=="mmlabelh3")
					{
						document.getElementsByTagName("div")[i].style.width = "231px";
					}
			}
			document.getElementById("makefield").style.width = "227px";
			document.getElementById("modelfield").style.width = "227px";
			document.getElementById("vehiclequicksearchresultBody").style.width = "462px";			
		}
		else
		{
			//mozilla
			document.getElementById("vehiclequicksearchcontent").style.width = "699px";
			document.getElementById("vehiclequicksearchcontentLeft").style.width = "467px";
			document.getElementById("vehiclequicksearchcontentRight").style.width = "205px";	
			for (i=0; i<document.getElementsByTagName("div").length; i++)
			{
				if (document.getElementsByTagName("div")[i].className=="mmlabelh3")
					{
						document.getElementsByTagName("div")[i].style.width = "230px";
					}
			}			
			document.getElementById("makefield").style.width = "225px";
			document.getElementById("modelfield").style.width = "225px";			
			document.getElementById("vehiclequicksearchresultBody").style.width = "460px";			
		}
		var h2bg = document.getElementById("vehiclequicksearchcontainer");
		h2bg.getElementsByTagName("h2")[0].style.background="url(/images/autoterminalrevamp/headerRevampBG2.jpg)";
		document.getElementById("footerContainer").style.width = "701px";
		//right template visibility:none for the wide quicksearch.asp end by:jcheng
		
		var strMake, strModel
		strMake = document.getElementById('makefield').options[document.getElementById('makefield').selectedIndex].value; 
		strModel = document.getElementById('modelfield').options[document.getElementById('modelfield').selectedIndex].value; 
		if (strModel != 0){
			stockData.myCon = new AjaxDell();
			if(!stockData.myCon) return;
			//
			document.getElementById('vehiclequicksearchcontent').style.backgroundImage="none";
			document.getElementById('vehiclequicksearchcontainer').style.background="#eff9f1";
			document.getElementById('footerContainer').style.backgroundImage="url(/images/autoterminalrevamp/contentRevampBG15.jpg)";
			//
			stockData.goTop();
			stockData.target = document.getElementById('vehiclequicksearchpageContent');
			stockData.pageURL = "stocklist_action.asp";

			stockData.params = "action=getpreloggedstock" 
			stockData.params += "&make=" + strMake
			stockData.params += "&model=" + strModel
			stockData.SearchParams = stockData.params;

			stockData.params += "&total=" + stockData.stockTotal;
			stockData.params += "&batch=" + valBatch;
			
			stockData.target.innerHTML = stockData.contentLoader("Loading may take long for large number of vehicles. Please wait...");
			stockData.myFuncWhenDone = function(xmlObj) {
				Tracking.insertTrackData('','Use Quick Search');
				var xmlStocks = xmlObj.responseText;
				document.getElementById('txtVehicleID').value = '';
				stockData.target.innerHTML = '';
				stockData.target.innerHTML = xmlStocks.substring(xmlStocks.indexOf("<stocks>")+"<stocks>".length, xmlStocks.indexOf("</stocks>"));			
				if (stockData.stockTotal != '0' ) {
					stockData.currentPage = valBatch;
				}
				stockData.storeArrayList();
			}
			stockData.retrieveContent();
		}else{
			alert('Please select a model!')
		}
	},
	
	getBasicSearch: function(status) {
		stockData.myCon = new AjaxDell();
		if(!stockData.myCon) return;
		
		stockData.target = document.getElementById('pageContentSearch');
		stockData.pageURL = "stocklist_action.asp";
		stockData.params = "action=basicsearch";
		
		stockData.SearchParams = false;
		stockData.stockTotal = false;
		stockData.currentPage = false;
		
		document.getElementById("contPageLoader").innerHTML = stockData.contentLoader("Loading page, please wait...");	
		stockData.myFuncWhenDone = function(xmlObj) {
			stockData.target.innerHTML = xmlObj.responseText;
			if (status) dhtmlHistory.add('search:basic', {message: ''}); 
			document.getElementById("contPageLoader").innerHTML = '';	
			//stockData.getMake();
		}
		stockData.retrieveContent();
	},
	
	getMake: function(item) {
		stockData.myCon = new AjaxDell();
		if(!stockData.myCon) return;
		
		stockData.target = document.getElementById('contMake');
		stockData.pageURL = "stocklist_action.asp";
		stockData.params = "action=getmake&make="+item;

		stockData.myFuncWhenDone = function(xmlObj) {
			stockData.target.innerHTML = xmlObj.responseText;
			//document.getElementById("contPageLoader").innerHTML = '';
			if(item == "")
			{
				stockData.getModel('');
			}
			else
			{
				stockData.getModel(item);
			}
		}
		stockData.retrieveContent();
	},

	
	getModel: function(valMake) {
		
		
		stockData.myCon = new AjaxDell();
		if(!stockData.myCon) return;
		
		stockData.target = document.getElementById('contModel');
		stockData.pageURL = "stocklist_action.asp";
		stockData.params = "action=getmodel";
		stockData.params += "&make=" + valMake;
		
		//document.getElementById("contPageLoader").innerHTML = stockData.contentLoader("Loading data, please wait...");	
		stockData.myFuncWhenDone = function(xmlObj) {
			stockData.target.innerHTML = xmlObj.responseText;
			//document.getElementById("contPageLoader").innerHTML = '';	
			
			//modelfield stay wide in quicksearch.asp start by:jcheng
			if(stockData.quicksearchTried)
			{
				if(document.all)
				{
					//for ie browser
					document.getElementById("modelfield").style.width = "227px";
				}
				else
				{
					//mozilla
					document.getElementById("modelfield").style.width = "225px";			
				}			
			}
			//modelfield stay wide in quicksearch.asp end by:jcheng
		}
		stockData.retrieveContent();
	},
	
	storeArrayList: function() {
		stockData.formControl = document.forms["formSearch"];
		stockData.objArray = stockData.formControl["IDVehicle"];
		if (stockData.formControl["IDVehicle"] != undefined) {
			if (stockData.objArray.length == undefined){
				stockData.showCheckList(stockData.objArray.value);
			}else{
				stockData.showCheckList(stockData.objArray[0].value);
			}
			stockData.objPosition = document.getElementById('currentPosition');
			stockData.objPosition.value = 0;
			stockData.varPosition = parseInt(stockData.objPosition.value);
		}else {
			document.getElementById('vehiclequicksearchpageContent').innerHTML = "<div align='center' id='result_instruction' class='content'><b>Sorry returned no results. Please search again.</b></div>";
			document.getElementById('vehiclequicksearchmyCheckListContainer').innerHTML = '';
		}
	},
	
	getPageAction: function(varAction) {
		var varIDVehicle;
		if (stockData.objArray.length != undefined){
			if (varAction == 'next'){
				stockData.varPosition = stockData.varPosition + 1
				if (stockData.varPosition >= stockData.objArray.length){
					stockData.varPosition = 0
				}
				stockData.objPosition.value = stockData.varPosition;
			}
			else{
				stockData.varPosition = stockData.varPosition - 1
				if (stockData.varPosition < 0){
					stockData.varPosition = stockData.objArray.length - 1;
				}
				stockData.objPosition.value = stockData.varPosition;
			}
			varIDVehicle = stockData.objArray[stockData.varPosition].value;
			stockData.showCheckList(parseInt(varIDVehicle));
		}
	},
	
	getVehiclePosition: function(valVehicleID) {
		var arLen = stockData.objArray.length;
		for ( var i=0, len=arLen; i<len; ++i ){
			if (stockData.objArray[i].value == parseInt(valVehicleID)){
				stockData.objPosition.value = i;
				stockData.varPosition = i;
				break;
			}
		}
	},
	
	contentLoader: function(msg) {
		var loader = "<div align='center' style='\FLOAT:left;\WIDTH: 100%;\'>";
			loader += "<img class='loader' src='/images/loader/ajax-loader1.gif' border='0'><br />";
			loader += "<span style='color: #217908; font: normal 12px Verdana, Arial;'>"+msg+"</span>";
			loader += "</div>";
		return loader;
	},
	
	//========================= Image Progress Bar =============================
	
	myImagePath: 				new Array(),
	myCounter:					0,
	myVehicleIDs:				new Array(),
	myImageArray:				new Array(),
	
	initImageLoader: function () {
		var formObject = document.forms["formSearch"];
		stockData.myImagePath = new Array();
		stockData.myVehicleIDs = new Array();
		stockData.myImageArray = new Array();
		stockData.myCounter = 0;
		if (formObject["frmImagePath"].length == undefined ) {
			var _imagePath = formObject["frmImagePath"].value;
			var _vehicleID = formObject["frmVehicleID"].value;
			stockData.storeImages(_imagePath, _vehicleID);
		} else {
			for(var i=0;i<formObject["frmImagePath"].length;i++) {
				var _imagePath = formObject["frmImagePath"][i].value;
				var _vehicleID = formObject["frmVehicleID"][i].value;
				stockData.storeImages(_imagePath, _vehicleID);
			}
		}			
	},
	
	storeImages: function(imagePath, vehicleId) {
		stockData.myImagePath[stockData.myCounter] = imagePath;
		stockData.myVehicleIDs[stockData.myCounter] = vehicleId;
		stockData.myCounter+=1;
		
		for(i=0; i<stockData.myImagePath.length; i++) {
			stockData.myImageArray[i] = new Image();
			stockData.myImageArray[i].src = stockData.myImagePath[i];
		}
	},
	
	fillImages: function(i) {
		//document.getElementById("picContainer"+stockData.myVehicleIDs[i]).innerHTML = "<img style='cursor: pointer;' onClick='stockData.enlargeImage(this.src);' id='pic"+stockData.myVehicleIDs[i]+"' src='"+stockData.myImageArray[i].src+"' border='0' width='150' height='100'>";
	}, 
	
	enlargeImage: function(imgURL) {
		stockData.PopupLargeImage(imgURL, 450, 300);
	},
	
	PopupLargeImage: function(strHREF, X, Y){
		 strHREF = stockData.Resize(strHREF);
		 
		 if (X == undefined) X = 450;
		 if (Y == undefined) Y = 300;
		 PopupWin = window.open('', 'mapwin', 'width=' + X + ', height=' + Y)
		 PopupWin.document.open();
		 PopupWin.document.write('<html><body topmargin="0" leftmargin="0"><center><img src=" ' + strHREF + ' " alt="a car" width="' + X + '" height="'+ Y +'"></img></center></body></html>');
		 PopupWin.document.close();
		 PopupWin.resizeTo(X, Y + 25)
		 PopupWin.focus()
	},
	
	Resize: function(str){
		str=str.toLowerCase();
		return str.replace("small","Medium");
	},
	highItem: function(varID) {
		var div = document.getElementById(varID);
		var varCurrent = document.getElementById('txtVehicleID');
		if (varID != varCurrent.value){
			div.style.backgroundColor = "lightgreen";
			div.style.borderColor = "#6baa10" ;
		}
	},	
	dehighItem: function(varID, varColor) {
		var div = document.getElementById(varID);
		var varCurrent = document.getElementById('txtVehicleID');
		if (varID != varCurrent.value){
			div.style.backgroundColor = "#ffffff";
			div.style.borderColor = '#c6c3c6';	
		}
	},
	selectItem: function(varIDVehicle) {
		var varCurrent = document.getElementById('txtVehicleID').value
		if	(varCurrent != varIDVehicle){
			var objCurrent = document.getElementById(varIDVehicle);
			objCurrent.style.backgroundColor = '#F5F5F5';
			objCurrent.style.borderWidth = '2px';
			objCurrent.style.borderColor = '#c6c3c6';			
			if (varCurrent != ''){
				document.getElementById(varCurrent).style.backgroundColor = '#FFFFFF';
				document.getElementById(varCurrent).style.borderWidth = '1px';
			}
			document.getElementById('txtVehicleID').value = varIDVehicle;
		}
	},

	//========================= Image Progress Bar =============================

	scrollSteps:	2000,

	goTop: function () {
		timer = setTimeout ("stockData.goTop()", 10)
		if (document.body.scrollTop >= stockData.scrollSteps) {
			window.scrollBy (0 , -stockData.scrollSteps)
		} else {
			clearTimeout(timer)
			document.body.scrollTop=0
		}
	},
	
	switchImage: function (imgName, imgSrc) {
		if (document.images) {	
			if (imgSrc != "none") { 
				document.images[imgName].src = imgSrc;
			}
		}
	},

	retrieveContent: function() {
		stockData.myCon.connect(stockData.pageURL, "Get", stockData.params, stockData.myFuncWhenDone);
	},
	
	retrieveTContent: function() {
		window.location = stockData.pageURL + '?' + stockData.params;
	},
	
	TemplateFunction: function(valTest) {
		//alert(valTest);
	}
};

	document.onmousedown = MouseDown;
    document.onmousemove = MouseMove;
    document.onmouseup = MouseUp;  
	
	function MouseDown(e) {
		if (stockData.isMouseOver) {
			if (stockData.isMozilla) {
				stockData.objMessage = document.getElementById("message");
				X = e.layerX;
				Y = e.layerY;
				return false;
			} else {
	            stockData.objMessage = document.getElementById("message");
	            stockData.objMessage = stockData.objMessage.style;
	            X = event.offsetX;
	            Y = event.offsetY;
			}
		}	
	}

	function MouseMove(e) {
		if (stockData.objMessage) {
			if (stockData.isMozilla) {
				stockData.objMessage.style.top = (e.pageY - Y) + 'px';
				stockData.objMessage.style.left = (e.pageX - X) + 'px';
				return false;
			} else {
            stockData.objMessage.pixelLeft = (event.clientX + document.body.scrollLeft) + (stockData.objMessage.pixelWidth/2) - X - 35;
            stockData.objMessage.pixelTop = (event.clientY + document.body.scrollTop) + (stockData.objMessage.pixelHeight/2) - (Y + 50);
				return false;
			}
		}
	}

	function MouseUp() { stockData.objMessage = null; }
