function getDiamondPriceString(price) {

  switch (price) {
    case 1:
      return "1 diamant";

    case 2:
    case 3:
    case 4:
      return price.toString() + " diamanty";

    default:
      return fnumber("s.0", price) + " diamantů";
  }
}




function getShortDiamondPriceString(price) {

  switch (price) {
    case 1:
      return "diamant";

    case 2:
    case 3:
    case 4:
      return "diamanty";

    default:
      return "diamantů";
  }
}




function checkField(rule, obj) {
  
  var l = "";
  if (obj.label != null) {
    if (obj.label.toUpperCase() == obj.label)
      l = " " + obj.label;
    else
      l = " " + obj.label.toLowerCase();
  }
    

  switch (rule) {

    case "required":
      if (jQuery.trim(obj.elem.value) == "") {
        alert("Vstupní údaj" + l + " musí být vyplněn.");
        obj.elem.select();
        obj.elem.focus();
        return false;
      }
      break;

      
    case "passwd":
      if (obj.elem.value == "") {
        alert(obj.label + " nesmí být prázdné.");
        obj.elem.select();
        obj.elem.focus();
        return false;
      }
      if (obj.elem2.value == "") {
        alert(obj.label2 + " nesmí být prázdná.");
        obj.elem2.select();
        obj.elem2.focus();
        return false;
      }
      if (obj.elem.value != obj.elem2.value) {
        alert("Hesla se neshodují.");
        obj.elem.select();
        obj.elem.focus();
        return false;
      }
      break;

      
    case "psc":
      var psc = new RegExp("^[0-9]{5}$");
      if (!psc.test(obj.elem.value)) {
        alert("Nesprávně zadaný údaj" + l + ".");
        obj.elem.select();
        obj.elem.focus();
        return false;
      }
      break;


    case "mail":
      var mail = new RegExp("^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$", "i");
      if (!mail.test(obj.elem.value)) {
        alert("Nesprávně zadaný údaj" + l + ".");
        obj.elem.select();
        obj.elem.focus();
        return false;
      }
      break;


    case "int":
      var intre = new RegExp("^[0-9]+$");
      if (!intre.test(obj.elem.value)) {
        alert("Nesprávně zadaný číselný údaj" + l + ".");
        obj.elem.select();
        obj.elem.focus();
        return false;
      }
      break;


    case "cartitem":
      var count = new RegExp("^[0-9]+$");
      if (!count.test(obj.elem.value) || (parseInt(obj.elem.value) < 1)) {
        alert("Nesprávně zadaný počet kusů.");
        obj.elem.select();
        obj.elem.focus();
        return false;
      }
      break;

      
    case "diamonditem":
      var items = parseInt(obj.elem.value);
      if (obj.available < obj.used + items * obj.price) {
        var missing = obj.used + items * obj.price - obj.available;
        alert("K nákupu tohoto zboží Vám chybí " + getDiamondPriceString(missing) + ".");
        obj.elem.select();
        obj.elem.focus();
        return false;
      }
      break;
  }

  return true;
}




function checkForm(form) {
  
  var trim = false;
  var trimTypes = new Array();

  var operations = form.className.split(" ");

  var re = new RegExp("^alert-insufficient-diamonds-([0-9]+)-([0-9]+)-([0-9]+)$");

  for (var i = 0; i < operations.length; i++) {

    var parts = operations[i].split("-");
    if (parts[0] == "trim") {
      trim = true;
      for (var j = 1; j < parts.length; j++)
        trimTypes.push(parts[j]);
    }

    if (operations[i] == "alert-not-registered") {
      alert("Diamantové zboží mohou nakupovat jen registrovaní zákazníci. Prosím, zaregistrujte se. Za registraci získáte 1 diamant.");
      return false;
    }
    
    if (re.test(operations[i])) {
      var str = re.exec(operations[i]);
      var p = parseInt(str[1]);
      var a = parseInt(str[2]);
      var u = parseInt(str[3]);
      var m = u + p - a;
      alert("K nákupu tohoto zboží Vám chybí " + getDiamondPriceString(m) + ".");
      return false;
    }

  }

  
  if (trim) {
    for (var i = 0; i < form.elements.length; i++)
      for (var j = 0; j < trimTypes.length; j++)
        if (form.elements[i].type == trimTypes[j])
          form.elements[i].value = jQuery.trim(form.elements[i].value);
  }
  
  
  for (var i = 0; i < form.elements.length; i++) {

    if (form.elements[i].className != "") {

      var tests = form.elements[i].className.split(" ");
      for (var j = 0; j < tests.length; j++) {
        
        var obj = new Object();
        obj.elem = form.elements[i];
        obj.elem2 = null;
        obj.label = null;
        obj.label2 = null;
        obj.price = null;
        obj.account = null;

        var id = form.elements[i].id;
        var elem = $(form).find("label[for='" + id + "']");
        if ((elem != null) && (elem.length == 1))
          obj.label = $(elem).text();
        elem = $(form).find("#hidden-label-" + id);
        if ((elem != null) && (elem.length == 1))
          obj.label = elem.text();

/*
        var id = form.elements[i].id;
        if ((form.name.constructor == String) && (form.name != "")) {
          var label = $("form[name='" + form.name + "'] label[for='" + id + "']").text();
          if (label != "")
            obj.label = label;
        }
        else if ((form.id.constructor == String) && (form.id != "")) {
          var label = $("#" + form.id + " label[for='" + id + "']").text();
          if (label != "")
            obj.label = label;
        }
*/

        var rule = "notest";
        var parts = tests[j].split("-");
        
        if (parts.length == 1)
          rule = parts[0];
        
        if ((parts.length == 3) && (parts[0] == "ifc")) {
          var index = -1;
          for (var k = 0; k < form.elements.length; k++) {
            if (form.elements[k].name == parts[1]) {
              index = k;
              break;
            }
          }
          if ((index != -1) && (form.elements[index].type == "checkbox") && (form.elements[index].checked))
            rule = parts[2];
        }
        
        if ((parts.length == 4) && (parts[0] == "ifr")) {
          for (var k = 0; k < form.elements.length; k++) {
            if ((form.elements[k].name == parts[1]) && (form.elements[k].type == "radio")
            && (form.elements[k].value == parts[2])  && (form.elements[k].checked)) {
              rule = parts[3];
              break;
            }
          }
        }
        
        if ((parts.length == 2) && (parts[0] == "passwd")) {
          for (var k = 0; k < form.elements.length; k++) {
            if ((form.elements[k].name == parts[1]) && (form.elements[k].type == "password")) {
              rule = "passwd";
              obj.elem2 = form.elements[k];
              id = form.elements[k].id;
              var label = $(form).find("label[for='" + id + "']").text();
              if (label != null)
                obj.label2 = label;
              break;
            }
          }
        }

        if ((parts.length == 4) && (parts[0] == "diamonditem")) {
          rule = "diamonditem";
          obj.price = parseInt(parts[1]);
          obj.available = parseInt(parts[2]);
          obj.used = parseInt(parts[3]);
        }

/*        
        if (obj.elem2 == null) {
          obj.elem2 = new Object ();
          obj.elem2.value = new String("");
        }  
        alert(form.elements[i].name + "(" + tests[j] + ") => " + rule + ", value => " + obj.elem.value + ", value2 => " + obj.elem2.value + ", label => " + obj.label);
*/        
        
        if ((rule != "notest") && (!checkField(rule, obj)))
          return false;

      }

    }

  }  
  
  return true;
    
}




function xurl(str, name, value) {

  value = encodeURIComponent(value);

  var i = str.indexOf("?" + name + "=");
  var j = str.indexOf("&" + name + "=");

  if ((i == -1) && (j == -1)) {
    if (str.indexOf("?") == -1)
      return str + "?" + name + "=" + value;
    else
      return str + "&" + name + "=" + value;
  }

  if (i != -1) {
    var par = "?" + name + "=";
  }
  else {
    var par = "&" + name + "=";
    i = j;
  }

  k = str.indexOf("&", i + 1);

  if (k == -1)
    return str.substr(0, i) + par + value;
  else
    return str.substr(0, i) + par + value + str.substr(k);

}




function fnumber(f, n) {

  var format = "s.2";
  
  if (f.length >= 3)
    format = f.substr(0, 3);
  else {
    var l = f.length;
    format = f.concat(format.substr(l, 3 - l));
  }
  
  var thousandsSeparator = format.charAt(0);
  var decimalPoint = format.charAt(1);
  var decimals = format.charAt(2);
  
  if (thousandsSeparator == "s")
   thousandsSeparator = " ";
  if (thousandsSeparator == "n")
    thousandsSeparator = "";

  var str = (new Number(n)).toFixed(decimals).replace(".", decimalPoint);
  var i = str.indexOf(".");
  if (i == -1)
    i = str.length;
  var j = 0;
  while (i > 0) {
    if ((j > 0) && (j % 3 == 0))
      str = str.substr(0, i) + thousandsSeparator + str.substr(i);
    i--;
    j++;
  }
  
  return str;
}




function getFeesAndTotal(state, transport, payment) {

  if (state == 0) {
    var limit = parseInt($("#pblimit").text());
    var post = parseInt($("#postovneddph").text());
    if (payment == 2)
      post = parseInt($("#postovnepdph").text());
  }
  else {
    var limit = parseInt($("#pblimitsk").text());
    var post = parseInt($("#postovneddphsk").text());
    if (payment == 2)
      post = parseInt($("#postovnepdphsk").text());
  }

  var pack = parseInt($("#balneddph").text());
  if (payment == 2)
    pack = parseInt($("#balnepdph").text());

  var sum = parseInt($(".money-sum").text().replace(" ", ""));
  if ((sum < limit) && (transport != 2) && (payment != 3)) {
    var total = post + pack + sum;
  }
  else {
    post = 0;
    pack = 0;
    var total = sum;
  }

  return new Array(post, pack, total);
}




function updateCart() {

  if ($(".post").length > 0) {

/*
  if ($("#da").attr("checked"))
    var state = $("#dstat").attr("selectedIndex");
  else
    var state = $("#stat").attr("selectedIndex");
*/

    if (document.getElementById("da").checked)
      var state = document.getElementById("dstat").selectedIndex;
    else
      var state = document.getElementById("stat").selectedIndex;

    var transport = 1;
    if (document.getElementById("doprava_1").checked)
      transport = 2;
    else if (($("#doprava2").length > 0) && document.getElementById("doprava_2").checked)
      transport = 3;

    var payment = 1;
    if (document.getElementById("vyrizeni_1").checked)
      payment = 2;
    if (document.getElementById("vyrizeni_2").checked)
      payment = 3;

/*
    if (($("#delivery").length > 0) && ($("#delivery").text() == "1")) {
      transport = 3;
      document.getElementById("doprava_2").checked = true;
    }
*/

    if (((transport == 1) || (transport == 3)) && (payment == 3)) {
      payment = 1;
      document.getElementById("vyrizeni_0").checked = true;
      $(".ipayment").text("dobírkou");
    }
    else if ((transport == 2) && (payment == 1)) {
      payment = 3;
      document.getElementById("vyrizeni_2").checked = true;
      $(".ipayment").text("hotově");
    }

/*
    if (state == 0) {
      var limit = parseInt($("#pblimit").text());
      var post = parseInt($("#postovneddph").text());
      if (payment == 2)
        post = parseInt($("#postovnepdph").text());
    }
    else {
      var limit = parseInt($("#pblimitsk").text());
      var post = parseInt($("#postovneddphsk").text());
      if (payment == 2)
        post = parseInt($("#postovnepdphsk").text());
    }

    var pack = parseInt($("#balneddph").text());
    if (payment == 2)
      pack = parseInt($("#balnepdph").text());

    var sum = parseInt($(".money-sum").text().replace(" ", ""));
    if ((sum < limit) && (transport != 2) && (payment != 3)) {
      var total = post + pack + sum;
    }
    else {
      post = 0;
      pack = 0;
      var total = sum;
    }
*/

    var ft = getFeesAndTotal(state, transport, payment);
    var post = ft[0];
    var pack = ft[1];
    var total = ft[2];

    $(".post").text(fnumber("s.2", post));
    $(".pack").text(fnumber("s.2", pack));
    $(".total").text(fnumber("s.2", total));

    $(".ipost").html(fnumber("s.0", post).replace(/ /g, "&nbsp;"));
    $(".ipack").html(fnumber("s.0", pack).replace(/ /g, "&nbsp;"));
    $(".itotal").html(fnumber("s.0", total).replace(/ /g, "&nbsp;"));

  }
  

  else if (($(".post").length == 0) && ($(".itotal").length == 1)) {

    var state = parseInt($("#state").text());
    var transport = parseInt($("#transport").text());
    var payment = parseInt($("#payment").text());

    var ft = getFeesAndTotal(state, transport, payment);

    $(".ipost").html(fnumber("s.0", ft[0]).replace(/ /g, "&nbsp;"));
    $(".ipack").html(fnumber("s.0", ft[1]).replace(/ /g, "&nbsp;"));
    $(".itotal").html(fnumber("s.0", ft[2]).replace(/ /g, "&nbsp;"));

  }
  
  
  if (($(".money-sum").length > 0) && ($(".presents").length > 0)) {

    var sum = parseInt($(".money-sum").text().replace(" ", ""));
    var divisor = parseInt($("#darekdelitel").text());
    var presentsLimit = parseInt($("#dareklimit").text());

    if (divisor > 0) {
      var presents = Math.floor(sum / divisor);
      if ((presentsLimit > 0) && (presents > presentsLimit))
        presents = presentsLimit;
      if (presents > 0)
        $(".present-row").removeClass("nodisplay");
      else
        $(".present-row").addClass("nodisplay");
      $(".presents").text(fnumber("s.0", presents));
    }

  }
  

  if ($(".diamond-sum").length > 0) {
  
    var sum = parseInt($(".diamond-sum").text().replace(" ", ""));
    var available = parseInt($("#pkzbyva").text().replace(" ", ""));
  
    var free = available - sum;
    if (free < 0)
      free = 0;

    if ($(".diamond-free").length > 0)
      $(".diamond-free").text(fnumber("s.0", free));
      $(".diamond-free-string").text(getShortDiamondPriceString(free));
  }
  
  
  if (($(".money-sum").length > 0) && ($("#pkdelitel").text() != "") && (parseInt($("#pkdelitel").text()) != 0)) {
    var moneySum = parseInt($(".money-sum").text().replace(" ", ""));
    var divisor = parseInt($("#pkdelitel").text());
    
    var profit = Math.floor(moneySum / divisor);
    var moneyIncrease = (profit + 1) * divisor - moneySum;
    var higherProfit = profit + 1;

    if (profit == 0) {
      $(".tip").addClass("nodisplay");
    }
    else {
      $(".diamond-profit").text(getDiamondPriceString(profit));
      $(".tip").removeClass("nodisplay");
    }

    $(".money-increase").text(fnumber("s.0", moneyIncrease));
    $(".higher-diamond-profit").text(getDiamondPriceString(higherProfit));

  }

  switch (transport) {
    case 1:
    case 3:
      $("#vyrizeni_0").attr("disabled", false);
      $("#vyrizeni_1").attr("disabled", false);
//      $("#vyrizeni_1").attr("disabled", true);
      $("#vyrizeni_2").attr("disabled", true);
      break;

    case 2:
      $("#vyrizeni_0").attr("disabled", true);
      $("#vyrizeni_1").attr("disabled", false);
//      $("#vyrizeni_1").attr("disabled", true);
      $("#vyrizeni_2").attr("disabled", false);
      break;
  }

}




$(document).ready(function() {

  $("a.rollover").bind("mouseover", function() {
    $(this).children().css("background-position", "bottom left");
  });

  $("a.rollover").bind("mouseout", function() {
    $(this).children().css("background-position", "top left");
  });




  $("input.big, input.mini, input.small, input.wide, input.double").bind("mouseover", function() {
    $(this).css("background-position", "bottom left");
  });

  $("input.big, input.mini, input.small, input.wide, input.double").bind("mouseout", function() {
    $(this).css("background-position", "top left");
  });




  $("img.popup,img.border-highlight").bind("mouseover", function() {
    $(this).css("border-color", "#a01442");
    this.style.cursor = "pointer";
  });

  $("img.popup,img.border-highlight").bind("mouseout", function() {
/*
    if ($(this).parent().hasClass('active'))
      $(this).css("border-color", "black");
    else
      $(this).css("border-color", "#d7d7d7");
*/
    $(this).css("border-color", "#d7d7d7");
    this.style.cursor = "auto";
  });

  $("img.popup").bind("click", function() {
    var i = $("img.popup").index(this);
//    var t = $("div#images span").eq(i).html();
    var t = $("span.popup-data").eq(i).html();
    var info = t.split("_");

    var url = xurl("detail.php", "image", this.src);
    url = xurl(url, "item", info[0]);

    var width = parseInt(info[2]) + 70;
    var height = parseInt(info[3]) + 70;

    var win = window.open(url, info[1], "history=no,toolbar=0,location=0,directories=0,status=0,menubar=0"
      + ",scrollbars=no,resizable=no,width=" + width + ",height=" + height);
    win.focus();
  });




  $("a.popup").bind("click", function() {

    var name = "popup" + $("a.popup").index(this).toString();
    var url = $(this).attr("href");
    var content = $(this).text();
    
    var parameters = "";
    var tags = $(this).prev();
    if ((tags.length == 1) && ($(tags[0]).hasClass("popup-parameters"))) {
      parameters = $(tags[0]).text();
      parameters = parameters.replace("_siwin", "history=no,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=no,resizable=no");
    }

    var win = window.open(url, name, parameters);
    win.focus();
    
    return false;
  });

  

  
  $("img.click-close").bind("mouseover", function() {
    this.style.cursor = "pointer";
  });

  $("img.click-close").bind("mouseout", function() {
    this.style.cursor = "auto";
  });

  $("img.click-close").bind("click", function() {
    var o = window.opener;
    window.close();
    o.focus();
  });



  
  $(":checkbox").each(function () {

    $(this).bind("click", function() {
      var c = ".onc-" + this.name + "-active";
      if (this.checked) {
        $(":input").filter(c).attr("disabled", false);
        $(":input").filter(c).css("background-color", "white");
      }
      else {
        $(":input").filter(c).attr("disabled", true);
//        $(":input").filter(c).attr("disabled", "disabled");
        $(":input").filter(c).css("background-color", "#ebebeb");
        $(":text,:password,textarea").filter(c).attr("value", "");
      }
      updateCart();
    });

    var c = ".onc-" + this.name + "-active";
    if (this.checked) {
      $(":input").filter(c).attr("disabled", false);
//      $(":input").filter(c).css("background-color", "transparent");
      $(":input").filter(c).css("background-color", "white");
    }
    else {
      $(":input").filter(c).attr("disabled", true);
//      $(":input").filter(c).attr("disabled", "disabled");
      $(":input").filter(c).css("background-color", "#ebebeb");
    }

  });
  
  
  
  
  $("select").bind("change", function(e) {
    updateCart();
  });
  
  $(":radio").bind("click", function(e) {
    switch ($(this).attr("id")) {
      case "doprava_0": $(".itransport").text("Česká pošta"); break;
      case "doprava_1": $(".itransport").text("osobní odběr"); break;
      case "doprava_2": $(".itransport").text("doprava Minas Gerais"); break;
      case "vyrizeni_0": $(".ipayment").text("dobírkou"); break;
      case "vyrizeni_1": $(".ipayment").text("převodem"); break;
      case "vyrizeni_2": $(".ipayment").text("hotově"); break;
    }
    updateCart();
  });




  $(".auto-recount").bind("keyup", function(e) {

    var index = $(".auto-recount").index(this);

    var itemPrice = parseInt($("td.iprice").eq(index).text());
    var count = 0;
    if (/^ *[0-9]+ *$/.test(this.value))
      count = parseInt(this.value);

    var totalPrice = itemPrice * count;
    if ($("td.tprice").eq(index).hasClass("money-item")) {
      $("td.tprice").eq(index).text(totalPrice.toFixed(2));
      var items = $("td.money-item");
      var sum = 0;
      for (i = 0; i < items.length; i++)
        sum += parseInt($(items[i]).text().replace(" ", ""));
      $(".money-sum").text(fnumber("s.2", sum));
      $(".imoney-sum").html(fnumber("s.0", sum).replace(/ /g, "&nbsp;"));
    }
    else if ($("td.tprice").eq(index).hasClass("diamond-item")) {
      $("td.tprice").eq(index).text(totalPrice);
      var items = $("td.diamond-item");
      var sum = 0;
      for (i = 0; i < items.length; i++)
        sum += parseInt($(items[i]).text().replace(" ", ""));
      $(".diamond-sum").text(fnumber("s.0", sum));
    }

    var info = $(".auto-recount").map(function() {
      return jQuery.trim($(this).val().replace("*", ""));
    }).get().join(";");

    $("a").each(function (i) {
      this.href = xurl(this.href, "change", info);
    });

    $("form").each(function (i) {
      this.action = xurl(this.action, "change", info);
    });
    
    updateCart();

  });
  
  

  
  $("#buyButton").bind("click", function() {

    var dlimit = parseInt($("#pkobjlimit").text());
    var slimit = parseInt($("#nlimitsk").text());


    var sum = parseInt($(".money-sum:first").text().replace(" ", ""));

    if ((sum == 0) && ($(".money-sum").length == 1) && ($(".diamond-sum").length == 0)) {
      alert("Nákupní košík je prázdný.");
      return false;
    }

    if ((sum == 0) && ($(".money-sum").length == 1) && ($(".diamond-sum").length == 1)) {
      alert("Nákup zboží za diamanty je možný pouze, pokud cena zboží přesáhne " + dlimit + " Kč.");
      return false;
    }


/*
    if ($("#da").attr("checked"))
      var state = $("#dstat").attr("selectedIndex");
    else
      var state = $("#stat").attr("selectedIndex");
*/

    if (document.getElementById("da").checked)
      var state = document.getElementById("dstat").selectedIndex;
    else
      var state = document.getElementById("stat").selectedIndex;


    if ((state == 1) && (sum < slimit)) {
      alert("Při zaslání objednávky na Slovensko je nutné objednat zboží v minimální hodnotě " + slimit + " Kč.");
      return false;
    }


    if ($(".diamond-sum").length > 0) {
      var diamondSum = parseInt($(".diamond-sum").text().replace(" ", ""));
      var availableDiamonds = parseInt($("#pkzbyva").text());
      if (diamondSum > 0) {
        if (availableDiamonds == -1) {
          alert("Diamantové zboží mohou nakupovat jen registrovaní zákazníci. Prosím, zaregistrujte se. Za registraci získáte 1 diamant.");
          return false;
        }
        else if (diamondSum > availableDiamonds) {
          var m = diamondSum - availableDiamonds;
          alert("K nákupu tohoto zboží Vám chybí " + getDiamondPriceString(m) + ".");
          return false;
        }
        if (sum < dlimit) {
          alert("Nákup zboží za diamanty je možný pouze, pokud cena zboží přesáhne " + dlimit + " Kč.");
          return false;
        }
      }
    }

    
    var transport = 1;
    if (document.getElementById("doprava_1").checked)
      transport = 2;
    else if (($("#doprava2").length > 0) && document.getElementById("doprava_2").checked)
      transport = 3;

    var payment = 1;
    if (document.getElementById("vyrizeni_1").checked)
      payment = 2;
    if (document.getElementById("vyrizeni_2").checked)
      payment = 3;
      
    if ((transport == 1) && (payment == 3)) {
      alert("Objednávku přepravovanou Českou poštou nelze platit hotově. Objednávku je možné platit dobírkou nebo bankovním převodem.");
      return false;
    }
    else if ((transport == 2) && (payment == 1)) {
      alert("Objednávku předávanou osobním odběrem nelze platit dobírkou. Objednávku je možné platit bankovním převodem nebo hotově.");
      return false;
    }
    else if ((transport == 3) && (payment == 3)) {
      alert("Objednávku přepravovanou dopravou MinasGerais nelze platit hotově. Objednávku je možné platit dobírkou nebo bankovním převodem.");
      return false;
    }


    var form = document.getElementById("cart");
    if (!checkForm(form))
       return false;


    var total = $(".total").text();
    return confirm("Potvrdit objednávku? Celková cena objednávky bude " + total + " Kč.")

  });
  



  $("#answerButton").bind("click", function() {

/*
    var logged = parseInt($("#logged").text());

    if (!logged) {
      alert("Pro účast v soutěži je nutné se zaregistrovat.");
      return false;
    }
*/

    var form = document.getElementById("answer");
    if (!checkForm(form))
       return false;

    return confirm("Odeslat zadanou odpověď?");

  });

  
 

  $("form.submit-check").bind("submit", function() {
    return checkForm(this);
  });

  
  
  
  if ($(".post").length > 0) {

    var transport = 1;
    if (document.getElementById("doprava_1").checked)
      transport = 2;
    else if (($("#doprava2").length > 0) && document.getElementById("doprava_2").checked)
      transport = 3;

    var payment = 1;
    if (document.getElementById("vyrizeni_1").checked)
      payment = 2;
    if (document.getElementById("vyrizeni_2").checked)
      payment = 3;

    if (((transport == 1) || (transport == 3)) && (payment == 3)) {
      payment = 1;
      document.getElementById("vyrizeni_0").checked = true;
    }
    else if ((transport == 2) && (payment == 1)) {
      payment = 3;
      document.getElementById("vyrizeni_2").checked = true;
    }
    
    switch (transport) {
      case 1:
      case 3:
        $("#vyrizeni_0").attr("disabled", false);
        $("#vyrizeni_1").attr("disabled", false);
//        $("#vyrizeni_1").attr("disabled", true);
        $("#vyrizeni_2").attr("disabled", true);
        break;

      case 2:
        $("#vyrizeni_0").attr("disabled", true);
        $("#vyrizeni_1").attr("disabled", false);
//        $("#vyrizeni_1").attr("disabled", true);
        $("#vyrizeni_2").attr("disabled", false);
        break;
    }

  }

});
