// JavaScript FUPAR
function actualitza(){
	var i;
	var total=0;
	var subtotal=0;
	var quadre,tsubtotal,preu;
	
	var transport=0;	
	
	for(i=1;i<8;i++){	
		subtotal=0;
		quadre = document.getElementById('quadro'+i);
		if(quadre){
					if(!checkinteger(quadre.value)) quadre.value="0";
					else{
						preu = document.getElementById('preu'+i);
						subtotal=quadre.value*preu.value;
						total = total + subtotal;
						if(subtotal>0)
							transport = parseFloat(document.getElementById('transport'+i).value);
					}
					tsubtotal = document.getElementById('total'+i);
					tsubtotal.value = subtotal;
		}
		
	}
	var recollir;	
	recollir = document.getElementById('recollir_fupar').checked;
			
	if(total<150&&!recollir){
		total = total + transport;
		document.getElementById('total_transport').value = transport;
	}
	else{
		document.getElementById('total_transport').value = "0";
	}
	
	var ttotal = document.getElementById('total_quadres');
	ttotal.value = total;	
	
}


function checkinteger(object_value) {
	if (object_value.length == 0)
		return true;
	
	var decimal_format = ".";
	var check_char;
	
	check_char = object_value.indexOf(decimal_format);
	if (check_char < 1)
		return checknumber(object_value);
	else
		return false;
}

function checknumber(object_value) {
	if (object_value.length == 0)
		return true;
	
	var start_format = " .0123456789";
	var number_format = " .0123456789";
	var check_char;
	var decimal = false;
	var trailing_blank = false;
	var digits = false;
	
	check_char = start_format.indexOf(object_value.charAt(0));
	if (check_char == 1)
		decimal = true;
	else if (check_char < 1)
		return false;
	 
	for (var i = 1; i < object_value.length; i++)	{
		check_char = number_format.indexOf(object_value.charAt(i))
		if (check_char < 0) {
			return false;
		} else if (check_char == 1)	{
			if (decimal)
				return false;
			else
				decimal = true;
		} else if (check_char == 0) {
			if (decimal || digits)	
			trailing_blank = true;
		}	else if (trailing_blank) { 
			return false;
		} else {
			digits = true;
		}
	}	
	
	return true;
}
