var req;

function loadXMLDoc(url, func) {
	req = false;
    // branch for native XMLHttpRequest object
    if(window.XMLHttpRequest && !(window.ActiveXObject)) {
    	try {
			req = new XMLHttpRequest();
        } catch(e) {
			req = false;
        }
    // branch for IE/Windows ActiveX version
    } else if(window.ActiveXObject) {
       	try {
        	req = new ActiveXObject("Msxml2.XMLHTTP");
      	} catch(e) {
        	try {
          		req = new ActiveXObject("Microsoft.XMLHTTP");
        	} catch(e) {
          		req = false;
        	}
		}
    }
	if(req) {
		req.onreadystatechange = func;
		req.open("GET", url, true);
		req.send("");
	}
}

function years_ReqChange()
{
    if (req.readyState == 4) {
        if (req.status == 200) {
        	if (!document.getElementsByTagName) return;
        	var response  = req.responseXML.documentElement;
        	var years = response.getElementsByTagName('year');
            year = document.getElementById('year');
        	while (year.options.length) {
				year.remove(0);
			}
            var j=0;
            year.options[j++] = new Option('Все', '-1', false, false);
			for (i=0; i<years.length; i++) {
                year.options[j++] = new Option(years[i].firstChild.data, years[i].firstChild.data, false, false);
            }
        } else {
            alert("There was a problem retrieving the XML data:\n" + req.statusText);
        }
    }
    return true;
}

function num_ReqChange()
{
    if (req.readyState == 4) {
        if (req.status == 200) {
        	if (!document.getElementsByTagName) return false;

        	var response  = req.responseXML.documentElement;
        	var nums = response.getElementsByTagName('num');
            num = document.getElementById('num');
        	num.options.length = 0;
            var j=0;
            num.options[j++] = new Option('Все', '-1', false, false);
			for (i=0; i<nums.length; i++) {
                num.options[j++] = new Option(nums[i].firstChild.data, nums[i].firstChild.data, false, false);
            }
        } else {
            alert("There was a problem retrieving the XML data:\n" + req.statusText);
        }
    }
    return true;
}

function req_years(mag)
{
	mag = document.getElementById('mag');
	mag_id = mag.options[mag.selectedIndex].value;	url = '/response.php?req=years&mag_id='+mag_id;
   	loadXMLDoc(url, years_ReqChange);

}

function req_nums(year)
{
	mag = document.getElementById('mag');
	mag_id = mag.options[mag.selectedIndex].value;

	year = document.getElementById('year');
	year_num = year.options[year.selectedIndex].value;
	url = '/response.php?req=nums&mag_id='+mag_id+'&year='+year_num;
   	loadXMLDoc(url, num_ReqChange);

}

function fast_query_ReqChange()
{
    if (req.readyState == 4) {
        if (req.status == 200) {
        	if (!document.getElementsByTagName) return false;
        	var response  = req.responseXML.documentElement;
        	var status = response.getElementsByTagName('status')[0].firstChild.data;
            if(status == 1){
            	var tr = clicked_a.parentNode.parentNode;            	if(tr.tagName == 'TR'){
            		while (tr.hasChildNodes())
						tr.removeChild(tr.lastChild);
            	}
            }else{            	alert(status);
            }

        } else {
            alert("There was a problem retrieving the XML data:\n" + req.statusText);
        }
    }
    return true;
}
var clicked_a;
function fast_query(a)
{
	clicked_a = a;
	query = a.href+'&ajax=1';	loadXMLDoc(query, fast_query_ReqChange);
	return false;
}

function fast_del_query(a)
{
	if (confirm("Вы уверены, что хотите удалить данную запись?")){
		clicked_a = a;
		query = a.href+'&ajax=1';
		loadXMLDoc(query, fast_query_ReqChange);
	}
	return false;
}

function check(a)
{
	clicked_a = a;
	query = a.href+'&ajax=1';
	loadXMLDoc(query, check_ReqChange);
	return false;
}

function check_ReqChange()
{
    if (req.readyState == 4) {
        if (req.status == 200) {
        	if (!document.getElementsByTagName) return false;
        	var response  = req.responseXML.documentElement;
        	var status = response.getElementsByTagName('status')[0].firstChild.data;
            if(status == 1){
				clicked_a.removeChild(clicked_a.lastChild);
            }else{
            	alert(status);
            }

        } else {
            alert("There was a problem retrieving the XML data:\n" + req.statusText);
        }
    }
    return true;
}
