//全局变量
var y=0;
var iTime=0;
var iva;
var iva1;
var duratime = 10;
var xmlObj = null;
//全局变量

/************************************公共函数js文件******************************************/


/************************************************************************************/
/**************************************原型函数**************************************/
/************************************************************************************/

//字符串原型函数trim。功能：去除字符串空格【左边、右边或左右两边】

String.prototype.trim = function()
{
    var pos=arguments[0];
    
    if(pos==1)
    {
        return this.replace(/(^\s*)/g, "");	//去除左边
    }        
    else if(pos==2)
    {
        return this.replace(/(\s*$)/g, ""); //去除右边       
    }
    else
    {
        return this.replace(/(^\s*)|(\s*$)/g, ""); //去除左右边
    }
}


//字符串原型函数toCase。功能：将字符串传为全角

String.prototype.toCase = function()
{
        var tmp = "";
        
        for(var i=0;i<this.length;i++)
        {
                if(this.charCodeAt(i)>0&&this.charCodeAt(i)<255)
                {
                        tmp += String.fromCharCode(this.charCodeAt(i)+65248);
                }
                else
                {
                        tmp += String.fromCharCode(this.charCodeAt(i));
                }
        }
        return tmp
}


//字符串原型函数isEmail。功能：判断一个字符串是否是合法的邮件地址

String.prototype.isEmail = function()
{
        return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(this);
}

//字符串原型函数len。功能：获取字符串长度，包括汉字【汉字算两个字节】 
 
String.prototype.len  = function()
{
    return this.replace(/[^\x00-\xff]/g, "!!").length;
}


//字符串原型函数toDate。功能：将字符串转换为日期

String.prototype.toDate = function()
{
        try
        {
                return new Date(this.replace(/-/g, "\/"));
        }
        catch(e)
        {
                return null;
        }
}


//字符串原型函数toHtmlEncode。功能：对字符串进行html编码

/*String.prototype.toHtmlEncode = function()
{
        var str = this;
        
        str=str.replace(/&/g,"&amp;");
        
        str=str.replace(/</g,"&lt;");
        
        str=str.replace(/>/g,"&gt;");
        
        str=str.replace(/\'/g,"&#39;");
        
        str=str.replace(/\"/g,"&quot;");
        
        str=str.replace(/\n/g,"<br>");
        
        str=str.replace(/\ /g," ");
        
        str=str.replace(/\t/g,"    ");
        
        return str;
}
*/

//字符串原型函数isColor。功能：判断字符串是否是合法的颜色值

String.prototype.isColor = function()
{
        var temp        = this;
        
        if (temp=="") return true;
        
        if (temp.length!=7) return false;
        
        return (temp.search(/\#[a-fA-F0-9]{6}/) != -1);
}


//字符串原型函数isNumberic。功能：判断字符串是否是数字【flag表示测试的数字类型】

String.prototype.isNumeric = function(flag)
{
        //验证是否是数字
        if(isNaN(this))
        {
                return false;
        }

        switch(flag)
        {
                case null:        //数字
                case "":
                        return true;
                case "+":        //正数
                        return                /(^\+?|^\d?)\d*\.?\d+$/.test(this);
                case "-":        //负数
                        return                /^-\d*\.?\d+$/.test(this);
                case "i":        //整数
                        return                /(^-?|^\+?|\d)\d+$/.test(this);
                case "+i":        //正整数
                        return                /(^\d+$)|(^\+?\d+$)/.test(this);                        
                case "-i":        //负整数
                        return                /^[-]\d+$/.test(this);
                case "f":        //浮点数
                        return                /(^-?|^\+?|^\d?)\d*\.\d+$/.test(this);
                case "+f":        //正浮点数
                        return                /(^\+?|^\d?)\d*\.\d+$/.test(this);                        
                case "-f":        //负浮点数
                        return                /^[-]\d*\.\d$/.test(this);                
                default:        //缺省
                        return true;                        
        }
}


//字符串原型函数isPhone。功能：判断字符串是否是有效的电话号码(中国)

String.prototype.isPhone = function()
{
        return /(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/.test(this);
}


//字符串原型函数isIDCard。功能：判断字符串是否是有效的身份证号码【中国】

String.prototype.isIDCard = function()
{
        var iSum=0;
        
        var info="";
        
        var sId = this;

        var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"};

        if(!/^\d{17}(\d|x)$/i.test(sId))
        {
                return false;
        }
        
        sId=sId.replace(/x$/i,"a");
        
        //非法地区
        if(aCity[parseInt(sId.substr(0,2))]==null)
        {
                return false;
        }

        var sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));

        var d=new Date(sBirthday.replace(/-/g,"/"))
        
        //非法生日
        if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate()))
        {
                return false;
        }
        
        for(var i = 17;i>=0;i--) 
        {
                iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11);
        }

        if(iSum%11!=1)
        {
                return false;
        }
        
        return true;
}


//字符串原型函数isUrl。功能：判断字符串是否是有效连接【网址】

String.prototype.isUrl = function()
{
        return /^http[s]?:\/\/([\w-]+\.)+[\w-]+([\w-./?%&=]*)?$/i.test(this);
}


//字符串原型函数isFileName。功能：判断字符串是否是有效文件名或目录名

String.prototype.isFileName = function()
{
        return !/[\\\/\*\?\|:"<>]/g.test(this);
}


//字符串原型函数existChinese。功能：判断字符串是否包含有汉字

String.prototype.existChinese = function()
{
        //[\u4E00-\u9FA5]為漢字﹐[\uFE30-\uFFA0]為全角符號
        return /^[\x00-\xff]*$/.test(this);
}


//字符串原型函数isZipCode。功能：判断字符串是否是邮编

String.prototype.isZipCode = function()
{
        return /^[\d]{6}$/.test(this);
}


//是否是手机
String.prototype.isMobile = function()
{
        return /^0{0,1}13[0-9]{9}$/.test(this);
}


//字符串原型函数isDate。功能：判断字符串是否是正确的日期

String.prototype.isDate = function()
{
        return this.isLongDate()||this.isShortDate();
}


//字符串原型函数isShortDate。功能：判断字符串是否是正确的短日期

String.prototype.isShortDate = function()
{
        var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/); 
        
        if(r==null)
        {
                return false; 
        }
        
        var d = new Date(r[1], r[3]-1, r[4]); 
        
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
}


//字符串原型函数isLongDate。功能：判断字符串是否是正确的长日期

String.prototype.isLongDate = function()
{
        var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})(\d{1,2})(\d{1,2})(\d{1,2})$/);
        
        if(r==null)
        {
                return false; 
        }
        
        var d = new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]); 
        
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
}


//字符串原型函数isIP。功能：判断字符串是否是正确的ip

String.prototype.isIP = function()
{

        var reSpaceCheck = /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/;

        if (reSpaceCheck.test(this))
        {
                this.match(reSpaceCheck);
                
                if (RegExp.$1 <= 255 && RegExp.$1 >= 0 
                 && RegExp.$2 <= 255 && RegExp.$2 >= 0 
                 && RegExp.$3 <= 255 && RegExp.$3 >= 0 
                 && RegExp.$4 <= 255 && RegExp.$4 >= 0) 
                {
                        return true;     
                }
                else
                {
                        return false;
                }
        }
        else
        {
                return false;
        }
}


//字符串原型函数InStrRev。功能：在字符串里反向查找另一字符串:位置0开始

String.prototype.InStrRev = function(str)
{

        if(str==null)
        {
                str = "";
        }
        
        return this.lastIndexOf(str);
}


//字符串原型函数InStr。功能：在字符串里查找另一字符串:位置从0开始

String.prototype.InStr = function(str)
{

        if(str==null)
        {
                str = "";
        }
        
        return this.indexOf(str);
}


//字符串原型函数Mid。功能：得到中间的字符串,注意从0开始

String.prototype.Mid = function(start,len)
{
        return this.substr(start,len);
}


//字符串原型函数Right。功能：得到右边的字符串

String.prototype.Right = function(len)
{

        if(isNaN(len)||len==null)
        {
                len = this.length;
        }
        else
        {
                if(parseInt(len)<0||parseInt(len)>this.length)
                {
                        len = this.length;
                }
        }
        
        return this.substring(this.length-len,this.length);
}


//字符串原型函数Left。功能：得到左边的字符串

String.prototype.Left = function(len)
{

        if(isNaN(len)||len==null)
        {
                len = this.length;
        }
        else
        {
                if(parseInt(len)<0||parseInt(len)>this.length)
                {
                        len = this.length;
                }
        }
        
        return this.substr(0,len);
}


//字符串原型函数filterScript。功能：替换字符串中的js脚本

String.prototype.filterScript = function()
{
    return this.replace(/<\/?script(\s)*(.)*>/gi,"");
}




/****************************************************************************/
/*****************************其它函数****************************************/
/****************************************************************************/


function stopMov(objID)
 {
    if(iTime < duratime)
    {
        iTime++;
        
        iva = setTimeout('stopMov(objID)',1000);
    } 
    else 
    {
        clearTimeout(iva);
        
        iTime = 0;
        
        document.getElementById(objID).style.display ='none';
    }
}

function boxClose(objID)
{
    clearTimeout(iva);
    
    iTime = 0;
        
    document.getElementById(objID).style.display ='none';
}

function startMov(objID)
{
    var winBox = document.getElementById(objID);
       
    if(winBox != null)
	{
	    y = y + 4;

		winBox.style.top = (document.body.scrollTop + y - 151);
	}
	if(y < 152)
	{
	    iva1 = setTimeout('startMov()',1);
	}
	else
	{   
	    clearTimeout(iva1);
	    
	    y = 0;
	     
	    stopMov();
	}
}

function displayBox(type,title,content,durtime,objID) 
{
    if(type=='T')
    {
        alert('保存成功');
        
        document.location.href=content;
    }
    else
    {
    	var color=(type=='E'?'red':(type=='R'?'green':'#ee679c'));
    
    	var s = "<table border='0' cellspacing='0' cellpadding='0' width='180px' height='150px'>";
    
    	s += "<tr onmouseover=\"this.style.cursor='arrow'\"><td colspan='2' height='25' valign='middle' align='center'>";
    
    	s += title + "</td></tr><tr><td valign='top' colspan='2' height='97px'>";
    
    	s += "<div style='z-index: 148;padding-top:7px;padding-left:5px;width:178px;height:100%;overflow: auto;border-bottom:outset 0px white;";
    
    	s += "border-top:groove 0px;'><font color='" + color + "'>" + content;
    
    	s += "</font></div></td></tr><tr><td colspan='2' align='center' valign='middle' height='22'>";
    
    	s += "<input type='button' style='border:groove 1px;' value='关闭' onclick=\"boxClose();\"></td></tr></table>";
    
    	var winBox = document.getElementById(objID); 
    
    	winBox.innerHTML = s;
    
    	winBox.style.left = (document.body.clientWidth-182);
    
    	winBox.style.top = document.body.scrollTop-151;
    
    	if(winBox.style.display == 'none')
    	{
        	winBox.style.display = '';
    	}
    	
    	duratime = durtime;
    	
    	startMov();
    }
}


	function SelectAll(idChk,strChk)
	{
		var objSet = document.forms[0].getElementsByTagName('input');
		
		var len = objSet.length;

		for(var i=0;i<len;i++)
		{
			if(objSet.item(i).id.toString().toUpperCase().indexOf(strChk)!=-1)
			{
				objSet.item(i).checked = idChk.checked;
			}
		}
	}
	
	function setBColor(obj,dgID,url)
    {
	    var children = document.getElementsByTagName("table");
				
		var dd;
				
		for(var a=0;a<children.length;a++)
		{
		    if(children[a].id.indexOf(dgID)>0)
			{
			    dd=children[a];
			    
				break;
		    }
		}	
			
		for(var i=0;i<dd.rows.length;i++)
		{
		    if(i%2==0)
			{
			    dd.rows[i].style.backgroundColor='white';
			}
			else
			{
				dd.rows[i].style.backgroundColor='#F7F6F3';
			}            
		}
			
		obj.style.backgroundColor = "Tan";
		
		if(url)
		{
		    window.parent.orderdetail.document.location.href=url;
		}
	}
	
	function searchBoxControl(objid)
    {
        var objSrc = event.srcElement;
        
        var obj = document.getElementById(objid);
            
        if(obj.style.display == 'none')
        {
            obj.style.display = '';
               
            objSrc.innerText = '5';
            
            objSrc.title = '隐藏搜索区';
        }
        else
        {
            obj.style.display = 'none';
                
            objSrc.innerText = '6';
            
            objSrc.title = '显示搜索区';
        }
     }
     
     function ddop(objid,objValue)
     {
        var oop = document.getElementById(objValue);
        
        var obj = document.getElementById(objid);
        
        if(oop.value=='0')
        {
            obj.style.display='none';
        }
        else
        {
            obj.style.display='';
        }
     }
     
     //控制左边菜单树   
     function menuControl()
     {
        var frameContent = window.parent.MenuContentFrame;
	
		if(!frameContent)
		{
			frameContent = window.parent.parent.MenuContentFrame;
		}
            
        var srcE = event.srcElement;
            
        if(frameContent.cols=="200,*")
        {
            frameContent.cols="0,*";
            
            event.srcElement.innerText ='4';
            
            event.srcElement.title ='显示菜单';
            
            document.getElementById('ttb').style.width="101.5%";
        }
        else
        {
            frameContent.cols="200,*";
            
            event.srcElement.innerText ='3';
            
            event.srcElement.title = '隐藏菜单';
            
            document.getElementById('ttb').style.width="102%";
        }
    }
    
    function menuControlSwitch(obj)
    {
        var frameContent = window.parent.MenuContentFrame;
        
		if(!frameContent)
		{
			frameContent = window.parent.parent.MenuContentFrame;
		}
    
        if(frameContent.cols=="200,*")
        {
            obj.innerHTML ='<font face=Webdings>3</font>';
            
            obj.title ='隐藏菜单';
        }
        else
        {         
            obj.innerHTML ='<font face=Webdings>4</font>';
            
            obj.title = '显示菜单';
        }
    }


    
function initHttpRequestObj()
{
	var xObj = null;
	
	if(window.XMLHttpRequest)
	{
      	xObj = new XMLHttpRequest();
  	} 
  	else if(window.ActiveXObject)
  	{
      	xObj = new ActiveXObject("Microsoft.XMLHTTP");
  	} 
  	else 
  	{
      	;
  	}
  	
  	return xObj;
}
