/*
	AMIS CMS 0.4.0 / AJAX
*/

var dataSource;
var dataSourceId;


function getHTTPObject()
{
    request = false;

    if(window.XMLHttpRequest) {
        try {
            request = new XMLHttpRequest();
        } catch(e) {
            request = false;
        }
    } else if(window.ActiveXObject) {
           try {
            request = new ActiveXObject('Msxml2.XMLHTTP');
          } catch(e) {
            try {
                  request = new ActiveXObject('Microsoft.XMLHTTP');
            } catch(e) {
                  request = false;
            }
        }
    }

    return request;
}


function locationGet(stat, kraj, okres)
{
    if (stat == null)
        stat = 0;

    if (kraj == null)
        kraj = 0;

    if (okres == null)
        okres = 0;

    var url = '/ajax/get/location/' + stat + '/' + kraj + '/' + okres + '/';

    if (stat == 0) {
        typ = 'stat';
        kraj = 0;
        okres = 0;
        obec = 0;
    }
    else if (kraj == 0) {
        typ = 'kraj';
        okres = 0;
        obec = 0;
    }
    else if (okres == 0) {
        typ = 'okres';
        obec = 0;
    }
    else {
        typ = 'okres';
    }

    if (okres != 0)
        typ = 'obec';
    else if (kraj != 0)
        typ = 'okres';
    else if (stat != 0)
        typ = 'kraj';

    dataSourceId = typ;
    dataSource = getHTTPObject();

    dataSource.open('GET', url, true);
    dataSource.onreadystatechange = function() { locationProcess(); };
    dataSource.send(null);
}


function locationProcess()
{
    if (dataSource.readyState == 4) {
        if (dataSource.status == 200) {
            locationGetXML();
        }
    }
}

function locationGetXML() {
	xmlDoc = dataSource.responseXML;

	var hodnota = '';
    var zero = '&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;';

    var selectKraj = '<select id="kraj" name="kraj" size="1" onchange="locationGet(stat.value, this.value)">';
    var selectOkres = '<select id="okres" name="okres" size="1" onchange="locationGet(stat.value, kraj.value, this.value)">';
    var selectObec = '<select id="obec" name="obec" size="1">';
    var selectEnd = '</select>';

    for (i=0; i<xmlDoc.getElementsByTagName('cislo').length; i++) {
        cislo = xmlDoc.getElementsByTagName('cislo')[i].childNodes[0].nodeValue;
        nazov = xmlDoc.getElementsByTagName('nazov')[i].childNodes[0].nodeValue;

        hodnota = hodnota + '<option value="' + cislo + '">' + nazov + '</option>';
    }

    if (dataSourceId == 'stat') {
        document.getElementById('krajD').innerHTML = selectKraj + '<option value="0">' + zero + '</option>' + selectEnd;
        document.getElementById('okresD').innerHTML = selectOkres + '<option value="0">' + zero + '</option>' + selectEnd;
        document.getElementById('obecD').innerHTML = selectObec + '<option value="0">' + zero + '</option>' + selectEnd;
    }

    if (dataSourceId == 'kraj') {
        document.getElementById('okresD').innerHTML = selectOkres + '<option value="0">' + zero + '</option>' + selectEnd;
        document.getElementById('obecD').innerHTML = selectObec + '<option value="0">' + zero + '</option>' + selectEnd;
        select = selectKraj;
    }

    if (dataSourceId == 'okres') {
        document.getElementById('obecD').innerHTML = selectObec + '<option value="0">' + zero + '</option>' + selectEnd;
        select = selectOkres;
    }

    if (dataSourceId == 'obec') {
        select = selectObec;
    }

    if (dataSourceId != 'stat')
        document.getElementById(dataSourceId + 'D').innerHTML = select + hodnota + selectEnd;
}
