﻿var Track_Errors = 0;
function noError() {
    if (Track_Errors == 1) {
        return true;
    }
}
window.onerror = noError;

var PP_MIN_LEN = 4;var PP_MAX_LEN = 16;var PWD_MIN_LEN = 4;var PWD_MAX_LEN = 16;

var TXT_NETBUSY = "网络繁忙，请稍后再试…";

var TXT_NETWAIT = "正在获取数据，请稍候…";

var TXT_POSTDATA = "正在提交数据，请稍候…";

/* 浏览器判断 */

var userAgent = navigator.userAgent.toLowerCase();

var is_Webtv = userAgent.indexOf('webtv') != -1;

var is_Kon = userAgent.indexOf('konqueror') != -1;

var is_Mac = userAgent.indexOf('mac') != -1;

var is_Saf = userAgent.indexOf('applewebkit') != -1 || navigator.vendor == 'Apple Computer, Inc.';

var is_Opera = userAgent.indexOf('opera') != -1 && opera.version();

var is_Moz = (navigator.product == 'Gecko' && !is_Saf) && userAgent.substr(userAgent.indexOf('firefox') + 8, 3);

var is_NS = userAgent.indexOf('compatible') == -1 && userAgent.indexOf('mozilla') != -1 && !is_Opera && !is_Webtv && !is_Saf;

var is_IE = (userAgent.indexOf('msie') != -1 && !is_Opera && !is_Saf && !is_Webtv) && userAgent.substr(userAgent.indexOf('msie') + 5, 3);

/* 基础函数 */

function $Get(id) {
    return document.getElementById(id);
}
//获取指定参数的值
function $Q(item) {
    var sValue = location.search.match(new RegExp("[\?\&]" + item + "=([^\&]*)(\&?)", "i"));
    return sValue ? sValue[1] : sValue;
}
function getParam(s, f) {
    if (typeof (s) != 'string')
        return '';
    var a = s.split('&');
    for (var i = 0; i < a.length; i++) {
        var p = a[i].split('=', 2)
        if (p[0] == f) {
            if (p.length == 2)
                return unescape(p[1]);
            else
                return '';
        }
    }
    return '';
}

//取得当前URL中的参数
function getURLParam(Key) {
    var url = location.href;
    var ParaString = url.substring(url.indexOf("?") + 1, url.length);
    return getParam(ParaString, Key);
}
function LTrim(STR) {
    return STR.replace(/^\s*/, '');
}

function RTrim(STR) {
    return STR.replace(/\s*$/, '');
}
function Trim(STR) {
    if (STR == undefined) { return ''; }
    STR = STR.replace(/(^\s*|\s*$)/g, '');
    STR = STR.replace(/(\r*\n){3,}/g, '\n\n');
    STR = STR.replace(/\r/g, '');
    return STR;
}

//Cookie操作
var JCookie = new function() {
    this.get = function(n) {
        var arr = document.cookie.match(new RegExp("(^| )" + n + "=([^;]*)(;|$)"));
        if (arr != null) return unescape(arr[2]); return null;
    },
    this.set = function(n, v) {
        var Sec = 30 * 24 * 60 * 60 * 1000; // 默认30天
        if (arguments.length >= 3) {
            var Num = arguments[2].substring(1, arguments[2].length) * 1;
            var T = arguments[2].substring(0, 1).toLowerCase();
            if (T == "s") {
                Sec = Num * 1000;
            } else if (T == "m") {
                Sec = Num * 60 * 1000;
            } else if (T == "h") {
                Sec = Num * 60 * 60 * 1000;
            } else if (T == "d") {
                Sec = Num * 24 * 60 * 60 * 1000;
            }
        }
        var exp = new Date();
        exp.setTime(exp.getTime() + Sec * 1);
        var sPath, sDomain;
        if (arguments.length >= 4) {
            sPath = ";path=" + arguments[3];
        }
        if (arguments.length >= 5) {
            sDomain = ";domain=" + arguments[4];
        }
        document.cookie = n + "=" + escape(v) + ";expires=" + exp.toGMTString() + sPath + sDomain;
    },
    this.CheckSub = function(sCookie, s) {
        var aParts = sCookie.split('&'), nParts = aParts.length, aKeyVal;
        if (nParts == 1) {
            return sCookie.indexOf(s);
        } else {
            for (var i = 0; i < nParts; i++) {
                aKeyVal = aParts[i].split('=');
                if (aKeyVal[0] == s) {
                    return i;
                }
            }
        }
        return -1;
    },
    this.getSub = function(n, s) {
        var sCookie = this.get(n);
        if (sCookie == null) { sCookie = ""; }
        var nExists = this.CheckSub(sCookie, s);
        if (nExists > -1) {
            return sCookie.split('&')[nExists].split('=')[1];
        } else if (sCookie.indexOf(s) > 0) {
            return sCookie.split('=')[1];
        }
        return '';
    },
    this.setSub = function(n, s, v) {
        var sCookie = this.get(n), a = arguments, al = a.length;
        if (sCookie == null) { sCookie = ""; }
        var aParts = sCookie.split('&');
        var sNewVal;
        var nExists = this.CheckSub(sCookie, s);
        if (sCookie == '') {
            sNewVal = (s + '=' + v).toString();
        } else {
            if (nExists == -1) { nExists = aParts.length; }
            aParts[nExists] = s + '=' + v;
            sNewVal = aParts.join('&');
        }
        if (al == 4) {
            return this.set(n, sNewVal, (a[3] || ''));
        }
        if (al == 5) {
            return this.set(n, sNewVal, (a[3] || ''), (a[4] || '/'));
        }
        if (al == 6) {
            return this.set(n, sNewVal, (a[3] || ''), (a[4] || '/'), (a[5] || ''));
        }
        return this.set(n, sNewVal);
    }
}

// 包含文件 用法：
function $import(Path,Type){
	var S,i;
	if(Type=="JS") {
	   var SS = document.getElementsByTagName("Script");
	   for(i=0;i<SS.length;i++){
	       if(SS[i].src && SS[i].src.indexOf(Path)!=-1) return ;
	   }
	   S = document.createElement("Script");
	   S.type = "Text/JavaScript";
	   S.src = Path;
    } else if(Type=="CSS") {
	   var LS = document.getElementsByTagName("Link");
	   for(i=0;i<LS.length;i++){
		   if(LS[i].href && LS[i].href.indexOf(Path)!=-1) return ;
	   }
	   S = document.createElement("Link");
	   S.rel = "Alternate StyleSheet";
	   S.type ="Text/CSS";
	   S.href = Path;
	   if (arguments.length == 3) { S.Title = arguments[2]; }
	   S.disabled = false;
    }
	else return;
	var head = document.getElementsByTagName("Head")[0];
	head.appendChild(S);
} 
	
//设定到时之后执行什么动作
function DoTimeout(DoType,Action,Times)	{
	if (Times=="") Times = 1;
	if (typeof(Times)!="number") Times = 1;
	switch(DoType.toLowerCase()) {
		case "go":
		   window.setTimeout("window.location='"+ Action +"'",Times);
		   break;
		case "alert":
	       window.setTimeout("alert('"+ Action +"')",Times);
		   break;
		case "js":
		   window.setTimeout("'"+ Action.toString() +"'",Times);
		   break;
		default:
		   alert("Nothing will do!");
	       break;
	}
		
}

//设置对象的可见，可操作属性
function setElement(emid,status) {
	status = status.toLowerCase();
	var E = $Get(emid);
	if((typeof(E)!="object")||(E==null)) return false;
	
	switch(status) {
		case "yes":
		   E.disabled=false;
		   break;
		case "no":
		   E.disabled=true;
		   break;
		case "show":
		   E.style.display="block";
		   break;
		case "hide":
		   E.style.display="none";
		   break;
		case "display":
		   E.style.display="inline";
		   break;
	}
}

//设置对象的可见，可操作属性
function setElementByName(emname,status) {
	status = status.toLowerCase();
	var E = document.getElementsByName(emname);
	if(!E.length) E = [E]
	for(var i = 0; i < E.length; i++) {
		if((typeof(E[i])!="object")||(E[i]==null)) return false;
		switch(status){
			case "yes":
			   E[i].disabled=false;
			   break;
			case "no":
			   E[i].disabled=true;
			   break;
			case "show":
			   E[i].style.display="block";
			   break;
			case "hide":
			   E[i].style.display="none";
			   break;
		}
	}
}
	

//字符字数是否在指定的范围
function LimitLen(theValue,Min,Max)	{
	
	theValue=Trim(theValue);
		
	if(theValue=="") return false;
		
	if((theValue.length<Min)||(theValue.length>Max)) {
	   return false;
	} else { return true; }
}


function Input() {
    if (arguments.length == 1) {
        if (arguments[0].className.indexOf("InputFocus") == -1) {
            if (arguments[0].className.indexOf("InputChange") > -1) {
                arguments[0].className = arguments[0].className.replace("InputChange", "InputFocus");
            } else {
                if (arguments[0].className != "") {
                    arguments[0].className = arguments[0].className + " InputFocus";
                } else { arguments[0].className = "InputFocus"; }
            }
        } else {
            arguments[0].className = arguments[0].className.replace("InputChange", "").replace("InputFocus", "");
        }
    } else if (arguments.length >= 2) {
        if (typeof (arguments[1]) == "number") {
            if (arguments[0].className.indexOf("Input_" + arguments[1] + "_Focus") == -1) {
                if (arguments[0].className.indexOf("Input_" + arguments[1] + "_Change") > -1) {
                    arguments[0].className = arguments[0].className.replace("Input_" + arguments[1] + "_Change", "Input_" + arguments[1] + "_Focus");
                } else {
                    if (arguments[0].className != "") {
                        arguments[0].className = arguments[0].className + " Input_" + arguments[1] + "_Focus";
                    } else { arguments[0].className = "Input_" + arguments[1] + "_Focus"; }
                }
            } else {
                if (arguments.length == 3) {
                    arguments[0].className = arguments[0].className.replace("Input_" + arguments[1] + "_Focus", arguments[2]);
                } else {
                    arguments[0].className = arguments[0].className.replace("Input_" + arguments[1] + "_Focus", "");
                }
            }
        } else {
            if (arguments.length == 3) {
                arguments[0].className = arguments[0].className.replace(arguments[1], arguments[2]);
            } else { arguments[0].className = arguments[1] }
        }
    }
}	

//禁止一些键
function DisableKeyDown(){ 
	if((window.event.altKey)&&((window.event.keyCode==37)|| (window.event.keyCode==39))){ 
	   event.returnValue=false; 
	} 
	if(event.keyCode==116){ //F5  
	   event.keyCode=0; 
	   event.returnValue=false; 
	} 
	if(event.keyCode==122){ //F11
	   event.keyCode=0; 
	   event.returnValue=false; 
	} 
	if((event.ctrlKey)&&(event.keyCode==7)){ //Ctrl+n 
	   event.returnValue=false; 
	} 
	if((event.shiftKey)&&(event.keyCode==121)){ //shift+F10 
	   event.returnValue=false; 
	} 
} 

//新开窗口
function NewWindow(theURL,theWidth,theHeight,IsScroll) {
	var xposition=0; yposition=0;
	if ((parseInt(navigator.appVersion) >= 4 )){
		xposition = (screen.width - theWidth) / 2;
		yposition = (screen.height - theHeight) / 2;
	}		
	window.open(theURL,"NewWindow","width="+theWidth+",height="+theHeight+",left="+xposition+",top="+yposition +",scrollbars="+IsScroll);
}
	
//打开新窗口
function OpenWindow(theURL)	{
	var WinName = window.open(theURL);
}
	

//是否密码问题
function IsPwdQuestion(Str) {
	var reg = /^([\u4E00-\u9FA5]|[0-9a-zA-Z ])+$/;
	if (!reg.test(Str))	{ return false; }
	return true;
}
	
	
//判断是否有效手机号码
function IsMobile(Str) {
	var reg = /^13[0-9]{9}$/;
	if (!reg.test(Str)){ return false; }
	return true;
}

//判断是否有效E-Mail
function IsEMail(Str) {
    var reg = /^([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
    if (!reg.test(Str)) { return false; }
	return true;
}
	
//是否为空
function IsNullOrEmpty(Str)	{
	var bCheck = true;
	Str = Trim(Str);
	if(Str=="")
		bCheck = false;
	return bCheck;
}
	
//通行证允许的字符 //字母数字开头，允许3-16字节，允许字母数字下划线点中线 //因为旧的护照可能是2-3个字节
function IsAccountChar(Str)	{
	var reg = /^[a-zA-Z0-9][a-zA-Z0-9._-]{0,15}$/;
	if (!reg.test(Str))
		return false;
	else
		return true;
}
	
	
//增加下拉列表的选项
function ADDSelect(emid, Pos, strText, strValue) {
	var selObj = $Get(emid).options;
	if(selObj!=null) {
	   var objOption = new Option(strText,strValue);
	   selObj.add(objOption,Pos);
    }
}
	
//获取下拉列表选中的值
function getSelectValue(emid) {
	var selValue="";
	var selObj	= $Get(emid).options;
	var len		= selObj.length;
	for(var i=0;i<len;i++) {
		if(selObj[i].selected) { selValue += selObj[i].value + ","; }
	}
	if(selValue.substr(selValue.length-1,1)==",") selValue = selValue.substr(0,selValue.length-1)
	return selValue;
}

function RemoveSelect(emid) {
	var selObj	= $Get(emid).options;
	for(var i=selObj.length;i>0;i--) {
		if(selObj[i-1].selected) { selObj.remove(i-1); }
	}
}

/* 过滤HTML符号 */
function RemoveHtml(inStr) {
    var d = document.createElement("DIV");
    d.innerHTML = inStr;
    d.id = "TempRemoveHtmlContent";
    d.style.display = "none";
    return d.innerText;
}

/* 改变图片大小 */
function resizePic(thispic) {
    if(thispic.width>550){thispic.height=thispic.height*550/thispic.width;thispic.width=550;} 
}
/* 把函数加载进 window.onLoad 事件 */
function addLoadEvent(func) {
    var onLoad = window.onload;
    if (typeof window.onload != 'function') {
        window.onload = func;
    } else {
        window.onload = function() {
            onLoad();
            func();
        }
    }
}
/* 设置PNG图片透明 */
function correctPNG() {
    var F = navigator.appVersion.split("MSIE");
    var G = parseFloat(F[1]);
    if ((G > 5.5) && (document.body.filters)) {
        for (var C = 0; C < document.images.length; C++) {
            var D = document.images[C];
            var I = D.src.toUpperCase();
            if (I.substring(I.length - 3, I.length) == "PNG") {
                var E = (D.id) ? "id='" + D.id + "' " : "";
                var J = (D.className) ? "class='" + D.className + "' " : "";
                var B = (D.title) ? "title='" + D.title + "' " : "title='" + D.alt + "' ";
                var H = "display:inline-block;" + D.style.cssText;
                if (D.align == "left") { H = "float:left;" + H }
                if (D.align == "right") { H = "float:right;" + H }
                if (D.parentElement.href) { H = "cursor:hand;" + H }
                var A = "<span " + E + J + B + " style=\"width:" + D.width + "px; height:" + D.height + "px;" + H + ";filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='" + D.src + "', sizingMethod='scale');\"></span>";
                D.outerHTML = A; C = C - 1
            }
        }
    }
}

//生成遮影层
function InitShadowLayer() {
    try {
        var UPDateProgress = $("div[id*='UPDateProgress']");
        if (UPDateProgress.length > 0 ) {
            var oMask = $("#LoadingMask");
            if (oMask.length == 0) {
                UPDateProgress.append("<div id='LoadingMask'></div>");
                UPDateProgress.append("<div id='LoadingBox'><div>数据加载中... </div></div>");
            }
        } else { return false; }
        UPDateProgress.css("hieght", "100%");
    } catch (e) { }
}

// 切换标签菜单
function ShowTabs() {
    if (arguments.length == 2) {
        var Num = arguments[0];
        var IDTabs = arguments[1];
        if (IDTabs == "" || IDTabs == null) {
            return false;
        }
        var oUL = $Get(IDTabs)
    } else { return false; }
    var aiList = oUL.getElementsByTagName("Li")
    for (var i = 0; i < aiList.length; i++) {
        if (i == Num) {
            aiList[i].className = "Hover";
        } else {
            aiList[i].className = "";
        }
    }
    var oWrap;
    for (var i = 0; i <= 10; i++) {
        var oWrap = $Get(IDTabs + "_" + i);
        try { if (i == Num) { oWrap.style.display = ""; } else { oWrap.style.display = "none"; } } catch (e) { };
    }
}

// Ajax.xml

// xmlDom 为 xml 对象 ， xmlDoc 为 xml 文档 

function JsonToXmlDom(Json) {
    var xmlDom = createXmlDom();
    xmlDom.async = "false";
    if (!is_Opera){ /* Opera 不需要声明这一段 */
        var xmlProperty = xmlDom.createProcessingInstruction("xml", "version=\"1.0\" encoding=\"utf-8\"");
        xmlDom.appendChild(xmlProperty);
    }
    var RootTagName, objField, TextValue;
    if (arguments.length == 2) {
        RootTagName = arguments[1];
    } else {
        RootTagName = "root";
    }
    var oRoot = xmlDom.createElement(RootTagName);
    for (var Key in Json) {
        objField = xmlDom.createElement(Key);
        TextValue = xmlDom.createTextNode(Json[Key]);
        objField.appendChild(TextValue);
        oRoot.appendChild(objField);
    }
    xmlDom.appendChild(oRoot);
    return xmlDom;
}

function createXmlDom(xmlsTry) {
    var oXmlDom = false;
    if (document.implementation && document.implementation.createDocument) {
        oXmlDom = document.implementation.createDocument("", "", null);
    }
    else {
        var aVersions = ["Microsoft.XMLDOM", "MSXML2.DOMDocument.6.0", "MSXML2.DOMDocument.5.0", "Msxml2.DOMDocument.4.0", "MSXML2.DOMDocument.3.0", "MSXML2.DOMDocument"];
        for (var i = 0; i < aVersions.length; i++) {
            try {
                oXmlDom = new ActiveXObject(aVersions[i]);
                if (oXmlDom) {
                    break;
                }
            }
            catch (oError) { }
        }
    }
    if (xmlsTry != null) {
        oXmlDom.async = false;
        if (!is_IE) {
            var oParser = new DOMParser();
            oXmlDom = oParser.parseFromString(xmlsTry, "text/xml");
        }
        else {
            if (is_IE == '7.0') {
                oXmlDom.loadXML(xmlsTry);
            }
            else {
                if (window.XMLHttpRequest) {
                    oXmlDom.loadXML(xmlsTry);
                } else {
                    oXmlDom.load(xmlsTry);
                }
            }
        }
    }
    return oXmlDom;
}

function InitCommonFnuc(){
   try { $import("/JS/JQuery.AjaxFile.js", "JS"); } catch (e) {}
   correctPNG();
   InitShadowLayer();
}

// 脚本初始化

addLoadEvent(InitCommonFnuc);
