

/**
*	Обработка полученых данных из АЯКС обработчика
*/
function appendData(data_str, parent_node, mode)
	{
    //вставляем получившийся текст с метками
    if(mode == 'rewrite') 
		{
        document.getElementById(parent_node).innerHTML = data_str;
		} 
	else if (mode == 'append') 
		{
        document.getElementById(parent_node).innerHTML += data_str;
		} 
	else if (mode == 'insert') 
		{
        var old_text = document.getElementById(parent_node).innerHTML;			
		document.getElementById(parent_node).innerHTML= data_str+old_text;	  
	    }
	}
      

function evaluateJs(obj)
	{					
	var scriptTags=document.getElementById(obj).getElementsByTagName('SCRIPT');
	var string='';
	var jsCode='';
								
	for(var no=0;no<scriptTags.length;no++)
		{			  
		if(scriptTags[no].src)
			{				  
			var head=document.getElementsByTagName("head")[0];
			var scriptObj=document.createElement("script");
			
			scriptObj.setAttribute("type", "text/javascript");
			scriptObj.setAttribute("src", scriptTags[no].src);
			}
		else
			{
			if(DHTMLSuite.clientInfoObj.isOpera)
				{
				jsCode=jsCode+scriptTags[no].text+'\n';
				}
			else
				jsCode=jsCode+scriptTags[no].innerHTML;
			}
		}

	if(jsCode) installScript(jsCode);
	}

function installScript( script )
	{
	try
		{
		if (!script) return;

		if (window.execScript)
			{
			window.execScript(script)
			}
		else if(window.jQuery&&jQuery.browser.safari)
			{
			window.setTimeout(script,0);
			}
		else
			{
			window.setTimeout( script, 0 );
			}
		}
	catch(e)
		{
		}
	}				

	
function doLoad(value,path,target,method,write_type,callback) 
	{
	if (method == 'undefined') method=null;
	
	if (write_type == 'undefined' || !write_type || write_type=='') write_type='rewrite';

	var req = new JsHttpRequest();


	req.onreadystatechange = function() 
		{
		setTimeout(function() {document.getElementById('ajax_working').style.display = 'none';  }, 15000);

	    if (req.readyState == 4 && target.length > 0) 
			{			   
			lastActType = 'doload';	 

			action_doload_url=path;
			action_doload_target = target;

			if (callback && typeof callback!='undefined')
				{
				callback(req.responseJS);
				}


	        if (target.indexOf(";") == -1)
		       	{
				try
					{
					appendData(req.responseJS.content,target,write_type);	
					evaluateJs(target);
					}
				catch (e)
					{
					}				
		       	}
	        else
			    {
				target = target.split(";");
	            for (i in target) 
	            	{
					try
						{
						appendData(req.responseJS.content[i],target[i],write_type);
						evaluateJs(target);
						}
					catch (e)
						{
						}
					}
				}
	        }
	    }

	action_doload_url='';
	action_doload_target = '';

    req.open(method, path, true);
    req.send( { 'data': value } );
	}  
