var ddlPobockaInit;
var SELECTTEXT = "(vyberte pobočku)";
var SELECTVALUE = "select";

window.onload = function() { ajaxFunction(); } // nacteni comboboxu ddlPobocka

//---------------------------------------------------------------------------
function ajaxFunction() {
    var xmlHttp;
    
    try {
        // Firefox, Opera 8.0+, Safari
        xmlHttp = new XMLHttpRequest();
    } catch (e) {
        // Internet Explorer
        try {
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {
                alert("Your browser does not support AJAX!");
                return false;
            }
        }
    }
    
    xmlHttp.onreadystatechange = function() {
        if (xmlHttp.readyState == 4) {
            var ddlPobocka = document.getElementById('ddlPobocka');
            for (var i = ddlPobocka.options.length - 1; i >= 0; i--)
              ddlPobocka.remove(i);
            
            var xmlDoc = xmlHttp.responseXML.documentElement;
            var contacts = xmlDoc.getElementsByTagName('contact');
            
            var o = document.createElement('option');
            o.text = SELECTTEXT;
            o.value = SELECTVALUE;
            try {
              ddlPobocka.add(o, null);
            } catch(ex) {
              ddlPobocka.add(o);
            }
            
            for (var i = 0; i < contacts.length; i++) {
              var o = document.createElement('option');
              o.text = contacts[i].childNodes[0].childNodes[0].nodeValue;
              o.value = contacts[i].childNodes[1].childNodes[0].nodeValue;
              try {
                ddlPobocka.add(o, null);
              } catch(ex) {
                ddlPobocka.add(o);
              }
            }
            
            ddlPobockaInit = true;
            onPobockaChange();
            ddlPobockaInit = false;
        }
    }

    var url = "/views/pages/actionforms/kontakty_hypotecni_poradci.jsp";
    // predejiti cache
    url += "?sid=" + Math.random();
    
    xmlHttp.open("GET", url, true);
    xmlHttp.send(null);
}

//---------------------------------------------------------------------------
var prvneEditovanoValid = new Array(true, true);

function indexPrvneEditovanoValid(txtName) {
    switch(txtName) {
    case 'txtTelefon':
        return 0;
    case 'txtEmail':
        return 1;
    }
}

function jmenoOK() {    
    var valJmeno = document.getElementById('txtJmeno').value;
    
    if (valJmeno == null || valJmeno == '') {
        return false;
    }
    
    return true;
}

function kontaktyOK() {
    var valTel = document.getElementById('txtTelefon').value;
    var valEmail = document.getElementById('txtEmail').value;

    var noTel = (valTel == '' ? true : false);
    var noEmail = ((valEmail == '' || valEmail == '@') ? true : false);
    
    if (noTel && noEmail) {
        return false;
    }

    return true;
}

function pobockaOK() {
    var ddlPobocka = document.getElementById('ddlPobocka');
    var valPobocka = ddlPobocka.options[ddlPobocka.selectedIndex].value
    
    if (valPobocka == SELECTVALUE)
        return false;
    
    return true;
}

function mamValidovatKontakty(txtindex, blured) {
    var ret;
    
    if (blured) {
        switch(txtindex) {
        case 0:
            ret = !prvneEditovanoValid[0];
            prvneEditovanoValid[0] = false;
            break;
        case 1:
            ret = true;
            prvneEditovanoValid[0] = false;
            prvneEditovanoValid[1] = false;
            break;
        }
    } else {
        ret = !prvneEditovanoValid[txtindex];
    }
    
    return ret;
}

function onBlurOronKeyUpValid(txtName, blured) {
    if (txtName == 'txtJmeno') {
        document.getElementById('validtxtJmeno').style.display = (jmenoOK() ? 'none' : 'inline');
    } else if (txtName == 'txtTelefon' || txtName == 'txtEmail') {
        if (mamValidovatKontakty(indexPrvneEditovanoValid(txtName), blured)) {
            document.getElementById('validtxtTelefonNeboEmail').style.display = (kontaktyOK() ? 'none' : 'inline');
        }
    } else if (txtName == 'ddlPobocka') {
        document.getElementById('validddlPobocka').style.display = (pobockaOK() ? 'none' : 'inline');
    }
}

function onBlurValid(txtName) {
    onBlurOronKeyUpValid(txtName, true);
}

function onKeyUpValid(txtName) {
    onBlurOronKeyUpValid(txtName, false);
}

function validationOK() {
    var jmeno = jmenoOK();
    var kontakt = kontaktyOK();
    var pobocka = pobockaOK();
    
    prvneEditovanoValid[0] = prvneEditovanoValid[1] = false;
    
    if (!jmeno)
        document.getElementById('validtxtJmeno').style.display = 'inline';

    if (!kontakt)
        document.getElementById('validtxtTelefonNeboEmail').style.display = 'inline';
    
    if (!pobocka)
        document.getElementById('validddlPobocka').style.display = 'inline';
    
    return (jmeno && kontakt && pobocka);
}

function onPobockaChange() {
  var ddlPobocka = document.getElementById('ddlPobocka');
  document.getElementById('txtBranch').value = ddlPobocka.options[ddlPobocka.selectedIndex].text;
  document.getElementById('to').value = 'hypoteky.web@rb.cz;' + ddlPobocka.options[ddlPobocka.selectedIndex].value;
  
  if (!ddlPobockaInit)
    onBlurOronKeyUpValid('ddlPobocka', false);
}

