function displayInventoryData(item)
{
	hidePaymentCalculator();
	
	$('ibImage').src = item.get('Image');
	$('ibVehicleNumber').value = item.get('VehicleNumber');
	$('ibYear').value = item.get('Year');
	$('ibMake').value = item.get('Make');
	$('ibModel').value = item.get('Model');
	$('ibPrice').value = item.get('Price');
	$('ibPayment').value = item.get('Payment');
	if(!$('greyScreen'))
	{
		var greyScreen = document.createElement("div");
		greyScreen.id = "greyScreen";
		greyScreen.style.display = 'none';
		greyScreen.onclick = hideInventoryData;
		document.body.appendChild(greyScreen);
	}
	var top = document.documentElement.scrollTop || document.body.scrollTop;
	var left = document.documentElement.scrollLeft || document.body.scrollLeft;
	var boxCordinates = getCenteringCordinates('inventoryBox')
	
	$('inventoryBox').style.top = boxCordinates.y + "px";
	$('inventoryBox').style.left = boxCordinates.x + "px";
	$('greyScreen').style.top = top + "px";
	$('greyScreen').style.left = left + "px";
	$('greyScreen').onclick = hideInventoryData;
	$('inventoryBox').style.display = '';
	$('greyScreen').style.display = '';
}

function hideInventoryData()
{
	$('inventoryBox').style.display = 'none';
	if($('greyScreen')) $('greyScreen').style.display = 'none';	
}

function displayPaymentCalculator()
{
	hideInventoryData();
	
	if(!$('greyScreen'))
	{
		var greyScreen = document.createElement("div");
		greyScreen.id = "greyScreen";
		greyScreen.style.display = 'none';
		document.body.appendChild(greyScreen);
	}
	var top = document.documentElement.scrollTop || document.body.scrollTop;
	var left = document.documentElement.scrollLeft || document.body.scrollLeft;
	var boxCordinates = getCenteringCordinates('paymentCalculator')
	
	$('paymentCalculator').style.top = boxCordinates.y + "px";
	$('paymentCalculator').style.left = boxCordinates.x + "px";
	$('greyScreen').style.top = top + "px";
	$('greyScreen').style.left = left + "px";
	$('greyScreen').onclick = hidePaymentCalculator;
	$('paymentCalculator').style.display = '';
	$('greyScreen').style.display = '';
}

function hidePaymentCalculator()
{
	$('paymentCalculator').style.display = 'none';
	if($('greyScreen')) $('greyScreen').style.display = 'none';	
}

function calculatePayment()
{
	var price = $N('sellingPrice');
	var downPayment = $N('downPayment');
	var monthlyRate = ($N('interestRate') / 100) / 12;
	var term = $N('term');
	var payment;
	var errorMessage = '';
	
	$('errorMessage').innerHTML = '&nbsp;';
	
	if (price < 1)
	{
		errorMessage = "Enter a price.";
		$('sellingPrice').focus();
		$('sellingPrice').select();
		$('sellingPrice').highlight({duration: 1});
	}
	else if (term < 1)
	{
		errorMessage = "Enter the number of months.";
		$('term').focus();
		$('term').select();
		$('term').highlight({duration: 1});
	}
	else if(monthlyRate == 0)
	{
		payment = (price - downPayment) / term;
	}
	else if ($N('interestRate') < 1 || $N('interestRate') > 30 )
	{
		errorMessage = "Enter an interest rate between 1 and 30.";
		$('interestRate').focus();
		$('interestRate').select();
		$('interestRate').highlight({duration: 1});
	}
	else
	{
		////Intrest/(1-(1+Intrest)^-Term)
		payment = (price - downPayment) * monthlyRate / (1 - Math.pow((1 + monthlyRate), - term));
	}
	
	if(errorMessage != '')
	{
		$('errorMessage').innerHTML = errorMessage;
		$('errorMessage').highlight({duration: 1});
	}
	else if(isNaN(payment))
	{
		$('errorMessage').innerHTML = 'Error';
		$('errorMessage').highlight({duration: 1});
	}
	else
	{
		$('payment').value = payment.toFixed(2);
		$('payment').highlight({duration: 1});		
	}
}

function clearCalculator()
{
	$('sellingPrice').value = '';
	$('downPayment').value = '';
	$('interestRate').value = '';
	$('term').value = '';
	$('payment').value = '';
	$('errorMessage').innerHTML = '&nbsp;';
	$('sellingPrice').focus();
}

function $N(id)
{
	var v = parseFloat($F(id).replace(/[^0-9.]/g,''));
	if(isNaN(v))
	{
		return 0;
	}
	return v;
}

function calculatorField(event)
{
	var key = event.which || event.keyCode;
	
	if(key == Event.KEY_RETURN)
	{
		calculatePayment();
		Event.stop(event);
		return false;
	}

}