/*
* (c) copyright 2009 Avantica s.r.o.
* 
* autor: Jan Sequens
* datum: 11/2009
* 
*/



/*
*********************** okomentovat vse *******
*/


/*
* glablni promenne
*/
var c_sken_dia = 0;
var c_sken_foto = 0;
var c_digi_videa = 0;

/*
* vse v teto funkci se provede po naloadovani stranky
*/
$(document).ready(function(){

	$("#more-faq").hide(); // vice FAQ je defaultne schovano
	$("#show-more-faq").addClass("more-plus");
	
	$("#svitky-sken-dia").hide();
	$("#volitelne-sken-dia").hide();
	$("#volitelne-sken-foto").hide();
	$("#volitelne-digi-videa").hide();
	$(".volitelne").addClass("more-plus");
  
  // sbaleni (bez animace) vsech sekci
	toggle_calc_section("sken-dia", true);
	toggle_calc_section("sken-foto", true);
  toggle_calc_section("digi-videa", true);
	
	input_checks();
  
});

function input_checks()
{
  // skenovani fotek - vstupy
  
  $("#a6-pocet-snimku").keyup(function () { 
    this.value = this.value.replace(/[^0-9]/g,'');
  });
  
  $("#a5-pocet-snimku").keyup(function () { 
    this.value = this.value.replace(/[^0-9]/g,'');
  });
  
  $("#a4-pocet-snimku").keyup(function () { 
    this.value = this.value.replace(/[^0-9]/g,'');
  });
  
  	$("#sken-foto-kopie-pocet").keyup(function () { 
    this.value = this.value.replace(/[^0-9]/g,'');
    if ($("#sken-foto-kopie-pocet").val() != "" &&       // pokud nekdo prepisoval pocet kopii na nejaky neprazdny
		    parseInt($("#sken-foto-kopie-pocet").val()) > 0  // a nenulovy
			 ) 
		  $("#sken-foto-kopie").attr('checked', true);       // ma o ne asi zajem
		if ($("#sken-foto-kopie-pocet").val() == "" ||       // pokud nekdo prepisoval pocet kopii na prazdno 
		parseInt($("#sken-foto-kopie-pocet").val()) == 0)    //  nebo nulu 
		  $("#sken-foto-kopie").attr('checked', false);       // nema o ne asi zajem
  });
  
  $("#sken-foto-kopie").change(function () { // zmena checkboxu 
    if ($("input#sken-foto-kopie").is(":checked") && 
		    ($("input#sken-foto-kopie-pocet").val() == "" || parseInt($("input#sken-foto-kopie-pocet").val()) == 0)
			 ) 
    {
      $("input#sken-foto-kopie-pocet").val("1");
    }
  });
  
  // skenovani diapozitivu - vstupy
  
  $("#kinofilm-pocet-snimku").keyup(function () { 
    this.value = this.value.replace(/[^0-9]/g,'');
  });
  
  $("#stredoformat-pocet-snimku").keyup(function () { 
    this.value = this.value.replace(/[^0-9]/g,'');
  });
  
  	$("#sken-dia-kopie-pocet").keyup(function () { 
    this.value = this.value.replace(/[^0-9]/g,'');
    if ($("#sken-dia-kopie-pocet").val() != "" &&       // pokud nekdo prepisoval pocet kopii na nejaky neprazdny
		    parseInt($("#sken-dia-kopie-pocet").val()) > 0  // a nenulovy
			 ) 
		  $("#sken-dia-kopie").attr('checked', true);       // ma o ne asi zajem
		if ($("#sken-dia-kopie-pocet").val() == "" ||       // pokud nekdo prepisoval pocet kopii na prazdno 
		parseInt($("#sken-dia-kopie-pocet").val()) == 0)    //  nebo nulu 
		  $("#sken-dia-kopie").attr('checked', false);       // nema o ne asi zajem
  });
  
  $("#sken-dia-kopie").change(function () { // zmena checkboxu 
    if ($("input#sken-dia-kopie").is(":checked") && 
		    ($("input#sken-dia-kopie-pocet").val() == "" || parseInt($("input#sken-dia-kopie-pocet").val()) == 0)
			 ) 
    {
      $("input#sken-dia-kopie-pocet").val("1");
    }
  });
  
  // digitalizace - vstupy (numeric only)
	
	$("#vhs-pocet-hodin").keyup(function () { 
	  this.value = this.value.replace(/[^0-9\.,]/g,'');
	});
  
	$("#osmicky-pocet-hodin").keyup(function () { 
    this.value = this.value.replace(/[^0-9\.,]/g,'');
  });
	
	$("#vhs-pocet-minut").keyup(function () { 
    this.value = this.value.replace(/[^0-9]/g,'');
  });
	
	$("#osmicky-pocet-minut").keyup(function () { 
    this.value = this.value.replace(/[^0-9]/g,'');
  });
  
	$("#digi-videa-kopie-pocet").keyup(function () { 
    this.value = this.value.replace(/[^0-9]/g,'');
    if ($("#digi-videa-kopie-pocet").val() != "" &&       // pokud nekdo prepisoval pocet kopii na nejaky neprazdny
		    parseInt($("#digi-videa-kopie-pocet").val()) > 0  // a nenulovy
			 ) 
		  $("#digi-videa-kopie").attr('checked', true);       // ma o ne asi zajem
		if ($("#digi-videa-kopie-pocet").val() == "" ||       // pokud nekdo prepisoval pocet kopii na prazdno 
		parseInt($("#digi-videa-kopie-pocet").val()) == 0)    //  nebo nulu 
		  $("#digi-videa-kopie").attr('checked', false);       // nema o ne asi zajem
  });
  
  $("#digi-videa-kopie").change(function () { // zmena checkboxu 
    if ($("input#digi-videa-kopie").is(":checked") && 
		    ($("input#digi-videa-kopie-pocet").val() == "" || parseInt($("input#digi-videa-kopie-pocet").val()) == 0)
			 ) 
    {
      $("input#digi-videa-kopie-pocet").val("1");
    }
  });
  
  // diapozitivy - vstupy (numeric only)
  
  $("#dia-pocet-snimku").keyup(function () { 
	  this.value = this.value.replace(/[^0-9\.,]/g,'');
	});
  
}

/*
* zobrazi/skryje dalsi otazky a odpovedi
*/
function toggle_faq()
{ 
  var time = 100; // cas animace
  
  if ($("#more-faq").is(":visible")) // je visible, bude tedy skryto
	{   
		 $("#show-more-faq a").text("zobrazit další otázky a odpovědi");
		 $("#show-more-faq").removeClass("more-minus");
		 $("#show-more-faq").addClass("more-plus");
		 $("#more-faq").slideUp(time);
	}
	else
	{
	  $("#show-more-faq a").text("skrýt další otázky a odpovědi");
	  $("#show-more-faq").removeClass("more-plus");
		 $("#show-more-faq").addClass("more-minus");
		 $("#more-faq").slideDown(time);
	}
}

/*
* rozbali/zabali sekci cenove kalkulacky
*/
function toggle_calc_section(section_name, no_animation)
{
  var time;
  
  if (no_animation) time = 0;
  else time = 200; // cas sbalovani / rozbalovani
  
  if ($("#" + section_name + "-body").is(":visible")) // je visible, schovam ho
  {
    if (section_name == "sken-dia") c_sken_dia = 0;
    if (section_name == "sken-foto") c_sken_foto = 0;
    if (section_name == "digi-videa") c_digi_videa = 0;
    aktualizace_superceny();
    
    $("#" + section_name + "-body").slideUp(time);
    $("#" + section_name + " .interested").fadeOut(time,
		  function() { // callback - po ukonceni fadeOut
         $("#" + section_name + " .section-join-square-left").hide(); // rohovy ctverecek v section prouzku
         $("#" + section_name + " .section-join-square-right").hide(); // rohovy ctverecek v section prouzku
      }
		);
  }
  else // je hidden, zobrazim ho
  {
    // pocitanim se aktualizuje i celkova cena
    if (section_name == "sken-dia") spocitat_sken_dia();
    if (section_name == "sken-foto") spocitat_sken_foto();
    if (section_name == "digi-videa") spocitat_digi_videa();
     
    $("#" + section_name + " .section-join-square-left").show();
    $("#" + section_name + " .section-join-square-right").show();
    $("#" + section_name + "-body").slideDown(time);
    $("#" + section_name + " .interested").fadeIn(time);
  }
}

/*
* zobrazi / skryje volitelne sluzby v dane sekci
*/
function toggle_optional(section_name)
{
  var time = 100; // cas animace
  
  var optional_height;
  var actual_height;
  
  if (section_name == "sken-dia") optional_height = 110;
  if (section_name == "sken-foto") optional_height = 110;
  if (section_name == "digi-videa") optional_height = 90;
  
  var new_height;
  
  if ($("#volitelne-" + section_name).is(":visible")) // je visible, bude tedy skryto
	{
		$("#toggle-volitelne-" + section_name + " a").text("mám zájem také o volitelné služby");
		$("#toggle-volitelne-" + section_name).removeClass("more-minus");
		$("#toggle-volitelne-" + section_name).addClass("more-plus");
		actual_height = $("#" + section_name + "-body").css("height"); // "123px" - vyska section-body
		new_height = parseInt(actual_height.slice(0, actual_height.length - 2)) - optional_height; // 123 - 100
		//alert(new_height);
		$("#" + section_name + "-body").animate( { height: new_height + "px" }, time );

	}
	else
	{
	  $("#toggle-volitelne-" + section_name + " a").text("nemám zájem o volitelné služby"); 
		$("#toggle-volitelne-" + section_name).removeClass("more-plus");
		$("#toggle-volitelne-" + section_name).addClass("more-minus");
		actual_height = $("#" + section_name + "-body").css("height"); // "123px" - vyska section-body
		new_height = parseInt(actual_height.slice(0, actual_height.length - 2)) + optional_height; // 123 + 100
		$("#" + section_name + "-body").animate( { height: new_height + "px" }, time );	
	}
	
  $("#volitelne-" + section_name).toggle(time);
}

/*
* zobrazi / skryje skenovani svitku
*/
function toggle_svitky()
{
  var time = 100; // cas animace
  
  var actual_height;
  
  var optional_height = 290;  
  var new_height;
  
  if ($("#svitky-sken-dia").is(":visible")) // je visible, bude tedy skryto
	{
		$("#toggle-svitky-sken-dia a").text("mám také středoformátové (svitkové) filmy");
		$("#toggle-svitky-sken-dia").removeClass("more-minus");
		$("#toggle-svitky-sken-dia").addClass("more-plus");
		actual_height = $("#sken-dia-body").css("height"); // "123px" - vyska section-body
		new_height = parseInt(actual_height.slice(0, actual_height.length - 2)) - optional_height; // 123 - 100
		//alert(new_height);
		$("#sken-dia-body").animate( { height: new_height + "px" }, time );

	}
	else
	{
	  $("#toggle-svitky-sken-dia a").text("nemám středoformátové (svitkové) filmy"); 
		$("#toggle-svitky-sken-dia").removeClass("more-plus");
		$("#toggle-svitky-sken-dia").addClass("more-minus");
		actual_height = $("#sken-dia-body").css("height"); // "123px" - vyska section-body
		new_height = parseInt(actual_height.slice(0, actual_height.length - 2)) + optional_height; // 123 + 100
		$("#sken-dia-body").animate( { height: new_height + "px" }, time );	
	}
	
  $("#svitky-sken-dia").toggle(time);
}

/*
* zaloguje, ze nekdo zmackl tlacitko spocitat
*/
function log_spocitani(sluzba, popis_sluzby, cena)
{
  //  return;
  //alert(sluzba + "\n\n" + popis_sluzby + "\n\n" + cena);
  var csv = sluzba + ";" + cena + ";" + popis_sluzby + ";"; // pridat v PHP IP adresu a datum
  $.get("../calc_log.php", { radek: csv } );
}

/*
* spocita cenu digitalizace videa
*/
function spocitat_digi_videa()
{    
    // videokazety (VHS atd.)
    var c_vhs_celkem = 0;
    var zajem_vhs = $("input#vhs-pocet-hodin").val() != "" || $("input#vhs-pocet-minut").val() != ""; // neco je vyplneno  
		if (zajem_vhs) 
    {
		  var delka_vhs_normalized = normalize_time($("input#vhs-pocet-hodin").val(), $("input#vhs-pocet-minut").val()); // 2.25 hod 65 min => 3 hod 20 min
		  $("input#vhs-pocet-hodin").val(delka_vhs_normalized[0].toString());
      $("input#vhs-pocet-minut").val(delka_vhs_normalized[1].toString());
      
      // ceny (x 10, pozdeji se vydeli)
			var c_vhs_prvni_hodina = 3900;
			var c_vhs_minuta = 49;
      
      // vypocet ceny
      if (delka_vhs_normalized[0] > 0 || delka_vhs_normalized[1] > 0) // hod nebo min vetsi nez nula
        c_vhs_celkem = c_vhs_prvni_hodina; // pausal vzdy
      if (delka_vhs_normalized[0] > 0) // nenulovy pocet hodin
      {
        c_vhs_celkem += (delka_vhs_normalized[0] - 1) * 60 * c_vhs_minuta; // dalsi cele hodiny
        c_vhs_celkem += delka_vhs_normalized[1] * c_vhs_minuta; // zbyle minuty
      }
    }
    
    // osmicky
    var c_osmicky_celkem = 0;
    var zajem_osmicky = $("input#osmicky-pocet-hodin").val() != "" || $("input#osmicky-pocet-minut").val() != ""; // neco je vyplneno 
    if (zajem_osmicky)
    {
		  var delka_osmicky_normalized = normalize_time($("input#osmicky-pocet-hodin").val(), $("input#osmicky-pocet-minut").val()); // 2.25 hod 65 min => 3 hod 20 min
		  $("input#osmicky-pocet-hodin").val(delka_osmicky_normalized[0].toString());
      $("input#osmicky-pocet-minut").val(delka_osmicky_normalized[1].toString());
			
			// ceny (x 10, pozdeji se vydeli)
			var c_osmicky_prvni_hodina = 2900; // prvnich deset minut, realne
			var c_osmicky_minuta = 149;
      
      // vypocet ceny
      if (delka_osmicky_normalized[0] > 0 || delka_osmicky_normalized[1] > 0) // hod nebo min vetsi nez nula
			  c_osmicky_celkem = c_osmicky_prvni_hodina; // pausal vzdy
      if (delka_osmicky_normalized[0] > 0 || delka_osmicky_normalized[1] > 10) // nenulovy pocet hodin nebo vic nez 10 minut v policku pro minuty
      {
        /*c_osmicky_celkem += (delka_osmicky_normalized[0] - 1) * 60 * c_osmicky_minuta; // dalsi cele hodiny
        c_osmicky_celkem += 50 * c_osmicky_minuta; // pausal nepokryva prvni hodinu, ale jen prvnichdeset minut - 50 minut musime douctovat
        c_osmicky_celkem += delka_osmicky_normalized[1] * c_osmicky_minuta; // zbyle minuty
        */
        var osmicky_minut_celkem = (delka_osmicky_normalized[0] * 60) + delka_osmicky_normalized[1];
        c_osmicky_celkem += (osmicky_minut_celkem - 10) * c_osmicky_minuta; 
      } 
    }
    
    // vlozka - pocet disku
    var hodin_na_dvd = 2.0; // kolik hodin videa lze bezne ulozit na jeden DVD disk (float)
    var jednorazova_tolerance = 0.2; // o kolik hodin vic nez standard se da dat na jeden disk ze zakazky
    
		var pocet_disku;
    var celkova_delka_videa = (zajem_vhs ? delka_vhs_normalized[0] : 0)  + (zajem_osmicky ? delka_osmicky_normalized[0] : 0) +        // cele hodiny
		                        (((zajem_vhs ? delka_vhs_normalized[1] : 0) + (zajem_osmicky ? delka_osmicky_normalized[1] : 0)) / 60);  // minuty prevedene na hodiny
		pocet_disku = Math.ceil(celkova_delka_videa / hodin_na_dvd); // zaokrouhleni nahoru
		var rozdil = (1 - (pocet_disku - (celkova_delka_videa / hodin_na_dvd))) * hodin_na_dvd; // kolik hodin navic zpusobilo, ze se pridal posledni disk
		if (rozdil <= jednorazova_tolerance && pocet_disku >= 2) // muzeme na posledni disk vmacknout o neco vice (a vyslo nam puvodne, ze aspon dva disky)
		  pocet_disku--; // a posledni disk se zbytkem zaznamu vynechame (vmackneme to na predposledni)
    
    // volitelne sluzby
    var c_volitelne_celkem = 0;
    var zajem_volitelne = $("#volitelne-digi-videa").is(":visible"); // zobrazen vyber 
    if (zajem_volitelne)
    {
      // ceny za jeden disk (x 10, pozdeji se vydeli)
      var c_volitelne_menu = 690;
      var c_volitelne_potisk = 490;
      var c_volitelne_kopie = 290;
      var c_volitelne_archivace = 490;
      
      // menu, potisk, archivace
      if ($("input#digi-videa-menu").is(":checked"))       c_volitelne_celkem += c_volitelne_menu * pocet_disku;
      if ($("input#digi-videa-potisk").is(":checked"))     c_volitelne_celkem += c_volitelne_potisk * pocet_disku;
      if ($("input#digi-videa-archivace").is(":checked"))  c_volitelne_celkem += c_volitelne_archivace * pocet_disku;
      
      // kopie
      var pocet_kopii = 0;
      if ($("input#digi-videa-kopie-pocet").val() != "")
			  pocet_kopii = parseInt($("input#digi-videa-kopie-pocet").val()); // ziskame pocet
			else
			  pocet_kopii = 0;
      if ($("input#digi-videa-kopie-pocet").val() != "" && $("input#digi-videa-kopie").is(":checked"))
			  $("input#digi-videa-kopie-pocet").val(pocet_kopii); // odstraneni nul
      if ($("input#digi-videa-kopie").is(":checked"))
      { 
        if (pocet_kopii > 0)
          c_volitelne_celkem += c_volitelne_kopie * pocet_disku * pocet_kopii;
        else
          $("input#digi-videa-kopie").attr('checked', false); // pokudje kopii nula, odskrtneme
      } else // neni zaskrtnuto, kopie tedy nebudou
      {
        pocet_kopii = 0;
      }

    }
    
    var log_cena = (c_vhs_celkem + c_osmicky_celkem + c_volitelne_celkem) / 10;
    c_digi_videa = log_cena;
    var celkova_cena = oddel_tisice(((c_vhs_celkem + c_osmicky_celkem + c_volitelne_celkem) / 10).toFixed(2), " ");
    celkova_cena = celkova_cena.replace(/\./g, ',') + " Kč";
    $("#cena-digi-videa").text(celkova_cena);
    var text_disky = "Vaše digitalizované video bude uloženo na <strong>" + pocet_disku + " DVD</strong>"
    if (pocet_kopii > 0)
		{
		  text_disky += " (plus ";
			if (pocet_kopii > 1) text_disky += pocet_kopii + " &times; ";
			text_disky += pocet_disku + " DVD jako kopie)";
		}
    text_disky += ".";
    if (pocet_disku > 0)
      $("#poznamka-digi-videa").html(text_disky);
    else
      $("#poznamka-digi-videa").text("");
    
    aktualizace_superceny();
      
    /* AJAX log */
    if (zajem_volitelne)
    {
      var log_volitelne = "vol:";
      if ($("input#digi-videa-menu").is(":checked"))       log_volitelne += " menu";
      if ($("input#digi-videa-potisk").is(":checked"))     log_volitelne += " potisk";
      if ($("input#digi-videa-archivace").is(":checked"))  log_volitelne += " archivace";
      if (pocet_kopii > 0)                                 log_volitelne += " kopie_" + pocet_kopii;
    }
    
    var log_popis = "";
    if (zajem_vhs) log_popis += "kazety: " + delka_vhs_normalized[0] + " hod " + delka_vhs_normalized[1] + " min, ";
    if (zajem_osmicky) log_popis += "8 mm: " + delka_osmicky_normalized[0] + " hod " + delka_osmicky_normalized[1] + " min, ";
    if (zajem_volitelne) log_popis += log_volitelne;
    if (log_popis == "") log_popis = "nic";
    log_spocitani("digi_videa", log_popis, log_cena); // log
}

/*
* spocita ceny skenovani diapozitivu
*/
function spocitat_sken_dia()
{    
    // kinofilm dia
    var c_kinofilm_celkem = 0;
    var pocet_kinofilm = 0;
    var kinofilm_rozliseni = 0;
    var kinofilm_ice = 0;
    var zajem_kinofilm = $("input#kinofilm-pocet-snimku").val() != "" || $("input#kinofilm-pocet-snimku").val() != ""; // neco je vyplneno  
		if (zajem_kinofilm) 
    { 
       pocet_kinofilm = parseInt($("input#kinofilm-pocet-snimku").val());
       $("input#kinofilm-pocet-snimku").val(pocet_kinofilm); // nuly pryc
       
       if ($("select#kinofilm-rozliseni").val() == "mini") kinofilm_rozliseni = 0;
			 if ($("select#kinofilm-rozliseni").val() == "standard") kinofilm_rozliseni = 1;
			 if ($("select#kinofilm-rozliseni").val() == "profi") kinofilm_rozliseni = 2;
			 
       if ($("select#kinofilm-ice").val() == "ne") kinofilm_ice = 0;
			 if ($("select#kinofilm-ice").val() == "ano") kinofilm_ice = 1; 

      /* ceny (x 10, pozdeji se vydeli)
         
				 c_kinofilm[cislo_rozliseni][ice]
			   
				 cislo_rozliseni: 0 = Mini
			                    1 = Standard
			                    2 = Profi
			   ice: 0 = ne
			        1 = ano
			
			*/ 
			
			var c_kinofilm = new Array();
			c_kinofilm[0] = new Array();
			c_kinofilm[1] = new Array();
			c_kinofilm[2] = new Array();
			
			c_kinofilm[0][0] = 45;  // Mini bez ICE
			c_kinofilm[0][1] = 70;  // Mini s ICE
			c_kinofilm[1][0] = 65;  // Standard bez ICE
			c_kinofilm[1][1] = 95;  // Standard s ICE
			c_kinofilm[2][0] = 90;  // Profi bez ICE
			c_kinofilm[2][1] = 110; // Profi s ICE
			
			// prumerne datove velikosti naskenovanych JPEG (MB)
			var velikost_kinofilm = new Array();
			velikost_kinofilm[0]     = 2.34;  // Mini
			velikost_kinofilm[1]     = 9.51; // Standard
			velikost_kinofilm[2]     = 23.7; // Profi
			
			velikost_kinofilm[3]     = 13.2;  // Mini TIFF
			velikost_kinofilm[4]     = 48.8; // Standard TIFF
			velikost_kinofilm[5]     = 105.0; // Profi TIFF
      
      // vypocet ceny
      if (pocet_kinofilm > 0) // nejake kinofilmy
      {
        c_kinofilm_celkem = pocet_kinofilm * c_kinofilm[kinofilm_rozliseni][kinofilm_ice]; 
      }
    }
    
    
    // stredoformat dia
    var c_stredoformat_celkem = 0;
    var pocet_stredoformat = 0;
    var stredoformat_rozliseni = 0;
    var stredoformat_ice = 0;
    var zajem_stredoformat = $("#svitky-sken-dia").is(":visible") && // zobrazeno
		                         ($("input#stredoformat-pocet-snimku").val() != "" || $("input#stredoformat-pocet-snimku").val() != ""); // neco je vyplneno  
		if (zajem_stredoformat) 
    { 
       pocet_stredoformat = parseInt($("input#stredoformat-pocet-snimku").val());
       $("input#stredoformat-pocet-snimku").val(pocet_stredoformat); // nuly pryc
       
       if ($("select#stredoformat-rozliseni").val() == "mini") stredoformat_rozliseni = 0;
			 if ($("select#stredoformat-rozliseni").val() == "standard") stredoformat_rozliseni = 1;
			 if ($("select#stredoformat-rozliseni").val() == "profi") stredoformat_rozliseni = 2;
			 
       if ($("select#stredoformat-ice").val() == "ne") stredoformat_ice = 0;
			 if ($("select#stredoformat-ice").val() == "ano") stredoformat_ice = 1; 

      /* ceny (x 10, pozdeji se vydeli)
         
				 c_stredoformat[cislo_rozliseni][ice]
			   
				 cislo_rozliseni: 0 = Mini
			                    1 = Standard
			                    2 = Profi
			   ice: 0 = ne
			        1 = ano
			
			*/ 
			
			var c_stredoformat = new Array();
			c_stredoformat[0] = new Array();
			c_stredoformat[1] = new Array();
			c_stredoformat[2] = new Array();
			
			c_stredoformat[0][0] = 80;  // Mini bez ICE
			c_stredoformat[0][1] = 150;  // Mini s ICE
			c_stredoformat[1][0] = 130;  // Standard bez ICE
			c_stredoformat[1][1] = 250;  // Standard s ICE
			c_stredoformat[2][0] = 230;  // Profi bez ICE
			c_stredoformat[2][1] = 540; // Profi s ICE
			
			// prumerne datove velikosti naskenovanych JPEG (MB)
			var velikost_stredoformat = new Array();
			velikost_stredoformat[0]     = 0.97;  // Mini
			velikost_stredoformat[1]     = 2.72; // Standard
			velikost_stredoformat[2]     = 5.55; // Profi
			
			velikost_stredoformat[3]     = 15.0;  // Mini TIFF
			velikost_stredoformat[4]     = 60.3; // Standard TIFF
			velikost_stredoformat[5]     = 129.0; // Profi TIFF
      
      // vypocet ceny
      if (pocet_stredoformat > 0) // nejake stredoformaty
      {
        c_stredoformat_celkem = pocet_stredoformat * c_stredoformat[stredoformat_rozliseni][stredoformat_ice]; 
      }
    }
    
    
    // vlozka - pocet disku
    var kapacita_dvd = 4300; // kapacita DVD (MB)
    
		var pocet_disku;
    var celkova_velikost = 0;
    var tiff_offset = 0; // ofset v poli velikosti (TIFF velikosti jsou na indexech 3, 4 a 5)
    if ($("#volitelne-sken-dia").is(":visible") && $("input#sken-dia-tiff").is(":checked")) tiff_offset = 3;
		if (zajem_kinofilm) celkova_velikost += pocet_kinofilm * velikost_kinofilm[kinofilm_rozliseni + tiff_offset];
		if (zajem_stredoformat) celkova_velikost += pocet_stredoformat * velikost_stredoformat[stredoformat_rozliseni + tiff_offset];
		  
		pocet_disku = Math.ceil(celkova_velikost / kapacita_dvd); // zaokrouhleni nahoru
    
    // volitelne sluzby
    var c_volitelne_celkem = 0;
    var zajem_volitelne = $("#volitelne-sken-dia").is(":visible"); // zobrazen vyber 
    if (zajem_volitelne)
    {
      // ceny za jeden disk (x 10, pozdeji se vydeli)
      var c_volitelne_au = 10; // cena za jeden snimek!
      var c_volitelne_tiff = 20; // cena za jeden snimek!
      var c_volitelne_potisk = 490;
      var c_volitelne_kopie = 290;
      var c_volitelne_archivace = 490;
      
      // au, tiff
      if ($("input#sken-dia-au").is(":checked"))     c_volitelne_celkem += c_volitelne_au * (pocet_kinofilm + pocet_stredoformat);
      if ($("input#sken-dia-tiff").is(":checked"))  c_volitelne_celkem += c_volitelne_tiff * (pocet_kinofilm + pocet_stredoformat);
      
      // potisk, archivace
      if ($("input#sken-dia-potisk").is(":checked"))     c_volitelne_celkem += c_volitelne_potisk * pocet_disku;
      if ($("input#sken-dia-archivace").is(":checked"))  c_volitelne_celkem += c_volitelne_archivace * pocet_disku;
      
      // kopie
      var pocet_kopii = 0;
      if ($("input#sken-dia-kopie-pocet").val() != "")
			  pocet_kopii = parseInt($("input#sken-dia-kopie-pocet").val()); // ziskame pocet
			else
			  pocet_kopii = 0;
      if ($("input#sken-dia-kopie-pocet").val() != "" && $("input#sken-dia-kopie").is(":checked"))
			  $("input#sken-dia-kopie-pocet").val(pocet_kopii); // odstraneni nul
      if ($("input#sken-dia-kopie").is(":checked"))
      { 
        if (pocet_kopii > 0)
          c_volitelne_celkem += c_volitelne_kopie * pocet_disku * pocet_kopii;
        else
          $("input#sken-dia-kopie").attr('checked', false); // pokud je kopii nula, odskrtneme
      } else // neni zaskrtnuto, kopie tedy nebudou
      {
        pocet_kopii = 0;
      }

    }
    
    var minimalni_objednavka = 1000;
    
    var celkova_cena = c_kinofilm_celkem + c_volitelne_celkem + c_stredoformat_celkem;
		if (pocet_disku > 0 && celkova_cena < minimalni_objednavka) celkova_cena = minimalni_objednavka; // minimalni objednavka (pokud se neco objednava)
		var log_cena = celkova_cena / 10;
		c_sken_dia = log_cena;
		celkova_cena = oddel_tisice((celkova_cena / 10).toFixed(2), " ");
    celkova_cena = celkova_cena.replace(/\./g, ',') + " Kč";
    $("#cena-sken-dia").text(celkova_cena);
    
		var text_disky = "Vaše naskenované snímky budou uloženy na <strong>" + pocet_disku + " DVD</strong>";
    if (pocet_kopii > 0)
		{
		  text_disky += " (plus ";
			if (pocet_kopii > 1) text_disky += pocet_kopii + " &times; ";
			text_disky += pocet_disku + " DVD jako kopie)";
		}
    text_disky += ".";
    if (pocet_disku > 0)
      $("#poznamka-sken-dia").html(text_disky);
    else
      $("#poznamka-sken-dia").text("");
    
    aktualizace_superceny();
      
    /* AJAX log */
    if (zajem_volitelne)
    {
      var log_volitelne = "vol:";
      if ($("input#sken-dia-au").is(":checked"))         log_volitelne += " au";
      if ($("input#sken-dia-tiff").is(":checked"))       log_volitelne += " tiff";
      if ($("input#sken-dia-potisk").is(":checked"))     log_volitelne += " potisk";
      if ($("input#sken-dia-archivace").is(":checked"))  log_volitelne += " archivace";
      if (pocet_kopii > 0)                               log_volitelne += " kopie_" + pocet_kopii;
    }
    
    rozliseni_jmena = new Array();
    rozliseni_jmena[0] = "mini";
    rozliseni_jmena[1] = "standard";
    rozliseni_jmena[2] = "profi";
    ice_jmena = new Array();
    ice_jmena[0] = "ne";
    ice_jmena[1] = "ano";
    
    var log_popis = "";
    if (zajem_kinofilm) log_popis += "35mm: " + pocet_kinofilm + " ks, rozliseni: " + rozliseni_jmena[kinofilm_rozliseni] + ", ice: " + ice_jmena[kinofilm_ice] + ", ";
    if (zajem_stredoformat) log_popis += "stredoformat: " + pocet_stredoformat + " ks, rozliseni: " + rozliseni_jmena[stredoformat_rozliseni] + ", ice: " + ice_jmena[stredoformat_ice] + ", ";
    if (zajem_volitelne) log_popis += log_volitelne;
    if (log_popis == "") log_popis = "nic";
    log_spocitani("sken_dia", log_popis, log_cena); // log
}


/*
* spocita ceny skenovani fotek
*/
function spocitat_sken_foto()
{   
    var c_foto_celkem = 0;
    var pocet_a6 = 0;
    var pocet_a5 = 0;
    var pocet_a4 = 0;
    var foto_rozliseni = 0;
    var zajem_a6 = $("input#a6-pocet-snimku").val() != "" || $("input#a6-pocet-snimku").val() != "";
    var zajem_a5 = $("input#a5-pocet-snimku").val() != "" || $("input#a5-pocet-snimku").val() != "";
    var zajem_a4 = $("input#a4-pocet-snimku").val() != "" || $("input#a4-pocet-snimku").val() != "";
    var zajem_foto = zajem_a6 || zajem_a5 || zajem_a4;   
		if (zajem_foto) 
    { 
       if (zajem_a6)
			 {
			   pocet_a6 = parseInt($("input#a6-pocet-snimku").val());
			   $("input#a6-pocet-snimku").val(pocet_a6); // nuly pryc
			 }
			 if (zajem_a5)
			 {
			   pocet_a5 = parseInt($("input#a5-pocet-snimku").val());
			   $("input#a5-pocet-snimku").val(pocet_a5); // nuly pryc
			 }
			 if (zajem_a4)
			 {
			   pocet_a4 = parseInt($("input#a4-pocet-snimku").val());
			   $("input#a4-pocet-snimku").val(pocet_a4); // nuly pryc
			 }
       
       
       if ($("select#foto-rozliseni").val() == "mini") foto_rozliseni = 0;
			 if ($("select#foto-rozliseni").val() == "standard") foto_rozliseni = 1;
			 if ($("select#foto-rozliseni").val() == "profi") foto_rozliseni = 2; 

      /* ceny (x 10, pozdeji se vydeli)
         
				 c_foto[cislo_rozliseni][foto_rozmer]
			   
				 cislo_rozliseni: 0 = Mini
			                    1 = Standard
			                    2 = Profi
			   foto_rozmer: 0 = A6
			                1 = A5
			                2 = A4
			*/ 
			
			var c_foto = new Array();
			c_foto[0] = new Array();
			c_foto[1] = new Array();
			c_foto[2] = new Array();
			
			c_foto[0][0] = 35;   // Mini A6
			c_foto[0][1] = 50;   // Mini A5
			c_foto[0][2] = 90;   // Mini A4
			
			c_foto[1][0] = 65;   // Standard A6
			c_foto[1][1] = 100;  // Standard A5
			c_foto[1][2] = 170;  // Standard A4
			
			c_foto[2][0] = 120;   // Profi A6
			c_foto[2][1] = 210;  // Profi A5
			c_foto[2][2] = 390;  // Profi A4
			
			// prumerne datove velikosti naskenovanych JPEG (MB)
			var velikost_foto = new Array();
			velikost_foto[0] = new Array();
			velikost_foto[1] = new Array();
			velikost_foto[2] = new Array();
			velikost_foto[3] = new Array();
			velikost_foto[4] = new Array();
			velikost_foto[5] = new Array();
			
			velikost_foto[0][0] = 0.53;   // Mini A6
			velikost_foto[0][1] = 2.54;   // Mini A5
			velikost_foto[0][2] = 2.64;   // Mini A4
			
			velikost_foto[1][0] = 2.16;   // Standard A6
			velikost_foto[1][1] = 11.5;  // Standard A5
			velikost_foto[1][2] = 9.98;  // Standard A4
			
			velikost_foto[2][0] = 8.58;   // Profi A6
			velikost_foto[2][1] = 40.1;  // Profi A5
			velikost_foto[2][2] = 36.9;  // Profi A4
			
			velikost_foto[3][0] = 11.9;   // Mini A6 TIFF
			velikost_foto[3][1] = 47.8;   // Mini A5 TIFF
			velikost_foto[3][2] = 49.2;   // Mini A4 TIFF
			
			velikost_foto[4][0] = 47.8;   // Standard A6 TIFF
			velikost_foto[4][1] = 108.0;  // Standard A5 TIFF
			velikost_foto[4][2] = 197.0;  // Standard A4 TIFF
			
			velikost_foto[5][0] = 191.0;   // Profi A6 TIFF
			velikost_foto[5][1] = 216.0;  // Profi A5 TIFF
			velikost_foto[5][2] = 788.0;  // Profi A4 TIFF
      
      // vypocet ceny
      if (pocet_a6 > 0) // nejake foto
      {
        c_foto_celkem += pocet_a6 * c_foto[foto_rozliseni][0];
      }
      if (pocet_a5 > 0) // nejake foto
      {
        c_foto_celkem += pocet_a5 * c_foto[foto_rozliseni][1];
      }
      if (pocet_a4 > 0) // nejake foto
      {
        c_foto_celkem += pocet_a4 * c_foto[foto_rozliseni][2];
      }
    }

    
    
    // vlozka - pocet disku
    var kapacita_dvd = 4300; // kapacita DVD (MB)
    
		var pocet_disku;
    var celkova_velikost = 0;
    var tiff_offset = 0; // ofset v poli velikosti (TIFF velikosti jsou na indexech 3, 4 a 5)
    if ($("#volitelne-sken-foto").is(":visible") && $("input#sken-foto-tiff").is(":checked")) tiff_offset = 3;
		if (zajem_a6) celkova_velikost += pocet_a6 * velikost_foto[foto_rozliseni + tiff_offset][0];
		if (zajem_a5) celkova_velikost += pocet_a5 * velikost_foto[foto_rozliseni + tiff_offset][1];
		if (zajem_a4) celkova_velikost += pocet_a4 * velikost_foto[foto_rozliseni + tiff_offset][2];
		  
		pocet_disku = Math.ceil(celkova_velikost / kapacita_dvd); // zaokrouhleni nahoru
		
    
    // volitelne sluzby
    var c_volitelne_celkem = 0;
    var zajem_volitelne = $("#volitelne-sken-foto").is(":visible"); // zobrazen vyber 
    if (zajem_volitelne)
    {
      // ceny za jeden disk (x 10, pozdeji se vydeli)
      var c_volitelne_au = 10; // cena za jeden snimek!
      var c_volitelne_tiff = 20; // cena za jeden snimek!
      var c_volitelne_potisk = 490;
      var c_volitelne_kopie = 290;
      var c_volitelne_archivace = 490;
      
      // au, tiff
      if ($("input#sken-foto-au").is(":checked"))     c_volitelne_celkem += c_volitelne_au * (pocet_a6 + pocet_a5 + pocet_a4);
      if ($("input#sken-foto-tiff").is(":checked"))  c_volitelne_celkem += c_volitelne_tiff * (pocet_a6 + pocet_a5 + pocet_a4);
      
      // potisk, archivace
      if ($("input#sken-foto-potisk").is(":checked"))     c_volitelne_celkem += c_volitelne_potisk * pocet_disku;
      if ($("input#sken-foto-archivace").is(":checked"))  c_volitelne_celkem += c_volitelne_archivace * pocet_disku;
      
      // kopie
      var pocet_kopii = 0;
      if ($("input#sken-foto-kopie-pocet").val() != "")
			  pocet_kopii = parseInt($("input#sken-foto-kopie-pocet").val()); // ziskame pocet
			else
			  pocet_kopii = 0;
      if ($("input#sken-foto-kopie-pocet").val() != "" && $("input#sken-foto-kopie").is(":checked"))
			  $("input#sken-foto-kopie-pocet").val(pocet_kopii); // odstraneni nul
      if ($("input#sken-foto-kopie").is(":checked"))
      { 
        if (pocet_kopii > 0)
          c_volitelne_celkem += c_volitelne_kopie * pocet_disku * pocet_kopii;
        else
          $("input#sken-foto-kopie").attr('checked', false); // pokud je kopii nula, odskrtneme
      } else // neni zaskrtnuto, kopie tedy nebudou
      {
        pocet_kopii = 0;
      }

    }
    
    $("#cena-sken-foto").text((c_foto_celkem + c_volitelne_celkem) / 10);
    
    
    
    var minimalni_objednavka = 1000;
    
    var celkova_cena = c_foto_celkem + c_volitelne_celkem;
		if (pocet_disku > 0 && celkova_cena < minimalni_objednavka) celkova_cena = minimalni_objednavka; // minimalni objednavka (pokud se neco objednava)
		var log_cena = celkova_cena / 10;
		c_sken_foto = log_cena;
    celkova_cena = oddel_tisice((celkova_cena / 10).toFixed(2), " ");
    celkova_cena = celkova_cena.replace(/\./g, ',') + " Kč";
    $("#cena-sken-foto").text(celkova_cena);
    
		var text_disky = "Vaše naskenované foto budou uloženy na <strong>" + pocet_disku + " DVD</strong>";
    if (pocet_kopii > 0)
		{
		  text_disky += " (plus ";
			if (pocet_kopii > 1) text_disky += pocet_kopii + " &times; ";
			text_disky += pocet_disku + " DVD jako kopie)";
		}
    text_disky += ".";
    if (pocet_disku > 0)
      $("#poznamka-sken-foto").html(text_disky);
    else
      $("#poznamka-sken-foto").text("");
    
    aktualizace_superceny();
    
    /* AJAX log */
    if (zajem_volitelne)
    {
      var log_volitelne = "vol:";
      if ($("input#sken-foto-au").is(":checked"))         log_volitelne += " au";
      if ($("input#sken-foto-tiff").is(":checked"))       log_volitelne += " tiff";
      if ($("input#sken-foto-potisk").is(":checked"))     log_volitelne += " potisk";
      if ($("input#sken-foto-archivace").is(":checked"))  log_volitelne += " archivace";
      if (pocet_kopii > 0)                                log_volitelne += " kopie_" + pocet_kopii;
    }
    
    rozliseni_jmena = new Array();
    rozliseni_jmena[0] = "mini";
    rozliseni_jmena[1] = "standard";
    rozliseni_jmena[2] = "profi";
    ice_jmena = new Array();
    ice_jmena[0] = "ne";
    ice_jmena[1] = "ano";
    
    var log_popis = "";
    if (zajem_a6) log_popis += "A6: " + pocet_a6 + " ks, ";
    if (zajem_a5) log_popis += "A5: " + pocet_a5 + " ks, ";
    if (zajem_a4) log_popis += "A4: " + pocet_a4 + " ks, ";
    if (zajem_a6 || zajem_a5 || zajem_a4) log_popis += "rozliseni: " + rozliseni_jmena[foto_rozliseni] + ", ";
    if (zajem_volitelne) log_popis += log_volitelne;
    if (log_popis == "") log_popis = "nic";
    log_spocitani("sken_foto", log_popis, log_cena); // log   
}

/*
* prepise celkovou cenu vsech sluzeb
*/
function aktualizace_superceny()
{
  var celkova_cena = c_sken_dia + c_sken_foto + c_digi_videa;
  celkova_cena = oddel_tisice(celkova_cena.toFixed(2), " ");
  celkova_cena = celkova_cena.replace(/\./g, ',') + " Kč";
  $("#cena-vse").text(celkova_cena);
}

function is_def(variable)
{
  return (typeof(window[variable]) == "undefined") ? false: true;
}

function oddel_tisice(n, sep) {
var sRegExp = new RegExp(/(-?[0-9]+)([0-9]{3})/);
sValue = n + "";

if (sep === undefined) sep = ",";
while (sRegExp.test(sValue))
{
  sValue = sValue.replace(sRegExp, "$1" + sep + "$2");
}
return sValue;
}


/*
* 2.25 hod 65 min => 3 hod 20 min
*/ 
function normalize_time(par_hod, par_min)
{
      var vstup_hod = (par_hod != "") ? par_hod : "0";
      var vstup_min = (par_min != "") ? par_min : "0";
      
			var hod = uprav_vstup_desetinne(vstup_hod); // hodiny v upravenem formátu 123,45
      var min = vstup_min; // minuty ve formátu 123
      
      hod = hod.replace(/,/g, '.'); // nahradíme všechny čárky tečkou
      
      var index = hod.indexOf('.'); // zjistime, kde je tecka

      var hod_cele = parseInt(hod.substring(0, (index > -1 ? index : 99999))); // rozdelime hodiny na celou cast
      var hod_zlomek; 
			if (index > -1) // jetam desetinna tecka
			  hod_zlomek = parseFloat("0." + hod.substring(index + 1)); // a na cast zlomkovou
			else // neni tam desetinna tecka
			  hod_zlomek = 0;

      var min_hod = Math.floor(parseInt(min) / 60); // zjistime, kolik celych hodin predstavuji minuty
      var min_zbytek = parseInt(min) - (min_hod * 60); // a kolik minut z necele hodiny zbyde

      min = Math.floor(hod_zlomek * 60) + min_zbytek; // secteme zlomkovou cast hodin a zbytkove minuty
      hod_cele += min_hod; // prictu ty hodiny ziskane z minut
      
			if (min >= 60) // pokud tentio soucet bude vetsi nez hodina (mensi nez dve hodiny bude urcite)
			{
			  hod_cele++; // jednu hodinu pricteme do celych hodin
			  min -= 60; // a odecteme z minut
			}
			
			var pole = new Array();
			pole[0] = hod_cele;
			pole[1] = min;
			return pole;
			
}

/*
*  uprava pole, kde mohou byt desetinne tecky a carky
*/
function uprav_vstup_desetinne(hodnota)
{
      hodnota = hodnota.replace(/\./g, ','); // budeme mit jen carky
      var index = hodnota.indexOf(','); // index prvniho vyskytu carky
      if (index > -1) // je tam desetinna carka
			{ 
			  if (index == 0)
				{
				  hodnota = '0' + hodnota; // ",123" => "0,123" 
				  index++; // zmenil se retezec, musime zmenit i index
				}
        var tail = hodnota.substring(index + 1); // "45,123" => "123" (vse za desetinnou carkou)
        var index_druheho = tail.indexOf(','); // tam uz nesmi byt carka / jeji index
        if (index_druheho > 0) tail = tail.substring(0, index_druheho) // "123,5" => "123"
        var posledni_znak = tail.substring(tail.length - 1);
        while (posledni_znak == "0")
        {
          tail = tail.slice(0, tail.length - 1); // odrizneme posledni znak
          posledni_znak = tail.substring(tail.length - 1); // novy posledni znak
        }
        if (parseInt(tail) > 0) // pokud nezbyla jen nula, pripojime ho k puvodnimu
          hodnota = hodnota.substring(0, (index > 0 ? index : 1)) + "," + tail; // vse do prvni carky + carka + vse do dalsi carky
        else
          hodnota = hodnota.substring(0, (index > 0 ? index : 1)); // vse do prvnmi carky (za carkou byly kraviny nebo nula)
      }
      return hodnota;
}

/*
* Odesle objednavku - formular cenove kalkulacky
*/
function odeslat_objednavku()
{
  /*********************************************************************/
  // DEBILNI provizorni reseni, kde se jen serializuji formulare
  /*********************************************************************/

  var hlaseni = "";

  var sken_dia = "";
	if ($("#sken-dia-body").is(":visible")) { 
	  spocitat_sken_dia();
	  sken_dia   = $("#form-sken-dia").serializeArray();
	  if ($("#volitelne-sken-dia").is(":visible")) hlaseni += "sken-dia volitelne ANO\n"; else hlaseni += "sken-dia volitelne NE\n";
		if ($("#svitky-sken-dia").is(":visible")) hlaseni += "sken-dia svitky ANO\n"; else hlaseni += "sken-dia svitky NE\n"; 
	}
	
	var sken_foto = "";
  if ($("#sken-foto-body").is(":visible")) {
	  spocitat_sken_foto();
	  sken_foto  = $("#form-sken-foto").serializeArray();
	  if ($("#volitelne-sken-foto").is(":visible")) hlaseni += "sken-foto volitelne ANO\n"; else hlaseni += "sken-foto volitelne NE\n";
	}
	
	var digi_videa = "";
  if ($("#digi-videa-body").is(":visible")) {
	  spocitat_digi_videa();
	  digi_videa = $("#form-digi-videa").serializeArray();
	  if ($("#volitelne-digi-videa").is(":visible")) hlaseni += "digi-videa volitelne ANO\n"; else hlaseni += "digi-videa volitelne NE\n";
	}

  if ((c_sken_dia + c_sken_foto + c_digi_videa > 0) && $("input#kontakt-telefon").val() != "") // neco tam je
  {

  var kontakt = $("#form-kontakt").serializeArray();
  var cena = c_sken_dia + c_sken_foto + c_digi_videa;
  cena = cena + " Kc";
  
  var vysledek = hlaseni + "<br />";
  vysledek += "<br /><strong>celkem " + cena + "</strong><br /><br />";
  if (sken_dia != "") vysledek += udelej_array(sken_dia) + "<br /><br />";
  if (sken_foto != "") vysledek += udelej_array(sken_foto) + "<br /><br />";
  if (digi_videa != "") vysledek += udelej_array(digi_videa) + "<br /><br />";
  vysledek += "<strong>"+udelej_array(kontakt)+"</strong>";
  //alert(vysledek);
  //return;
  $.get("../calc_odeslat.php", { report: vysledek } );
  $("#odeslani-report").html("<span>Vaše objednávka byla odeslána. Děkujeme.</span>");
  }
  else // nic nebo neni telefon
  {
    $("#odeslani-report").text("Vyberte prosím služby, o které máte zájem, a vyplňte telefon či e-mail.");
  }
}

function udelej_array(query){
    json = "";

    for (i in query) {
        json = json + query[i].name +"  =  " + query[i].value+"<br />";
        }
    return json;
}

    





