
// this function is used to display info about selected CV asset

function revealAssetInfo(divToShow){
	var assetPreviews = getElementsByClassName(document,"div","assetInfo");
	
	var separatorLine = document.getElementById("separatorLine");

	for(i = 0; i < assetPreviews.length; i++){
		if(assetPreviews[i].id ==  divToShow){
			assetPreviews[i].style.display = '';
		}else{
			assetPreviews[i].style.display = 'none';
		}
	}
	
	//draw separator line on screen
	if(separatorLine != null){
		separatorLine.className = "separatorLine";
	}

	//scroll to the asset preview section on the page
	new Effect.ScrollTo("assetVariations");
}

function _parsePopupForm(selector) {
	var labelInputs = jQuery(selector).find("fieldset").children("label.input,label.select");
			
	labelInputs.contents().filter(function() { 
		return this.nodeType != 1; 
	}).wrap("<span/>");
	labelInputs.children("span:first-child").addClass("first");
}

function loadFormElements_popup(tabpage, tabData) {
	var selector = "#requestBody";
	jQuery.ajax({
		type: "POST",
		url: "/_out/ProcessAction.html",
		data: {
			"Tabpage": tabpage	
		},
		dataType: "html",
		success: function(data) {
			//_parsePopupForm(jQuery(selector).html(data));
			jQuery(selector).html(data);
			if (tabData.type) {
				switch (tabData.type) {
					case "typeTruck":
						jQuery("#assetTypeTruck").attr({"checked": true});
						break;
					case "typeTrailer":
						jQuery("#assetTypeTrailer").attr("checked", true);
						break;
					default:
						break;
				}
				toggleDiv(tabData.type);
			}
			//alert(JSON.stringify(tabData));
			if (tabData.defaults instanceof Array) {
				var len = tabData.defaults.length;
				for (var i = 0; i < len; i++) {
					jQuery("#" + tabData.defaults[i]).attr("checked", true);
				}
			}
		},
		error: function() {
			jQuery(selector).html("<p class=\"error\">Error Occurred. Please contact ORIX via Contact Us page.</p>");
		}
  	});
}

//display dynamically obtained Form

function loadFormElements(tabpage){
	var output = document.getElementById('requestBody');
	var xml = getXhttp( );
    
	if (!xml){
			output.innerHTML = "<p>Error Occurred. Please contact ORIX via Contact Us page.";
	}else{
		
		//prepare the submit string
		xml.open('POST', '/_out/ProcessAction.html?Tabpage='+tabpage,false);
		//make sure to add following header to dynamically generated page!!
	    xml.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		xml.send('');
		output.innerHTML = xml.responseText;
		xml = null;
	}
}

//loop through the form, collect values and post them back
function postFormRentalEnquiry(form) {
	var selector = "#requestBody";
	var output = document.getElementById('requestBody');
	var formElements = form.elements;
	var postValues = "";
	var xml = getXhttp( );
	
	for (i=0; i<formElements.length; i++) {
		if (formElements[i].type == "text" && formElements[i].value != "") {
			postValues += formElements[i].name + "=" + formElements[i].value + "&";

		}else if (formElements[i].type == "checkbox" && formElements[i].checked == true) {
			postValues += formElements[i].name + "=" + formElements[i].value + "&";
		}else if (formElements[i].type == "radio" && formElements[i].checked == true) {
			postValues += formElements[i].name + "=" + formElements[i].value + "&";
		}else if (formElements[i].type == "select-one") {
			postValues += formElements[i].name + "=" + formElements[i][formElements[i].selectedIndex].value + "&";
		}else if(formElements[i].type == "hidden"){
			postValues += formElements[i].name + "=" + formElements[i].value + "&";
		}else if(formElements[i].type == "textarea"){
			postValues += formElements[i].name + "=" + formElements[i].value + "&";
		}
	}
    
	if (!xml){
			output.innerHTML = "<p>Error Occurred. Please contact ORIX via Contact Us page.";
	}else{
		
		//prepare the submit string
		xml.open('POST', '/_out/ProcessAction.html?Tabpage='+form.id,false);
		//make sure to add following header to dynamically generated page!!
	    xml.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		xml.send(postValues);
		output.innerHTML = xml.responseText;
		//_parsePopupForm(jQuery(selector));
		xml = null;
	}
	
	//scroll to the results section on the page
	if (jQuery("#requestEcho").length) {
		jQuery.scrollTo(jQuery("#requestEcho"), 400, {});
	}
	//new Effect.ScrollTo('requestEcho');
}


function postFormQuoteEnquiry(form) {
	var output = document.getElementById('requestBody');
	var formElements = form.elements;
	var postValues = "";
	var xml = getXhttp( );
	
	for (i=0; i<formElements.length; i++) {
		if (formElements[i].type == "text" && formElements[i].value != "") {
			postValues += formElements[i].name + "=" + formElements[i].value + "&";

		}else if (formElements[i].type == "checkbox" && formElements[i].checked == true) {
			postValues += formElements[i].name + "=" + formElements[i].value + "&";
		}else if (formElements[i].type == "radio" && formElements[i].checked == true) {
			postValues += formElements[i].name + "=" + formElements[i].value + "&";
		}else if (formElements[i].type == "select-one") {
			postValues += formElements[i].name + "=" + formElements[i][formElements[i].selectedIndex].value + "&";
		}else if(formElements[i].type == "hidden"){
			postValues += formElements[i].name + "=" + formElements[i].value + "&";
		}
	}
    
	if (!xml){
			output.innerHTML = "<p>Error Occurred. Please contact ORIX via Contact Us page.";
	}else{
		
		//prepare the submit string
		xml.open('POST', '/_out/ProcessAction.html?Tabpage='+form.id,false);
		//make sure to add following header to dynamically generated page!!
	    xml.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		xml.send(postValues);
		output.innerHTML = xml.responseText;
		xml = null;
	}
	
	//scroll to the results section on the page
	new Effect.ScrollTo('requestEcho');
}

function postFormAccountRequest(form) {
	var output = document.getElementById('requestBody');
	var formElements = form.elements;
	var postValues = "";
	var xml = getXhttp( );
	
	for (i=0; i<formElements.length; i++) {
		if (formElements[i].type == "text" && formElements[i].value != "") {
			postValues += formElements[i].name + "=" + formElements[i].value + "&";

		}else if (formElements[i].type == "checkbox" && formElements[i].checked == true) {
			postValues += formElements[i].name + "=" + formElements[i].value + "&";
		}else if (formElements[i].type == "radio" && formElements[i].checked == true) {
			postValues += formElements[i].name + "=" + formElements[i].value + "&";
		}else if (formElements[i].type == "select-one") {
			postValues += formElements[i].name + "=" + formElements[i][formElements[i].selectedIndex].value + "&";
		}else if(formElements[i].type == "hidden"){
			postValues += formElements[i].name + "=" + formElements[i].value + "&";
		}
	}
    
	if (!xml){
			output.innerHTML = "<p>Error Occurred. Please contact ORIX via Contact Us page.";
	}else{
		
		//prepare the submit string
		xml.open('POST', '/_out/ProcessAction.html?Tabpage='+form.id,false);
		//make sure to add following header to dynamically generated page!!
	    xml.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
		xml.send(postValues);
		output.innerHTML = xml.responseText;
		xml = null;
	}
	
	//scroll to the results section on the page
	new Effect.ScrollTo('requestEcho');
}

//when user clicks CLEAR, we must hide all extended Info blocks
function hideExtendedInfo(targetClassName){
	var theDivs = getElementsByClassName(document,"div",targetClassName);	
	//get all labels attached to checkboxes
	var theCheckboxLabels = getElementsByClassName(document,"label","checkbox");	
	
	if(theDivs.length > 0){
		for(i = 0; i < theDivs.length; i++){
			theDivs[i].style.display = "none";
		}
	}
	
	//check if there were any checkbox labels on the form toggled to BOLD
	if(theCheckboxLabels.length > 0){
		for(i = 0; i < theCheckboxLabels.length; i++){
			theCheckboxLabels[i].style.fontWeight = "";
		}
	}

}

//toggle visibility of the selected div
function toggleDiv(divId){
	var targetDiv = document.getElementById(divId);
	var clickedCheckboxLabel = document.getElementById(divId+"Label");
	
	if(targetDiv != null && targetDiv.style.display == "none"){
//		targetDiv.style.display = "";
		jQuery("#"+divId).slideDown(300);
	}else if(targetDiv != null){
//		targetDiv.style.display = "none";
		jQuery("#"+divId).slideUp(300);
	}
	
	//toggle presentation of the clicked checkbox label to BOLD
	if(clickedCheckboxLabel != null && clickedCheckboxLabel.style.fontWeight == ""){
		clickedCheckboxLabel.style.fontWeight = "bold";
	}else if(clickedCheckboxLabel != null){
		clickedCheckboxLabel.style.fontWeight = "";
	}
}

//checking user input and blocking characters
function checkForInt(evt){
	var charCode = ( evt.which != null ) ? evt.which : event.keyCode
	return (charCode < 32 || charCode == 46 || (charCode >= 48 && charCode <= 57))
}