// JavaScript Document
//nastaveni

var countweb = 5;	//max pocet webu pro odeslani	
var startwebprice = 0;  // vychozi hodnota ceny webu
var limitTextarea = 250;
var limitInput = 40;
var antispam = '\<input type="hidden" name="kod" value="NO' + 'SP' + 'AM" /\>';
var slevaZKuponu = 0;

prepocitejCenu();

$(document).ready(function(){
		startwebprice = 126;		//default
		if(document.getElementById("mincena")){		//pokud je v html element s minimalni cenou, vzit vychozi hodnotu z nej
			startwebprice = parseInt($("#mincena").attr("value"), 10);
		}
	
  
// 		$("#priceall").text("0");
		$("#webcount1").val(startwebprice);
		$("#katal11").attr("checked", true);
		$("#webcounter").val(1);


//rozbaleni pridat paswword + fakturace ########################################

      $('.hiddenitems a').click( function(){
                $(this).next().toggle("normal");
        });

//pridaniwebu ##################################################################

$('.plusweb').click( function(){
      
        var countnow = $("#webcounter").val();
        
        if(countnow < countweb) {
         countnow++;
		     $("#countwebs").text(countnow);
		      
		     // zobrazime 
		     
		    $(".id"+countnow).toggle("normal");
		    $("#webcounter").val(countnow);
		    $("#url"+countnow).rules("add", {
				required:true,
				url:true
		    });
		    $("#email_registrace" + countnow).rules("add", {
				required:true,
				email:true
		    });
		    $("#web" + countnow).rules("add", {
				    required:true,
				    minlength:3
		    });
		    $("#popis" + countnow).rules("add", {
				    required:true,
				    minlength:5
		    });
		    $("#keywords" + countnow).rules("add", {
				    required:true,
				    minlength:5
		    });
					    
			  $(".minusweb").hide('fast');
        if(countnow>1)$(".minusweb").eq(countnow-2).show('fast');
        
		    if (countnow == countweb) { 
			    $(".plusweb").hide("fast");
			  }
       prepocitejCenu(countnow);
	} 
         
});

//odebrani webu ################################################################
    
$('.minusweb').click( function(){
        
        var countnow = $("#webcounter").val();
        if (countnow == countweb) { 
		        $(".plusweb").show("fast");
	      }
        var curentweb = eval($(this).parents('.registrace').find(".webcount").val());
        $(".id"+countnow).toggle("fast");
        $("#url" + countnow).rules("remove");
    	  $("#web" + countnow).rules("remove");
    	  $("#popis" + countnow).rules("remove");
    	  $("#keywords" + countnow).rules("remove");
    	  $("#email_registrace" + countnow).rules("remove");
    	  
        countnow--;
        $(".minusweb").hide('fast');
        if(countnow>1)$(".minusweb").eq(countnow-2).show('fast');      
        $("#countwebs").text(countnow);
        $("#webcounter").val(countnow);
        prepocitejCenu(countnow);
         
});

       
//vypocet ceny #################################################################

$('li.selprice').children("input").click( function(){
     
     //zjistime id webu
     var webid =  $(this).parents('.registrace').find("input:last").val();
     
    //hodnota (cena) aktualniho webu 
     var curent = eval($(this).parents('.registrace').find(".webcount").val());

    //hodnota aktualniho vyberu
     var priceone = eval($(this).siblings("input[type=hidden]").val()); 

    //checkboxes
    if($(this).attr("type")=="checkbox") { 

	    var allcheck = eval($(this).parents('.registrace').find(".checkbuttons").val());
  
    //hodnota checkboxů

    	    if($(this).attr("checked")==true){ //zatrhnuto?
		    allchecked = allcheck + priceone; 
	    } else{
		    allchecked = allcheck - priceone;
            }  
      //ulozeni do hidden
      $(this).parents('.registrace').find(".checkbuttons").val(allchecked);    
    } 
    
    //radio
    if($(this).attr("type")=="radio") { 
	    var priceradio = priceone;  
    //ulozeni do hidden 
	    $(this).parents('.registrace').find(".checkradio").val(priceradio);
    } 
     
    
    if(priceone > 0) {
    
	    //hodnota zatrhnutych checboxu 
	    var allchecks = eval($(this).parents('.registrace').find(".checkbuttons").val());      
	    
	    //hodnota zatrhnuteho radiobutonu 
	    var priceradio = eval($(this).parents('.registrace').find(".checkradio").val());
	    
	    var priceall = allchecks + priceradio;  //součet checboxů a radiobutonu  (hidden)
	   
	    $(this).parents('.registrace').find(".webcount").val(priceall); //ulozeni do hidden
	    $(this).parents('.registrace').find(".sumweb").text(priceall); //zapis do stranky
	    prepocitejCenu(webid);
    }
   
    
    
    
});
     
//pocitadlo delky textu v textarea a input #####################################
     
     //nacteni hodnot
$('.charsRemaining').text("0/"+limitTextarea);
$('.inputcharsRemaining').text("0/"+limitInput);   
  
$('.limitText').keyup(function() { 
                var len = this.value.length;
                if (len > limitTextarea) {
                    this.value = this.value.substring(0, limitTextarea);
                } 
                if(len > limitTextarea) len = limitTextarea;
                $(this).parents('.registrace').find('.charsRemaining').text(limitTextarea - len +"/" + limitTextarea);
});

$('.limitInput').keyup(function() { 
      var len = this.value.length;
      if (len > limitInput) {
             this.value = this.value.substring(0, limitInput);
      } 
      if(len > limitInput) len = limitInput;
      $(this).parents('.registrace').find('.inputcharsRemaining').text(limitInput - len +"/" + limitInput);
});
            
var container = $('div.bigerror');
$('ul#errorcontainer').text('');
 
   
//validace kontaktniho formulare################################################

var countwebs = $("#webcounter").val();

var validator = $("#objednavka").bind("invalid-form.validate", function() {  
			$("li.errorcontainer").html("Formulář obsahuje " + validator.numberOfInvalids() + " chybně vyplněných položek."); 
		}).validate({ 
			errorElement: "em", 
			errorContainer: $(".warning, .summary"),
			errorPlacement: function(error, element) {
				error.appendTo( element.parent("td").next("td") );
			},
			success: function(label) {
				label.text("ok!").addClass("success");
			},  
      rules: {
			jmeno: {required: true, minlength: 5},
			telefon: {required: true,minlength: 9,digits: true},
			username: {required: true,minlength: 5},
			email: {required: true,email: true},
			password: {required: true,minlength: 4},
			street: {required: true,minlength: 3},
			psc: {required: true,minlength: 5,digits: true},
			city: {required: true,minlength: 2},
			url1: {required: true, url: true},
			web1: {required: true, minlength: 3},
			popis1: {required: true, minlength: 5},
			keywords1: {required: true, minlength: 5},
			email_registrace1: {required: true, email: true}
				
     }  
});



jQuery.extend(jQuery.validator.messages, {
	required: "Povinný údaj.",
	remote: "Prosím, opravte údaje.",
	email: "Prosím, zadejte platný e-mail.",
	url: "Prosím, zadejte platné URL.",
	date: "Prosím, zadejte platné datum.",
	dateISO: "Prosím, zadejte platné datum (ISO).",
	number: "Prosím, zadejte číslo.",
	digits: "Prosím, zadávejte pouze číslice.",
	creditcard: "Prosím, zadejte číslo kreditní karty.",
	equalTo: "Prosím, zadejte znovu stejnou hodnotu.",
	accept: "Prosím, zadejte soubor se správnou příponou.",
	maxlength: jQuery.validator.format("Prosím, zadejte nejvíce {0} znaků."),
	minlength: jQuery.validator.format("Prosím, zadejte nejméně {0} znaků."),
	rangelength: jQuery.validator.format("Prosím, zadejte od {0} do {1} znaků."),
	range: jQuery.validator.format("Prosím, zadejte hodnotu od {0} do {1}."),
	max: jQuery.validator.format("Prosím, zadejte hodnotu menší nebo rovnu {0}."),
	min: jQuery.validator.format("Prosím, zadejte hodnotu větší nebo rovnu {0}.")
});  

	
	
	
	
});


            
// validace formularu###########################################################

$(document).ready(function(){ 
var container = $('div.bigerror');   
$('ul#errorContainer').text('');

$("#couponvalue").bind("keypress", function(e){
		if(e.keyCode == 13) {
			var jQE = jQuery.Event(e);    
			stahniData('couponvalue');
			jQE.preventDefault();
		}
	});

	
});


//kontrola kuponu bez refreshe stranky##########################################

var vystup = document.getElementById('resultvoucher');

function stahniData(voucher) {
	var voucherId = document.getElementById(voucher).value;
	// odmazeme stary skript, pokud existoval
	var hlavicka = document.getElementsByTagName('head')[0];
	var dataLoader = document.getElementById('scriptLoader');
	if(dataLoader) hlavicka.removeChild(dataLoader);
	
	// vytvorime novy element script
	script = document.createElement('script');
	script.id = 'scriptLoader';
	
	script.src = '/kupon.php?id='+voucherId+'&r='+Math.random();
	
	
	// POZOR, DULEZITE!! Skript musime vlozit do stranky pomoci DOM - appendChild()
	// Ihned po vlozeni prohlizec stahne skript a spusti jej
	x = document.getElementsByTagName('head')[0];
	x.appendChild(script);
	return false;
}

function vypisText(txt) {
var vystup = document.getElementById('resultvoucher');
	// nejsnazsi cesta, vlozime novy kod ke staremu na konec
	vystup.innerHTML += txt;
	
}

function chyba(txt) {
var vystup = document.getElementById('resultvoucher');
	// obycejny alert s hlaskou
	vystup.innerHTML += txt;
	
} 
function vymazData() {
var vystup = document.getElementById('resultvoucher');
    // v jednoduchem cyklu smazeme vsechny elementy v prvku vystup
    while(vystup.hasChildNodes()) vystup.removeChild(vystup.childNodes[0]);
    return false;
}  

function prepocitejCenu(){
     var ceny = $(".sumweb");
     var celkovaCena = 0;
		 var pocetWebu = $("#countwebs").text();
     for(i=0;i<pocetWebu;i++){
        celkovaCena+=parseInt(ceny[i].innerHTML, 10);
     }
     var proc, sleva;
     proc = celkovaCena / 100;
     sleva = proc * slevaZKuponu;
     sleva = Math.floor(sleva);
     celkovaCena -= sleva; 

		 $("#priceall").text(celkovaCena);
}

