jQuery(function($) {
	attachCalculator();
	// jQuery(document).bind('gform_page_loaded', function(event, form_id, current_page){
	// 	console.log('Event! Page: ' + current_page);
	// 	attachCalculator();
	// });
});

function attachCalculator() {
	if ($('.bmi-height input, .bmi-weight input, .bmi-total input').length != 6) {
		return;
	}
	
	$('.bmi-height input, .bmi-weight input').keyup(recalculateBMI);
	$('.bmi-total input').attr('readonly', 'true');
	
	function recalculateBMI() {
		var units = $(this).closest('li').hasClass('imperial') ? 'imperial' : 'metric'
		
		if (units == 'imperial') {
			var height = $('.bmi-height.imperial input').val() / 39.3700787,
				weight = $('.bmi-weight.imperial input').val() / 2.20462262;
				
				$('.bmi-height.metric input').val(isNaN(height) || height < 0 ? '0.00' : height.toFixed(2));
				$('.bmi-weight.metric input').val(isNaN(weight) || weight < 0 ? '0' : weight.toFixed(0));
		} else {
			var height = $('.bmi-height.metric input').val(),
				weight = $('.bmi-weight.metric input').val(),
				iheight = height * 39.3700787,
				iweight = weight * 2.20462262;
				
				$('.bmi-height.imperial input').val(isNaN(iheight) || iheight < 0 ? '0' : iheight.toFixed(0));
				$('.bmi-weight.imperial input').val(isNaN(iweight) || iweight < 0 ? '0' : iweight.toFixed(0));
		}
		
		var total = Math.round((weight / height / height) * Math.pow(10,1)) / Math.pow(10,1);
		
		$('.bmi-total input').val(isNaN(total) || total < 0 || total > 100 ? 0.0 : total.toFixed(1));
	};
}
