var isIE=navigator.userAgent.indexOf("IE")>0;
function refresh_element(elem, xml, xsl, doc, params, call_back){
	var ajax=new AJAXRequest;
	var method; 
	if (xml.action){
		method = function(form, func){ajax.post(form, func);};
	}else
	{
		method =function(url, func){ajax.get(url, func);};
	}
	method(xml,
			function(obj) 
			{ 
			if (obj.responseXML == null||obj.responseXML.documentElement == null)
			location.href="../servlet/Engine?act=null_act&sheet=manager/nopermission";
			//alert("对不起，您没有权限做这个操作!");
			else{
			var l = loadxsl(obj.responseXML, xsl );
			if(doc == null)
			document.getElementById(elem).innerHTML = l;
			else{ 
			doc.getElementById(elem).innerHTML =l;
			CloseWin();
			}
			}
			if (call_back != null) call_back();
			if (window.resize_iframe ) resize_iframe();
			}
	      );
}

function mysetParameter(xslproc, processor, x, y)
{
	if(isIE)
	{
		xslproc.addParameter(x, y);
	}
	else
	{
		processor.setParameter(null, x, y);
	}
}

function mygetdata(xslproc, processor,xmlsource)
{
	var l = "";
	if(isIE)
	{
		try
		{
			xslproc.transform;
			l = xslproc.output;
			//alert(l);
		}catch(e)
		{
			alert("mygetdata err!\n" +e);
		}
	}
	else
	{
		try
		{
			var retval  = processor.transformToFragment(xmlsource,document); 
			// 序列化
			l = (new XMLSerializer()).serializeToString(retval);
		}catch(e)
		{
			alert("mygetdata err!\n" +e);
		}
	}
	return l;
}
function loadxsl_with_params(xmlsource, xslpath, params){

	var xslproc = null;
	var processor = null;
	if(isIE)
	{
		// -------------- is IE -------------- start --------------
		var xslt = new ActiveXObject("Msxml2.XSLTemplate.3.0");
		var xsldoc = new ActiveXObject("Msxml2.FreeThreadedDOMDocument.3.0");
		xsldoc.async = false;

		xsldoc.validateOnParse = false; 
		try{
			xsldoc.load(xslpath);
		}catch (e){
			alert(e.name + ":" +e.message);
		}

		if (xsldoc.parseError.errorCode != 0)
		{
			var myErr = xsldoc.parseError;
			alert("You have an XSLT parse error: " + myErr.reason);
		}
		xslt.stylesheet = xsldoc;

		xslproc = xslt.createProcessor();
		xslproc.input = xmlsource;
		// -------------- is IE -------------- end --------------
	}
	else
	{
		// -------------- not IE -------------- start --------------
		try
		{
			processor = new XSLTProcessor(); 
			var xsldoc = document.implementation.createDocument("", "", null); 
			xsldoc.async = false;
			xsldoc.load(xslpath);
			processor.importStylesheet(xsldoc); 
		}
		catch(e)
		{
			alert("load xsl err!\n" +e);
		}
	}

	if(params!=null) {
		for (var i in params)
		{
			mysetParameter(xslproc, processor, i , params[i]);
		}
	}

	var l = mygetdata(xslproc, processor,xmlsource);
	// ----------------------------------------------------------
	return l;


}
	function set_param(params, name ,value){
		if (value)
			params[name] = value;
	}
function loadxsl(xmlsource, xslpath, mainid)
{
	var params = new Object();
	if(mainid!=null) {
		params['srhID'] = mainid;
	}
	return loadxsl_with_params(xmlsource, xslpath, params);
}


function is_unique(form, table, check_field, primary_keys){
   var result = 0;
	var ajax=new AJAXRequest();
   ajax.async = false;
	var old_action = form.action;
	form.action = "../servlet/Engine?act=is_unique&table="+table + "&check_field="+check_field +"&primary_keys=,"+primary_keys;
	var xmlObj = ajax.post(form);
   result =get_value_by_xpath(xmlObj.responseXML, "/is_unique/check_is_unique/item/@is_unique_num");
	form.action = old_action;
   return result;
}
function check_unique(form, table, check_field, primary_keys,key_value,field_value,inform){
   if (is_unique(form, table, check_field, primary_keys)>0)
   {
			if(inform==''||inform==null){
			   alert("此名称已被使用，请另选一个！");
			}else{
			   alert(inform);
			}
			return false;
   }
   else
   {
      form.submit();
   }
   return true;

}
function get_sqlResult(form)
{
	var ajax=new AJAXRequest;
	var old_action = form.action;
	form.action = "../servlet/Engine?act=is_unique&table="+table + "&check_field="+check_field +"&primary_keys=,"+primary_keys;
	return ajax.post(form,
			function(obj) 
			{
			result =get_value_by_xpath(obj.responseXML, "/is_unique/check_is_unique/item/@is_unique_num");
			form.action = old_action;
			return result
			} );
}


