var req;
var reqTimeout;
var response;
var Field='';
var callBack;
var type='';
var JSONans;
var data=null;
var method='GET';
 
function loadXMLDoc(url) {
    req = null;
    if (window.XMLHttpRequest) {
        try {
            req = new XMLHttpRequest();
        } catch (e){}
    } else if (window.ActiveXObject) {
        try {
            req = new ActiveXObject('Msxml2.XMLHTTP');
        } catch (e){
            try {
                req = new ActiveXObject('Microsoft.XMLHTTP');
            } catch (e){}
        }
    }
    if (req) {
        req.onreadystatechange = processReqChange;
        req.open(method, url, true);
		if(method=='POST') req.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded'); else req.setRequestHeader("Content-Type", "charset=windows-1251");
		req.setRequestHeader("X-Requested-With", "XMLHttpRequest");
        req.send(data);
        reqTimeout = setTimeout("dataerror();", 5000);
    } else {
        alert("Браузер не поддерживает AJAX");
    }
}

function dataerror()
{
req.abort();
$("#myGrid").hide(); 
}
 
function processReqChange() {
   // document.form1.state.value = stat(req.readyState); 
     if (req.readyState == 4) {
        clearTimeout(reqTimeout);
        // document.form1.statusnum.value = req.status; 
        //document.form1.status.value = req.statusText; 
         // only if "OK"
        if (req.status == 200) {
		if(Field!='') message   = document.getElementById(Field);
            response=req.responseText;
			if(type=='json') { JSONans=eval('(' + response + ')');};
			if(callBack==''){	eval(response)	} else { callBack(); }
        } else {
            alert("Не удалось получить данные:\n" + req.statusText);
        }
    }  
}

function ans()
{
if(JSONans.result=='ok')
{
$("#tr_"+Field).remove();
$("#tr_"+Field).remove();
$("#tr_"+Field).remove();
}
else
{
alert('Произошла ошибка.');
}

}
function del_foto(id)
{
	Field=id;
	type="json";
    url  = 'ajax.php?act=del_foto&pid='+id;
	callBack=function () {$("#"+Field).html("&nbsp;");};
    loadXMLDoc(url);
}
function del_alb(id)
{
	Field=id;
	type="json";
    url  = 'ajax.php?act=del_alb&aid='+id;
	callBack=function () {$("#"+Field).html("&nbsp;");};
    loadXMLDoc(url);
}
function get_news(id)
{
	Field=id;
    url  = 'ajax.php?act=get_news&id='+id;
	callBack=function () {
		$("#"+Field).html("<textarea cols=65 id=inp_"+Field+">"+response+"</textarea><br><input onclick=\'save("+Field+");\'  type=submit value=\'Сохранить\'>"); 
		input=document.getElementById("inp_"+Field); 
		input.focus();
	}
    loadXMLDoc(url);
}

function save_news(text,id)
{
	Field=id;
	method='POST';
	data="text="+text;
    url  = 'ajax.php?act=save_news&id='+id;
	callBack=function () {$("#"+Field).html(response);};
    loadXMLDoc(url);
}

function del_str(id)
{
	Field=id;
	type="json";
    url  = 'ajax.php?act=del&id='+id;
	callBack=ans;
    loadXMLDoc(url);
}

function del_news(id)
{
	Field=id;
	type="json";
    url  = 'ajax.php?act=del_news&id='+id;
	callBack=function () {$("#tb_"+Field).remove();};
    loadXMLDoc(url);
}

 function save_data(name,id,filds)
{
	type="json";
	Field=filds+id;
    url  = 'ajax.php?filds='+filds+'&text='+ name+'&act=edit_filds&id='+id;
	callBack=function () {$("#"+Field).css("background-color",JSONans.color);}
    loadXMLDoc(url);
} 