function calc(lang)
{
	// initiate variables
    var total = 0;
    var totalMinusWindowsAndDoors = 0;
    var numberOfCans = 0;
	var nonNumeric = new RegExp("[^0-9\.]");
	var numericError = "";
	var zeroError = "";

	// set error text
	if (lang == "en") {
		numericError = "Please Enter Numeric Characters Only."
		zeroError = "Please Enter both height and width."
	} else {
		numericError = "Veuillez ecrire les caracteres numeriques seulement."
		zeroError = "Entrez S'il vous plait la hauteur et la largeur."
	}
	// validate input values
	if(nonNumeric.test($F('wall1w')) || $F('wall1w') == ".") { alert(numericError); $('wall1w').focus(); return; }
	if(nonNumeric.test($F('wall1h')) || $F('wall1h') == ".") { alert(numericError); $('wall1h').focus(); return; }
	if(nonNumeric.test($F('wall2w')) || $F('wall2w') == ".") { alert(numericError); $('wall2w').focus(); return; }
	if(nonNumeric.test($F('wall2h')) || $F('wall2h') == ".") { alert(numericError); $('wall2h').focus(); return; }
	if(nonNumeric.test($F('wall3w')) || $F('wall3w') == ".") { alert(numericError); $('wall3w').focus(); return; }
	if(nonNumeric.test($F('wall3h')) || $F('wall3h') == ".") { alert(numericError); $('wall3h').focus(); return; }
	if(nonNumeric.test($F('wall4w')) || $F('wall4w') == ".") { alert(numericError); $('wall4w').focus(); return; }
	if(nonNumeric.test($F('wall4h')) || $F('wall4h') == ".") { alert(numericError); $('wall4h').focus(); return; }
	if(nonNumeric.test($F('door1w')) || $F('door1w') == ".") { alert(numericError); $('door1w').focus(); return; }
	if(nonNumeric.test($F('door1h')) || $F('door1h') == ".") { alert(numericError); $('door1h').focus(); return; }
	if(nonNumeric.test($F('door2w')) || $F('door2w') == ".") { alert(numericError); $('door2w').focus(); return; }
	if(nonNumeric.test($F('door2h')) || $F('door2h') == ".") { alert(numericError); $('door2h').focus(); return; }
	if(nonNumeric.test($F('window1w')) || $F('window1w') == ".") { alert(numericError); $('window1w').focus(); return; }
	if(nonNumeric.test($F('window1h')) || $F('window1h') == ".") { alert(numericError); $('window1h').focus(); return; }
	if(nonNumeric.test($F('window2w')) || $F('window2w') == ".") { alert(numericError); $('window2w').focus(); return; }
	if(nonNumeric.test($F('window2h')) || $F('window2h') == ".") { alert(numericError); $('window2h').focus(); return; }

    var wall1area = $F('wall1w') * $F('wall1h');
    if(wall1area === 0 && ($F('wall1w') > 0 || $F('wall1h') > 0)) { alert(zeroError); ($F('wall1w') >= 1) ? $('wall1h').focus() : $('wall1w').focus(); return; }
    var wall2area = $F('wall2w') * $F('wall2h');
    if(wall2area === 0 && ($F('wall2w') > 0 || $F('wall2h') > 0)) { alert(zeroError); ($F('wall2w') >= 1) ? $('wall2h').focus() : $('wall2w').focus(); return; }
    var wall3area = $F('wall3w') * $F('wall3h');
    if(wall3area === 0 && ($F('wall3w') > 0 || $F('wall3h') > 0)) { alert(zeroError); ($F('wall3w') >= 1) ? $('wall3h').focus() : $('wall3w').focus(); return; }
    var wall4area = $F('wall4w') * $F('wall4h');
    if(wall4area === 0 && ($F('wall4w') > 0 || $F('wall4h') > 0)) { alert(zeroError); ($F('wall4w') >= 1) ? $('wall4h').focus() : $('wall4w').focus(); return; }

    total = wall1area + wall2area + wall3area + wall4area;
	
	var door1area = $F('door1w') * $F('door1h');
	if(door1area === 0 && ($F('door1w') > 0 || $F('door1h') > 0)) { alert(zeroError); ($F('door1w') >= 1) ? $('door1h').focus() : $('door1w').focus(); return; }
	var door2area = $F('door2w') * $F('door2h');
	if(door2area === 0 && ($F('door2w') > 0 || $F('door2h') > 0)) { alert(zeroError); ($F('door2w') >= 1) ? $('door2h').focus() : $('door2w').focus(); return; }
    var doorArea = door1area + door2area;
    
    var window1area = $F('window1w') * $F('window1h');
	if(window1area === 0 && ($F('window1w') > 0 || $F('window1h') > 0)) { alert(zeroError); ($F('window1w') >= 1) ? $('window1h').focus() : $('window1w').focus(); return; }
	var window2area = $F('window2w') * $F('window2h');
	if(window2area === 0 && ($F('window2w') > 0 || $F('window2h') > 0)) { alert(zeroError); ($F('window2w') >= 1) ? $('window2h').focus() : $('window2w').focus(); return; }
    var windowArea = window1area + window2area;

    totalMinusWindowsAndDoors = total - doorArea - windowArea;

    numberOfCans = totalMinusWindowsAndDoors / $F('askcans');  

    $('wall1area').value = wall1area;
    $('wall2area').value = wall2area;
    $('wall3area').value = wall3area;
    $('wall4area').value = wall4area;
    $('total1').value = total;
    $('total2').value = totalMinusWindowsAndDoors;
    $('givecans').value = numberOfCans;
    $('btn_calculate').scrollTo();
}

function clearAll()
{
	$('wall1w').clear();
	$('wall1h').clear();
	$('wall2w').clear();
	$('wall2h').clear();
	$('wall3w').clear();
	$('wall3h').clear();
	$('wall4w').clear();
	$('wall4h').clear();
	$('door1w').clear();
	$('door1h').clear();
	$('door2w').clear();
	$('door2h').clear();
	$('window1w').clear();
	$('window1h').clear();
	$('window2w').clear();
	$('window2h').clear();
	$('wall1area').clear();
    $('wall2area').clear();
    $('wall3area').clear();
    $('wall4area').clear();
    $('total1').clear();
    $('total2').clear();
    $('givecans').clear();
}