jQuery(document).ready(function() { 
	recalc_photo_width();
	jQuery('a.listing_image').zoomimage({ forceImage: true, centered: true, hideSource: true });
	calculate_mortgage_payment(); 
	jQuery('#mortgage_calc input').keyup(calculate_mortgage_payment);
	jQuery('#mortgage_calc input').change(calculate_mortgage_payment);
});

function recalc_photo_width() {
	var el = jQuery(".photo_big img"); 
	if (el.width() > el.parent().width()) 
		el.width("100%"); 
}

function get_val(input_id) {
	return parseFloat(document.getElementById(input_id).value.replace(/^\s+|\s+$|,/g, "").replace(/^[\%\$]|[\%\$]$|,/g, ""));
}

function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}

function calculate_mortgage_payment() {
	var price    = get_val('sales_price');
	var down     = get_val('day_payment');
	var interest = get_val('interest_rate');
	var length   = get_val('num_years');
	
	var payment_text = null;
	
	if (isNaN(length) || length <= 0 || length == Infinity)
		payment_text = 'N/A';
	else {	
		var payments = length * 12;
		var monthly_interest = interest / 100.0 / 12.0;
		var interest_term = Math.pow(1 + monthly_interest, payments);
	
		var payment = (price - down) * monthly_interest * interest_term / (interest_term - 1);
		
		payment_text = isNaN(payment) || payment <= 0 || payment == Infinity ? 'N/A' : ('$' + addCommas(payment.toFixed(2)));
	}
	
	document.getElementById('mc_payment').innerHTML = payment_text;
}
