function isspace(ch){return ((ch==" ")||(ch=="\r")||(ch=="\n")||(ch=="\t"));}
function TruncSpace(str){var i;for(i=0;(i<str.length)&&isspace(str.charAt(i));i++);str=str.substring(i,str.length);for(i=str.length-1;(i>0)&&isspace(str.charAt(i));i--);str=str.substring(0,i+1);return str;}

function getSets(Id, ElementId, SubAct, data) {
    var req = new JsHttpRequest();
    req.onreadystatechange = function() {
	document.getElementById('notify').style.display='';
	if (SubAct == 'doadd')
		document.getElementById('notify').innerHTML=' Сохранение ... ';
	else if (SubAct == 'dodel')
		document.getElementById('notify').innerHTML=' Удаление ... ';
	else
		document.getElementById('notify').innerHTML=' Загрузка ... ';
        if (req.readyState == 4) {
			if (req.responseJS)
			{
				document.getElementById('notify').style.display='none';
				if (req.responseJS.HtmlCaption)
				{
					document.getElementById(ElementId).innerHTML = req.responseJS.HtmlCaption;
					document.getElementById(ElementId).style.display='';
				}
			}
        }
    }
    req.open(null, '/ajax/backend.php', true);
    req.send({'Act':'getSets', 'Id':Id, 'SubAct':SubAct, 'data':data});
}

function AjaxRequest(Kernel, MetaData, Data) {
	var req = new JsHttpRequest();
	req.onreadystatechange = function()
	{
		if (MetaData['notice'])
		{
			document.getElementById('notify').style.display = '';
			document.getElementById('notify').innerHTML = MetaData['notice'];
		}

		if (req.readyState == 4)
		{
			if (req.responseJS)
			{
				document.getElementById('notify').style.display='none';
				if (MetaData['callback'])
					FrontEndFunction = MetaData['callback']+'(req.responseJS)';
				else
					FrontEndFunction = Kernel+'_ready(req.responseJS)';
				eval(FrontEndFunction);
			}
		}
	}
	req.open(null, '/ajax/'+Kernel+'.php', true);
	req.send({'Data':Data});
}

