var SystemLoginUrl = "";
/**
 * 生成单表维护客户端数据
 * odocument单表数据表单
 * 表名
 * 操作方式，1 新增;2 修改;3 删除;
 */


function GenerateSingleRowTableXml(odocument,tableName,opertype)
{

    var dataXml = "<data><"+ tableName + " type='SINGLETABLE' >";
    var oInputs = odocument.getElementsByTagName("INPUT");
    var oInput ;

    //添加文本框录入、radio、checkbox信息
    for(i=0;i<oInputs.length;i++)
    {
        oInput = oInputs[i];

        if(oInput.getAttribute("FieldID")&&oInput.getAttribute("FieldID")!="")
        {
            if(oInput.type=="radio"&&(!oInput.checked))
            {
                continue;
            }
            else
            {
                dataXml += "<" + tableName + "." + oInput.getAttribute("FieldID") +" XH ='1' FIELDID='" + oInput.getAttribute("FieldID") + "' FIELDTYPE='";
                dataXml += oInput.getAttribute("FieldType") + "' value ='";

                if(oInput.type=="radio")
                {
                    dataXml += trim(oInput.getAttribute("code")) + "'";
                }
                else if(oInput.type=="checkbox")
                {
                    if(oInput.checked)
                    {
                        dataXml +=  "1'";
                    }
                    else
                    {
                        dataXml +=  "0'";
                    }
                }
                else{
                    dataXml += replaceValue(trim(oInput.value)) + "'";
                    if(oInput.getAttribute("code")&&oInput.getAttribute("FieldType")=="0")
                    {
                        dataXml += " code ='" + trim(oInput.getAttribute("code")) + "'";
                    }
                }
                dataXml +="/>";
            }
        }
    }

    //添加下拉框信息
    var oSelects = odocument.getElementsByTagName("SELECT");
    var oSelect ;
    for(i=0;i<oSelects.length;i++)
    {
        oSelect = oSelects[i];
        if(oSelect.getAttribute("FieldID")&&oSelect.getAttribute("FieldID")!="")
        {
            dataXml += "<" + tableName + "." + oSelect.getAttribute("FieldID") +" XH ='1' FIELDID='" + oSelect.getAttribute("FieldID") + "' FIELDTYPE='";
            dataXml += oSelect.getAttribute("FieldType") + "' value ='";
            dataXml += oSelect.options[oSelect.selectedIndex].innerText + "'";
            dataXml += " code ='" + oSelect.options[oSelect.selectedIndex].value + "'";
            dataXml +="/>";
        }
    }
    //添加Span信息
    var oSpans = odocument.getElementsByTagName("SPAN");
    var oSpan;

    for(i=0;i<oSpans.length;i++)
    {

        oSpan = oSpans[i];
        if(oSpan.getAttribute("FieldID")&&oSpan.getAttribute("FieldID")!="")
        {
            dataXml += "<" + tableName + "." + oSpan.getAttribute("FieldID") +" XH ='1' FIELDID='" + oSpan.getAttribute("FieldID") + "' FIELDTYPE='";
            dataXml += oSpan.getAttribute("FieldType") + "' value ='";
            if(window.ActiveXObject){
                dataXml += replaceValue(oSpan.innerText) + "'";
            }else if(window.XMLHttpRequest){
                dataXml += replaceValue(oSpan.textContent) + "'";
            }
            if(oSpan.getAttribute("FieldType")=="0"&&oSpan.getAttribute("code"))
            {
                dataXml += " code ='" + oSpan.getAttribute("code") + "'";
            }
            dataXml +="/>";
        }
    }

    //添加大文本信息
    var oAreas = odocument.getElementsByTagName("TEXTAREA");
    var oArea;
    for(i=0;i<oAreas.length;i++)
    {
        oArea = oAreas[i];
        if(oArea.getAttribute("FieldID")&&oArea.getAttribute("FieldID")!="")
        {
            dataXml += "<" + tableName + "." + oArea.getAttribute("FieldID") +" XH ='1' FIELDID='" + oArea.getAttribute("FieldID") + "' FIELDTYPE='";
            dataXml += oArea.getAttribute("FieldType") + "' value ='";
            dataXml += replaceValue(trim(oArea.value)) + "'";
            dataXml +="/>";
        }
    }

    dataXml += "<" + tableName + ".DATA_OPERATE_FLAG" + " XH ='1' FIELDID='" + tableName + ".DATA_OPERATE_FLAG' FIELDTYPE='1' value ='" + opertype + "'";
    dataXml +="/>";
    dataXml += "</" + tableName + ">";
    dataXml += "</data>";

    return dataXml;
}
/**
* 根据服务器端返回的数据填充单表数据
*
*/
function FillControlInfo(odocument,oDiv)
{

    var oInputs = odocument.getElementsByTagName("INPUT");
    oDiv = oDiv.childNodes[0];
    var oInput ;
    //添加文本框录入、radio、checkbox信息
    var tableName = oDiv.getAttribute("tableName");
    oDiv = oDiv.childNodes[0];
    var oCode = "";
    var oValue = "";
    if(oDiv==undefined)
    {
        alert("载入数据出错");
        return;
    }
    for(i=0;i<oInputs.length;i++)
    {
        oInput = oInputs[i];
        if(oInput.getAttribute("FieldID")&&oInput.getAttribute("FieldID")!="")
        {
            if(oInput.type=="radio")
            {
                oValue = oDiv.getAttribute( oInput.getAttribute("FieldID"));
                if(oInput.getAttribute("code")==oValue)
                {
                    oInput.checked = true;
                }
            }
            else if(oInput.type=="checkbox")
            {
                oValue = oDiv.getAttribute( oInput.getAttribute("FieldID"));
                if(oValue=="1")
                {
                    oInput.checked = true;
                }
                else
                {
                    oInput.checked = false;
                }
            }
            else
            {

                     oValue = replaceHtmlValue(oDiv.getAttribute(oInput.getAttribute("FieldID") +"TEXT"));
                     if(oValue!=null)
                     {
                        oInput.value = oValue;
                        oCode = oDiv.getAttribute(oInput.getAttribute("FieldID") );
                        oInput.setAttribute("code",oCode);
                     }
                     else
                     {

                        oValue = replaceHtmlValue(oDiv.getAttribute( oInput.getAttribute("FieldID")));
                        oInput.value = oValue;
                      }

            }
        }
    }

    //添加下拉框信息
    var oSelects = odocument.getElementsByTagName("SELECT");
    var oSelect ;
    for(i=0;i<oSelects.length;i++)
    {
        oSelect = oSelects[i];
        if(oSelect.getAttribute("FieldID")&&oSelect.getAttribute("FieldID")!="")
        {
            oValue = oDiv.getAttribute( oInput.getAttribute("FieldID"));
            for(j=0;j<oSelect.options.length;j++)
            {
                if(oSelect.options[j].value==oValue)
                {
                    oSelect.options[j].selected = true;
                    break;
                }
            }
        }
    }

    //添加Span信息
    var oSpans = odocument.getElementsByTagName("SPAN");
    var oSpan ;

    for(i=0;i<oSpans.length;i++)
    {
        oSpan = oSpans[i];
        if(oSpan.getAttribute("FieldID")&&oSpan.getAttribute("FieldID")!="")
        {
            oValue = oDiv.getAttribute(oSpan.getAttribute("FieldID"));

            if(oDiv.getAttribute(oSpan.getAttribute("FieldID")+"TEXT")!=null)
            {
                oSpan.setAttribute("code",oValue);
                if(window.ActiveXObject){
                    oSpan.innerText = replaceHtmlValue(oDiv.getAttribute(oSpan.getAttribute("FieldID")+"TEXT"));
                }else if(window.XMLHttpRequest){
                    oSpan.textContent = replaceHtmlValue(oDiv.getAttribute(oSpan.getAttribute("FieldID")+"TEXT"));
                }
            }
            else
            {
                if(window.ActiveXObject){
                    oSpan.innerText = replaceHtmlValue(oValue);
                }else if(window.XMLHttpRequest){
                    oSpan.textContent = replaceHtmlValue(oValue);
                }
            }
            /*
            if(oSpan.code)
            {
                oSpan.code = oValue;
                oSpan.innerText = oDiv.getAttribute(oSpan.FieldID+"TEXT");
            }
            else
            {
                oSpan.innerText = oValue;
            }
            */
        }
    }

    //添加Area信息
    var oAreas = odocument.getElementsByTagName("TEXTAREA");
    var oArea ;
    for(i=0;i<oAreas.length;i++)
    {
        oArea = oAreas[i];
        if(oArea.getAttribute("FieldID")&&oArea.getAttribute("FieldID")!="")
        {
            oValue = replaceHtmlValue(oDiv.getAttribute(oArea.getAttribute("FieldID")));

            oArea.value = oValue;

        }
    }


}
function replaceValue(value)
{

        while(value.indexOf("<")!=-1)
        {
            value = value.replace("<","@@1015@@");
        }
        while(value.indexOf(">")!=-1)
        {
            value = value.replace(">","@@1016@@");
        }
        while(value.indexOf("'")!=-1)
        {
            value = value.replace("'","@@1017@@");
        }
        while(value.indexOf("/")!=-1)
        {
            value = value.replace("/","@@1018@@");
        }
        while(value.indexOf("\\")!=-1)
        {
            value = value.replace("\\","@@1019@@");
        }

        return value;
}

function replaceQueryValue(value)
{
      while(value.indexOf("'")!=-1)
      {
          value = value.replace("'","@@1017@@");
      }
      while(value.indexOf("\\")!=-1)
      {
          value = value.replace("\\","@@1019@@");
      }
      return value;
}
function replaceHtmlValue(value)
{
    if(value!=null)
    {
        while(value.indexOf("@@1017@@")!=-1)
        {
            value = value.replace("@@1017@@","'");
        }

    }
    return value;
}
function formatXmlData(data,ctrdata)
{
    return "<Table>" + replaceAttributeValue(data) +
            "<ControlData><control>" + replaceAttributeValue(ctrdata) +
            "</control></ControlData></Table>";
}
function replaceAttributeValue(value)
{
	value =  value.replace(/\r\n/gim,"@@1013@@");
        while(value.indexOf("&")!=-1)
        {
            value = value.replace("&","@@1014@@");
        }
        return value;
}
function ltrim(value)
{
	return value.replace(/^\s*/,"");
}

function rtrim(value)
{
	return value.replace(/\s*$/,"");
}

function trim(value)
{
	return ltrim(rtrim(value));
}

function sendXmlData(xmlData,serverUrl)
{
	if(serverUrl==null||serverUrl=='')
	{
            serverUrl="services/services.jsp";
	}

        var timeSpan = new Date().getTime()
        if(serverUrl.indexOf("?")==-1)
        {
            serverUrl += "?timeStamp=" + timeSpan;
        }
        else
        {
            serverUrl += "&timeStamp=" + timeSpan;
        }

        var http_request;
        var xmldoc;
        if(window.ActiveXObject){

            try {
                http_request = new ActiveXObject("Msxml2.XMLHTTP");
                xmldoc = new ActiveXObject("Msxml2.DOMDocument");
                xmldoc.async = false;
                xmldoc.loadXML(xmlData);
            }
            catch (e){
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                }
                catch (e)
                {}
            }
        }
        else if (window.XMLHttpRequest){ //IE
            http_request = new XMLHttpRequest(); //非IE
            if (http_request.overrideMimeType)
            {
                http_request.overrideMimeType('text/xml'); //发XML时
            }
            var oParser = new DOMParser();
            var xmldoc = oParser.parseFromString(xmlData,"text/xml");
        }

	var url=serverUrl;
	http_request.open("post", url, false);
	http_request.send(xmldoc);

	if(testXMLHTTP(http_request))
	{
              //alert(http_request.responseText);
              if(http_request.responseText.indexOf("<DIV errorSource='user' reason='sessionTimeout'")!=-1)
              {
                  var oDiv = window.document.createElement("DIV");

                  oDiv.innerHTML = xmlhttp.responseText.substring(0,xmlhttp.responseText.indexOf("</DIV>")+6);
                  timeOutAlert("/web/common");
                  window.top.navigate("/web/" + oDiv.children[0].loginUrl);
                  //var result="<Result><value>0</value><msg>会话过期,请重新登陆</msg></Result>";
                  return null;
              }
		return http_request.responseText;
	}
	else
	{
		var result="<Result><value>0</value><msg>" + http_request.statusText + "</msg></Result>";
		return result;
	}
}

function getXmlData(serverUrl)
{

    var xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    var url=serverUrl;
    xmlhttp.open("get", url, false);
    xmlhttp.send();

    if(testXMLHTTP(xmlhttp))
    {
            return xmlhttp.responseText;
    }
    else
    {
        var result="<Result><value>0</value><msg>" + xmlhttp.statusText + "</msg></Result>";
        return result;
    }
}

function getResponseResult(xmlData,nodename)
{

	try
	{
	var selectnode;
	if(nodename==null)
	{
		selectnode="/Result/value";
                nodename = "value";
	}
	else
	{
		selectnode="/Result/" + nodename;

	}
        if(window.ActiveXObject){
            try {
                //http_request = new ActiveXObject("Msxml2.XMLHTTP");
                xmldoc = new ActiveXObject("Msxml2.DOMDocument");
                xmldoc.async = false;
                xmldoc.loadXML(xmlData);
                var currNode = xmldoc.documentElement.selectSingleNode(selectnode);
                if(currNode==null)
                {
                        return null;
                }
                else
                {
                        return trim(currNode.text);
                }
            }
            catch (e){

            }
        }
        else if (window.XMLHttpRequest){ //IE
            var oParser = new DOMParser();
            var oXmlDom = oParser.parseFromString(xmlData, "text/xml");

            if (oXmlDom.documentElement.tagName != "parsererror") {
                 for (var i = 0; i < oXmlDom.childNodes[0].childNodes.length; i++) {
                    if (oXmlDom.childNodes[0].childNodes[i].nodeName==nodename) {
                        var sText = "";
                        //alert(oXmlDom.childNodes[0].childNodes[i].childNodes.length);
                        for(var j=0;j<oXmlDom.childNodes[0].childNodes[i].childNodes.length;j++)
                        {
                            sText += oXmlDom.childNodes[0].childNodes[i].childNodes[j].nodeValue;
                        }
                        //alert(sText);
                        return sText;

                    }
                 }
            } else {
                 return null;
            }
        }

        //

	}
	catch(e)
	{
	 //alert('服务器不能响应您的请求！')

	 return null;
	}
}

function checkResult(xmlData)
{

	var result=(getResponseResult(xmlData)==1?true:false);
	return result;
}

function getErrorMessage(xmlData)
{
	return getResponseResult(xmlData,"msg");
}

function testXMLHTTP(xmlhttp)
{
	if(xmlhttp.status == 200){

		return true;
	}
	else{
		return false;
	}
}

/**
* 控制textarea长度
* message 文本名称
* total 长度
* err 错误提示信息
* */
function textareaCount(message,total,err)
{
  if(message.value.length > total){
    message.value = message.value.substring(0,total);
    alert(err);
  }
}
/**
* EMAIL正则表达试
* */
function Email()
{
    var xmlData="<action>EMAIL</action>";
    xmlData+="<EMAIL>"+ replaceValue(trim(document.getElementById("EMAIL").value)) +"</EMAIL>";
    xmlData=formatXmlData("",xmlData);
    result=sendXmlData(xmlData,"service/service.jsp");
    if(!checkResult(result))
    {
        var errResult = getErrorMessage(result);
        if(errResult!=null)
        {
            alert(errResult);
        }
        return false;
    }
    else
    {
        var Div = window.document.createElement("DIV");
        Div.innerHTML = getErrorMessage(result);
        if(Div.children[0].repeat=='1')
        {
            return false;
        }
        else
        {
            return true;
        }
    }
}

function Email(sEmail)
{
    var xmlData="<action>EMAIL</action>";
    xmlData+="<EMAIL>"+ replaceValue(sEmail) +"</EMAIL>";
    xmlData=formatXmlData("",xmlData);
    result=sendXmlData(xmlData,"service/service.jsp");
    if(!checkResult(result))
    {
        var errResult = getErrorMessage(result);
        if(errResult!=null)
        {
            alert(errResult);
        }
        return false;
    }
    else
    {
        var Div = window.document.createElement("DIV");
        Div.innerHTML = getErrorMessage(result);
        if(Div.children[0].repeat=='1')
        {
            return false;
        }
        else
        {
            return true;
        }
    }
}
/**
* 系统浏览日志
* UID，用户ID
* FUNCION，功能编号
* */
function Loginfo(UID,FUNCTION)
{
    var xmlData="<action>Loginfo</action>";
    xmlData+="<UID>"+ replaceValue(UID) +"</UID>";
    xmlData+="<FUNCTION>"+FUNCTION+"</FUNCTION>";
    xmlData=formatXmlData("",xmlData);
    result=sendXmlData(xmlData,"service/service.jsp");
    if(!checkResult(result))
    {
        var errResult = getErrorMessage(result);
        if(errResult!=null)
        {
            alert(errResult);
        }
        return false;
    }
    else
    {
        var Div = window.document.createElement("DIV");
        Div.innerHTML = getErrorMessage(result);
        if(Div.children[0].repeat=='1')
        {
            alert("系统日志写入失败！");
        }
    }
}
function f_openFullWindow(sURL)
{

	var iWidth = 0 ;
	var iHeight = 0 ;
	iWidth=window.screen.availWidth-10;
	iHeight=window.screen.availHeight-30;
	var szFeatures = "" ;
	szFeatures ="fullscreen=yes,resizable=yes,status=no,scrollbars=yes,menubar=no,width=" + iWidth + ",height=" + iHeight + ",top=0,left=0"
	return window.open(sURL,"",szFeatures);
}

function f_openFullWindow(sURL,iWidth,iHeight)
{
	var szFeatures = "" ;
	szFeatures ="resizable=yes,status=no,scrollbars=yes,menubar=no,width=" + iWidth + ",height=" + iHeight + ",top=0,left=0"
	return window.open(sURL,"",szFeatures);
}
function timeOutAlert(home)
{
	if (home == "") home = "../";
	var title = "";
	var width = "300";
	var height = "180";
	var buttonInfo = "确定";
	var contents = "会话过期，请重新登录！";
	var dialogArgument = new Object();
	dialogArgument.title = title;
	dialogArgument.width = parseInt(width);
	dialogArgument.height = parseInt(height);
	dialogArgument.buttonInfo = buttonInfo;
	dialogArgument.contents = contents;
	var sUrl = home + "/tools/timeOutDialog.htm";
	var sFeatures = "";
	sFeatures += "dialogWidth:" + parseInt(width) + "px;";
	sFeatures += "dialogHeight:" + parseInt(height) + "px;";
	sFeatures += "scroll:no;status:no;help:no";
	return window.showModalDialog(sUrl, dialogArgument, sFeatures);
}

function getDivText(oDiv){
	for(var i = 0; i < oDiv.children.length; i++){
            if(oDiv.children[i].tagName == "SPAN"){
                if(window.ActiveXObject){
                    return oDiv.children[i].innerText;
                }else if(window.XMLHttpRequest){
                    return oDiv.children[i].textContent;
                }
            }
	}
	return "";
}
function changeImg(mypic){

    var xw=160;

    var xl=180;
    //debugger;


    var width = mypic.width;

    var height = mypic.height;

    var bili = width/height;



    var A=xw/width;

    var B=xl/height;



    if(!(A>1&&B>1))

    {

        if(A<B)

        {

            mypic.width=xw;

            mypic.height=xw/bili;

        }

        if(A>B)

        {

            mypic.width=xl*bili;

            mypic.height=xl;

        }

    }

}

function FillYearSelect(oSelect)
{
    for(i=oSelect.options.length-1;i>=0;i--)
    {
        oSelect.options.remove(i);
    }

    var oOption;
    for(i=2007;i<2028;i++)
    {
        oOption = document.createElement("OPTION");
        oSelect.options.add(oOption);
        oOption.innerText = i +"年";
        oOption.value = i;
    }
    oSelect.selectedIndex = 0;
}

function FillMonthSelect(oSelect)
{
    for(i=oSelect.options.length-1;i>=0;i--)
    {
        oSelect.options.remove(i);
    }

    var oOption;
    for(i=1;i<13;i++)
    {
        oOption = document.createElement("OPTION");
        oSelect.options.add(oOption);
        oOption.innerText = i +"月";
        oOption.value = i;
    }
    oSelect.selectedIndex = 0;
}

function LogInfo(UID,FUNCTION)
{
    var xmlData="<action>Loginfo</action>";
    xmlData+="<UID>"+ replaceValue(UID) +"</UID>";
    xmlData+="<FUNCTION>"+ replaceValue(FUNCTION) +"</FUNCTION>";
    xmlData=formatXmlData("",xmlData);
    result=sendXmlData(xmlData,"service/service.jsp");
    if(!checkResult(result))
    {
        var errResult = getErrorMessage(result)
        if(errResult!=null)
        {
            alert(errResult);
        }
        return false;
    }
    else
    {
        var Div = window.document.createElement("DIV");
        Div.innerHTML = getErrorMessage(result);
        if(Div.children[0].repeat=='1')
        {
            alert("系统日志写入失败！");
        }
    }
}
function replaceClientValue(value)
{
    while(value.indexOf("@@1015@@")!=-1)
    {
           value = value.replace("@@1015@@","<");
    }
    while(value.indexOf("@@1016@@")!=-1)
    {
           value = value.replace("@@1016@@",">");
    }
    while(value.indexOf("@@1017@@")!=-1)
    {
           value = value.replace("@@1017@@","'");
    }
    while(value.indexOf("@@1018@@")!=-1)
    {
           value = value.replace("@@1018@@","/");
    }
    return value;
}
