// 
//  prognose.js
//  PaprikaNL.com
//  
//  Created by Michaël on 2011-02-25.
//  Copyright 2011 YPOS internettoepassingen B.V.. All rights reserved.
// 

function submitform(parm) {
  $('input[name=action]').val(parm);
  $('#prognoseForm').submit();
}

$(document).ready(function() {
  // CATCH keys, handle ENTER as TAB and allow only NUMBERS
  $('div.prognose input').keydown(function(e){
    var code = (e.keyCode ? e.keyCode : e.which);

    // whenever Enter-key pressed
    if (code == 13) {
      e.preventDefault();
      // console.log('enter');
      
      // next block is supposed to trigger tab whenever enter is pressed (ie: enter functions as tab)
      // BUT does not seem to have a whole lot of (if any) support
      // $(this).trigger("keydown", [{
      //   preventDefault:function(){},
      //   keyCode:9
      // }]);
      $(this).trigger("keydown", [9]);

      
    } else {
      if ((code == 9) || (code == 8) || (code == 46) || (code == 37) || (code == 38) || (code == 39) || (code == 40) ) {
        
      } else {
        // if any but numeric key is pressed IGNORE them
        if (((code < 48) || (code > 57 )) && ((code < 96) || (code > 105 ))) {
          e.preventDefault();
        }
      }
    }
  });
  
  
  // paprikakleurtabs;
  $('div.prognose div.tabs a').click(function() {
    var kleur = $(this).text();
    $(this).addClass('selected').siblings('a').removeClass('selected');
    $('div.prognose div.tabblad.' + kleur).addClass('selected').siblings('div.tabblad').removeClass('selected');
    $('input[name=selectedTab]').val(kleur);
    return false;
  });
  
  // wanneer relatief veld wordt ingevuld;
  $('input.perc').blur(function(){
    if ($(this).val() > 100) $(this).val(100);
    var name = $(this).attr('name');
    var kgfl = name.substr(0,2) + '3' + name.substr(3,1);
    
    var kg  = $('input[name=' + kgfl +']').val();
    var kg1 = Math.round($(this).val() * kg  / 100);
    // console.log('relatief: ' + kg + ', ' + kg1);
    $('div.kg' + name).text(kg1);
  });
  
  // wanneer absoluut veld wordt ingevuld;
  $('input.kg').blur(function(){
    var name = $(this).attr('name');
    for (var $i=0; $i<3; $i++) {
      var affected = name.substr(0,2) + $i + name.substr(3,1);
      //console.log(affected);
      $('input.perc[name='+affected+']').blur();
    }
    totals();
  });

  function totals() {
    for (var k = 0; k < 4; k++) {
      for (var d = 0; d < 6; d++) {

        var I1 = $('input[name=' + k + '03' + d + ']').val();
        var I  = $('input[name=' + k + '13' + d + ']').val();
        var II = $('input[name=' + k + 'a' + d + ']').val();
        var tot = $('div.kg' + k + 'b' + d);
        if (I1 == '') { I1 = 0; }
        if (I == '') { I = 0; }
        if (II == '') { II = 0; }
        var total = Number(I1) + Number(I) + Number(II);
      
        tot.html("" + total);
        //console.log(total);
      }
    }
  }

  // berekening met geladen gegevens na laden pagina; 
  $('input.perc').blur();
  totals();    
  
});

