$.fn.focus_first = function() {

  var elem = $('input:visible', this).get(0);
  var select = $('select:visible', this).get(0);

  if (select && elem) {
    if (select.offsetTop < elem.offsetTop) {
      elem = select;
    }
  }

  var textarea = $('textarea:visible', this).get(0);

  if (textarea && elem) {
    if (textarea.offsetTop < elem.offsetTop) {
      elem = textarea;
    }
  }

  if (elem) {
    elem.focus();
  }

  return this;
}

function giveError(value)
{
	/*
	if (value != "" && value != "\r" && value != "\n") {
		alert('Du kan kun bruke tall');
	}
	*/
	return(0);
}

function getValue(field)
{
	var value = parseFloat($("#"+field).val()) || giveError($("#"+field).val());
	return(value);
}

jQuery.preloadImages = function()
{
  for(var i = 0; i<arguments.length; i++)
  {
    jQuery("<img>").attr("src", arguments[i]);
  }
}

$(document).ready(function(){
	$('#brodskalacalc').focus_first();
	
 	$('#sum').attr("disabled", true); 

	$.preloadImages("/gfx/brodskala_icon_null_99x99.png", "/gfx/brodskala_icon_fin_99x99.png","/gfx/brodskala_icon_halvgrov_99x99.png","/gfx/brodskala_icon_grov_99x99.png","/gfx/brodskala_icon_ekstragrov_99x99.png");

	$("#brodskalacalc input.add").bind("keyup", function(e){
		var suma = 0;
		
		suma += getValue("siktetHvete");
		suma += getValue("siktetSpelt");
		suma += getValue("siktetRug");
		suma += getValue("sammaltHvete");
		suma += getValue("sammaltSpelt");
		suma += getValue("sammaltRug");
		suma += getValue("bygg");
		suma += getValue("havremel");
		suma += getValue("havregryn");
		suma += getValue("heleKorn");
		suma += getValue("hvetekli");
		suma += getValue("rugkli");
		suma += getValue("havrekli");  
		
		// $("#suma").val(suma);
		
		var sumb = 0;
		
		sumb += getValue("sammaltHvete");
		sumb += getValue("sammaltSpelt");
		sumb += getValue("sammaltRug");
		sumb += getValue("bygg");
		sumb += getValue("havremel");
		sumb += getValue("havregryn");
		sumb += getValue("heleKorn");
		sumb += getValue("hvetekli") * 4.5;
		sumb += getValue("rugkli") * 4.0;
		sumb += getValue("havrekli") * 2.0;
		
		// $("#sumb").val(sumb);
		
		var grovhetprosent = 0;
		grovhetprosent = (sumb/suma)*100;
		
		// $("#grovhetprosent").val(grovhetprosent);
		
		var resulttext = 'Brødet ditt er ';
		var image_string = 'null';
		
		if (grovhetprosent < 25) {
			resulttext += 'fint';
			image_string = 'fin';
		} else if (grovhetprosent < 50) {
			resulttext += 'halvgrovt';
			image_string = 'halvgrov';
		} else if (grovhetprosent < 75) {
			resulttext += 'grovt';
			image_string = 'grov';
		} else if (grovhetprosent < 450){
			resulttext += 'ekstra grovt';
			image_string = 'ekstragrov';
		} else {
			resulttext += 'ennå ikke testet for grovhet';
			image_string = 'null';
		}
		resulttext += '.';
		
		image_string = '/gfx/brodskala_icon_'+image_string+'_99x99.png';
		
 		$('#skalaicon').attr("src", image_string); 
		
		$("#resulttext").text(resulttext);
	 });
});