function kosik_zavolej_pozadavek(funkce, parametr, umisteni, id_session, refresh){
    if (window.XMLHttpRequest) var ajax = new XMLHttpRequest;
    else if(window.ActiveXObject) var ajax = new ActiveXObject("Microsoft.XMLHTTP");
          
    if(ajax){
        document.getElementById(umisteni).innerHTML = '<img src=\"obrazy/ajax-loader.gif\" alt=\"nahrávám...\" />'; 
        ajax.open('POST', 'skripty/kosik_server_func.php?sul=' + new Date().getTime());
        ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        ajax.onreadystatechange = function(){
            if (ajax.readyState == 4 && ajax.status == 200){  
                document.getElementById(umisteni).innerHTML = ajax.responseText;
                if (refresh) location.reload();
            }
        }
        ajax.send('funkce='+funkce+'&parametr='+parametr+'&hash='+id_session);
    }
    else 
        window.alert('Váš prohlížeč tuto technologii nepodporuje.');
  }
  
  
  
  
function kosik_zavolej_pozadavek_multi(funkce, parametr1, parametr2, umisteni, id_session, potvrzeni){
    if (window.XMLHttpRequest) var ajax = new XMLHttpRequest;
    else if(window.ActiveXObject) var ajax = new ActiveXObject("Microsoft.XMLHTTP");
      
    if(ajax){
        document.getElementById(umisteni).innerHTML = '<img src=\"obrazy/ajax-loader.gif\" alt=\"nahrávám...\" />'; 
        ajax.open('POST', 'skripty/kosik_server_func.php?sul=' + new Date().getTime());
        ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        ajax.onreadystatechange = function(){
            if (ajax.readyState == 4 && ajax.status == 200){
                document.getElementById(umisteni).innerHTML = ajax.responseText;
                if (potvrzeni != "") window.alert(potvrzeni);
            }
        }
        ajax.send('funkce='+funkce+'&multi=1&parametr1='+parametr1+'&parametr2='+parametr2+'&hash='+id_session);
    }
    else 
        window.alert('Váš prohlížeč tuto technologii nepodporuje.');
}



function kosik_pridej_polozku(pocet, id_polozky){
    if (pocet < '1' || pocet > '99'){
        window.alert('Zadejte, prosím do objednávky číslo 1..99');
        return;
    }
    
    var hash = document.getElementById('hash').value;
    kosik_zavolej_pozadavek_multi('kosik_pridej_polozku', pocet, id_polozky, 'kosik_span_cena', hash, "Produkt byl přidán do košíku");
}


function kosik_odeber_polozku(id_polozky){
    var hash = document.getElementById('hash').value;
    kosik_zavolej_pozadavek('kosik_odeber_polozku', id_polozky, 'kosik_span_cena', hash, true);
}


function kosik_odesli_objednavku(){
    if (!zkontroluj_text('kosik_nazev_skoly'))  { alert('Nelze odeslat objednávku: není správně vyplněný název organizace'); return;}
    if (!zkontroluj_text('kosik_zastoupena'))   { alert('Nelze odeslat objednávku: není správně vyplněno zastoupení');       return;}
    if (!zkontroluj_text('kosik_ulice'))        { alert('Nelze odeslat objednávku: není správně vyplněna ulice');            return;}
    if (!zkontroluj_cislo('kosik_cp'))           { alert('Nelze odeslat objednávku: není správně vyplněno č.p.');            return;}
    if (!zkontroluj_text('kosik_mesto'))        { alert('Nelze odeslat objednávku: není správně vyplněno město');            return;}
    if (!zkontroluj_psc('kosik_psc'))          { alert('Nelze odeslat objednávku: není správně vyplněno PSČ');            return;}
    if (!zkontroluj_mail('kosik_mail'))         { alert('Nelze odeslat objednávku: není správně vyplněn e-mail');           return;}
    if (!zkontroluj_tel('kosik_tel'))           { alert('Nelze odeslat objednávku: není správně vyplněn telefon');           return;}
    if (!zkontroluj_ico('kosik_ico'))           { alert('Nelze odeslat objednávku: není správně vyplněno IČ/DIČ');           return;}
    if (!zkontroluj_text('kosik_kontakt'))      { alert('Nelze odeslat objednávku: není správně vyplněna kontaktní osoba');            return;}
    if (!zkontroluj_mail('kosik_kontakt_mail')) { alert('Nelze odeslat objednávku: není správně vyplněn kontaktní e-mail');           return;}
    if (!zkontroluj_tel('kosik_kontakt_tel'))   { alert('Nelze odeslat objednávku: není správně vyplněn kontaktní telefon');           return;}
    
    
    var hash = document.getElementById('hash').value;
    if (window.XMLHttpRequest) var ajax = new XMLHttpRequest;
    else if(window.ActiveXObject) var ajax = new ActiveXObject("Microsoft.XMLHTTP");
      
    if(ajax){
        document.getElementById('kosik_buttton_odeslani').innerHTML = '<img src=\"obrazy/ajax-loader.gif\" alt=\"nahrávám...\" />'; 
        ajax.open('POST', 'skripty/kosik_server_func.php?sul=' + new Date().getTime());
        ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
        ajax.onreadystatechange = function(){
            if (ajax.readyState == 4 && ajax.status == 200){
                if(ajax.responseText == ""){
                    document.getElementById('kosik_span_cena').innerHTML = '0';
                    document.getElementById('obsah').innerHTML = '<h1><b style="font-size: 130%">Produkty v košíku</b></h1>'
                                                               + '<h4>Vaše objednávka byla odeslána. Děkujeme</h4>'; 
                }
                else{
                    document.getElementById('kosik_buttton_odeslani').innerHTML = '<input type="button" value="Odeslat objednávku" onclick="kosik_odesli_objednavku()" /><br />'
                                                                                + ajax.responseText;            
                }
            }
        }
        ajax.send('funkce=kosik_odesli_objednavku&multi=1'
                 + '&parametr1='+encodeURIComponent(document.getElementById('kosik_nazev_skoly').value)
                 + '&parametr2='+encodeURIComponent(document.getElementById('kosik_zastoupena').value)
                 + '&parametr3='+encodeURIComponent(document.getElementById('kosik_ulice').value)
                 + '&parametr4='+encodeURIComponent(document.getElementById('kosik_cp').value)
                 + '&parametr5='+encodeURIComponent(document.getElementById('kosik_mesto').value)
                 + '&parametr6='+encodeURIComponent(document.getElementById('kosik_psc').value)
                 + '&parametr7='+encodeURIComponent(document.getElementById('kosik_mail').value)
                 + '&parametr8='+encodeURIComponent(document.getElementById('kosik_tel').value)
                 + '&parametr9='+encodeURIComponent(document.getElementById('kosik_ico').value)
                 + '&parametr10='+encodeURIComponent(document.getElementById('kosik_kontakt').value)
                 + '&parametr11='+encodeURIComponent(document.getElementById('kosik_kontakt_mail').value)
                 + '&parametr12='+encodeURIComponent(document.getElementById('kosik_kontakt_tel').value)
                 + '&hash='+hash);
    }
    else 
        window.alert('Váš prohlížeč tuto technologii nepodporuje.');
}



function zkontroluj_text(id_prvku){
    if (document.getElementById(id_prvku).value.length < 4 || document.getElementById(id_prvku).value.length > 50){
        document.getElementById(id_prvku).style.backgroundColor = 'lightcoral';
        return false;
    }
    else{
        document.getElementById(id_prvku).style.backgroundColor = 'white';
        return true;
    }
}

function zkontroluj_cislo(id_prvku){
    if (document.getElementById(id_prvku).value.length < 1 || document.getElementById(id_prvku).value.length > 7){
        document.getElementById(id_prvku).style.backgroundColor = 'lightcoral';
        return false;
    }
    else{
        document.getElementById(id_prvku).style.backgroundColor = 'white';
        return true;
    }
}

function zkontroluj_psc(id_prvku){
    if (document.getElementById(id_prvku).value.length < 1 || document.getElementById(id_prvku).value.length > 5){
        document.getElementById(id_prvku).style.backgroundColor = 'lightcoral';
        return false;
    }
    else{
        document.getElementById(id_prvku).style.backgroundColor = 'white';
        return true;
    }
}

function zkontroluj_ico(id_prvku){
    if (document.getElementById(id_prvku).value.length < 7 || document.getElementById(id_prvku).value.length > 15){
        document.getElementById(id_prvku).style.backgroundColor = 'lightcoral';
        return false;
    }
    else{
        document.getElementById(id_prvku).style.backgroundColor = 'white';
        return true;
    }
}

//TODO: validace jen na cisla a +
function zkontroluj_tel(id_prvku){
    if (document.getElementById(id_prvku).value.length < 9 || document.getElementById(id_prvku).value.length > 17){
        document.getElementById(id_prvku).style.backgroundColor = 'lightcoral';
        return false;
    }
    else{
        document.getElementById(id_prvku).style.backgroundColor = 'white';
        return true;
    }
}


function zkontroluj_mail(id_prvku){
    if (document.getElementById(id_prvku).value.length < 5 || document.getElementById(id_prvku).value.length > 50){
        document.getElementById(id_prvku).style.backgroundColor = 'lightcoral';
        return false;
    }
    
    var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
    if (reg.test(document.getElementById(id_prvku).value) == false){
        document.getElementById(id_prvku).style.backgroundColor = 'lightcoral';
        return false;
    }
    else{
        document.getElementById(id_prvku).style.backgroundColor = 'white';
        return true;
    }
}
