var _wWin=null;
var _wTarget=null;
var _top=null;
function getWebWin()
{
	var p=window;
	//if(p==p.parent)
	
	if(window._topW)
	{
		_top=window;
		return;
	}
	
	if(p!=p.parent && !p.parent._top)
	{
		alert(p.parent._top);
		top.location.href="/"
		return
	}
	_top=p.parent._top;//继承父窗口的_top

	_wWin=null
	_wTarget=null
	if(p.parent!=_top )
	{
		if(p.parent.frameElement && p.parent.frameElement.ext_win)
		{
			p.frameElement.ext_win=p.parent.frameElement.ext_win
			_wWin= p.frameElement.ext_win
			_wTarget= p.frameElement.ext_win.ext_target
		}
	}
	else if(p.frameElement && p.frameElement.ext_win)
	{
		_wWin= p.frameElement.ext_win
		_wTarget= p.frameElement.ext_win.ext_target
		
	}
	
}
getWebWin();


String.prototype.Trim = function()
{
    return this.replace(/(^\s*)|(\s*$)/g, "");
}
String.prototype.LTrim = function()
{
    return this.replace(/(^\s*)/g, "");
}
String.prototype.RTrim = function()
{
    return this.replace(/(\s*$)/g, "");
}

 function isNumeric(strNumber) { 
 return (strNumber.search(/^(-|\+)?\d+(\.\d+)?$/) != -1); 
 } 
 function isUnsignedNumeric(strNumber) { 
 return (strNumber.search(/^\d+(\.\d+)?$/) != -1); 
 } 
 function isInteger(strInteger) { 
 return (strInteger.search(/^(-|\+)?\d+$/) != -1); 
 } 
 function isUnsignedInteger(strInteger) { 
 return (strInteger.search(/^\d+$/) != -1); 
 } 

function isValid(obj,objName,isAllowNull,valType)
{
	obj.value=obj.value.Trim()
	objName="【"+objName+"】"
	switch(isValid.arguments.length)
	{
		case 2:
			isAllowNull=false
		case 3:
			valType=""
	}
	if(!isAllowNull && obj.value=="")
	{
		if(obj.type=="select-one")
		{
			alert("请选择"+objName+"！")
			obj.focus();
			return false;
		}
		else
		{
			alert(objName+"不能为空! 请填写"+objName+"。")
			obj.focus();
			return false;
		}
	}
	if(obj.value!="" && valType!="")
	{
		if(valType=="Number")
		{
			if(!isNumeric(obj.value))
			{
				alert(objName+"必须为数字！")
				obj.focus();
				return false;
			}
		}
		else if(valType=="uNumber")
		{
			if(!isUnsignedNumeric(obj.value))
			{
				alert(objName+"必须为无符号数字！")
				obj.focus();
				return false;
			}
		}
		else if(valType=="Integer")
		{
			if(!isInteger(obj.value))
			{
				alert(objName+"必须为整数！")
				obj.focus();
				return false;
			}
		}	
		else if(valType=="uInteger")
		{
			if(!isUnsignedInteger(obj.value))
			{
				alert(objName+"必须为无符号整数！")
				obj.focus();
				return false;
			}
		}			
	}
	return true
}

//cookie 相关函数
function getCookieVal (offset) {
  var endstr = document.cookie.indexOf (";", offset);
  if (endstr == -1)
    endstr = document.cookie.length;
  return unescape(document.cookie.substring(offset, endstr));
}
function FixCookieDate (date) {
  var base = new Date(0);
  var skew = base.getTime(); // dawn of (Unix) time - should be 0
  if (skew > 0)  // Except on the Mac - ahead of its time
    date.setTime (date.getTime() - skew);
}
function GetCookie (name) {
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen) {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg)
      return getCookieVal (j);
    i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break; 
  }
  return null;
}
function SetCookie (name,value,expires,path,domain,secure) {
  document.cookie = name + "=" + escape (value) +
    ((expires) ? "; expires=" + expires.toGMTString() : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}

function DeleteCookie (name,path,domain) {
  if (GetCookie(name)) {
    document.cookie = name + "=" +
      ((path) ? "; path=" + path : "") +
      ((domain) ? "; domain=" + domain : "") +
      "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}
//设置下拉列表selObj中，将值为val的项选中
function SetSelect(selObj,val)
{
	for( var i=0;i<selObj.options.length;i++)
	{
	  	if(val==selObj.options[i].value)
		{
			selObj.selectedIndex=i;
			break;
			}
		}

}
function SetRadio(radio,sel)
{
	for(var i=0;i<radio.length;i++)
		if(radio[i].value==sel)
		{
			radio[i].checked=true;
			return;
		}
}

function SetCheck(chk,selArr)
{
	for(var k=0;k<selArr.length;k++)
	{
		for(var i=0;i<chk.length;i++)
			if(chk[i].value==selArr[k])
			{
				chk[i].checked=true;
				break;
			}
	}
}


function _tipsIt(msg,tipsImg)
{
	document.write("<table width=100% height=100% border=0><tr><td align=center>");
	document.write(tipsImg+"&nbsp;"+msg);
	document.write("</td></tr></table>");
	
}
function tipsIt(msg,btnInfo,isOk)
{
	var btnArr=btnInfo.split("|");
	var btnNum;
	if(btnInfo=="")
		btnNum=0;
	else
		btnNum=btnArr.length/2;
		
	var tit="";
	var tipsImg="";
	if(isOk)
	{
		tit="<strong>提示信息</strong>";
		tipsImg="<img src='/img/smile01.gif' align=absmiddle>"
	}
	else
	{
		tit="<strong>出错啦！！！</strong>";
		tipsImg="<img src='/img/cry01.gif' align=absmiddle>"
	}
	if(btnNum==0)
	{
		_tipsIt(msg,tipsImg);
		return;
	}
		
	document.write('<table width=100% height=100% border=0><tr><td align=center> <table width="360"  border="1" bordercolor="#31659C" align="center" cellpadding="2" cellspacing="0" style="border-collapse: collapse; "><tr><td height="21" align="center" background="/img/Bg_TipsTit.jpg">'+tit+'</td></tr><tr><td bgcolor="#429EDE" height=4><img src="/img/1pixel.gif" width="1" height="1"></td></tr><tr><td><table width="100%"  border="0" cellspacing="0" cellpadding="0"><tr><td width="45" height="60" valign=top align="right">'+tipsImg+'</td><td align="center" style="color:cc3300;font-size:14px; ">');
	document.write(msg);
	document.write('</td></tr></table></td></tr>');
	if(btnNum>0)
	{
		document.write('   <tr><td height="30" align="center"><table  border="0" cellspacing="1" cellpadding="1"><tr align="center"><td width="10"></td>');
		for(var i=0;i<btnArr.length;i+=2)
			document.write('<td width="50" height="20" nowrap class="flatBtn"  onclick="'+btnArr[i+1]+'">'+btnArr[i]+'</td><td width="10"></td>');
		document.write('</tr></table></td></tr>');
	}
	document.write(' </table></td></tr></table>');	
}

function successTips(msg,isClose,isBack,backUrl)
{
	switch(successTips.arguments.length)
	{
		case 0:
			msg="";	
		case 1:
			isClose=true;
		case 2:
			isBack=true;
		case 3:
			backUrl="";
	}
	var btnInfo="";
	if(isClose)
	{
		if(btnInfo=="")
			btnInfo="关 闭|window.close()";
		else
			btnInfo+="|关 闭|window.close()";
	}
	if(isBack)
	{
		if(backUrl=="")
		{
			if(btnInfo=="")
				btnInfo="返 回|history.back()";
			else
				btnInfo+="|返 回|history.back()";
		}
		else
		{
			if(btnInfo=="")
				btnInfo="返 回|window.location.replace('"+backUrl+"')";
			else
				btnInfo+="返 回|window.location.replace('"+backUrl+"')";
		}	
	}
	tipsIt(msg,btnInfo,true)

}

function failTips(msg,isClose,isBack,backUrl)
{
	switch(failTips.arguments.length)
	{
		case 0:
			msg="";	
		case 1:
			isClose=true;
		case 2:
			isBack=true;
		case 3:
			backUrl="";
	}
	var btnInfo="";
	if(isClose)
	{
		if(btnInfo=="")
			btnInfo="关 闭|window.close()";
		else
			btnInfo+="|关 闭|window.close()";
	}
	if(isBack)
	{
		if(backUrl=="")
		{
			if(btnInfo=="")
				btnInfo="返 回|history.back()";
			else
				btnInfo+="|返 回|history.back()";
		}
		else
		{
			if(btnInfo=="")
				btnInfo="返 回|window.location.replace('"+backUrl+"')";
			else
				btnInfo+="返 回|window.location.replace('"+backUrl+"')";
		}	
	}
	tipsIt(msg,btnInfo,false)

}
function getAbsolutePos(el)
{
	
	var r = { x: el.offsetLeft, y: el.offsetTop };
	 while(el=el.offsetParent) 
	 {
		  r.x+=el.offsetLeft;  
		  r.y+=el.offsetTop;  
	 }  
 	return r;
};
function parseDate(str){   
  if(typeof str == 'string'){   
    var results = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}) *$/);   
    if(results && results.length>3)   
      return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]));    
    results = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}) +(\d{1,2}):(\d{1,2}):(\d{1,2}) *$/);   
    if(results && results.length>6)   
      return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]),parseInt(results[4]),parseInt(results[5]),parseInt(results[6]));    
    results = str.match(/^ *(\d{4})-(\d{1,2})-(\d{1,2}) +(\d{1,2}):(\d{1,2}):(\d{1,2})\.(\d{1,9}) *$/);   
    if(results && results.length>7)   
      return new Date(parseInt(results[1]),parseInt(results[2]) -1,parseInt(results[3]),parseInt(results[4]),parseInt(results[5]),parseInt(results[6]),parseInt(results[7]));    
  }   
  return null;   
}  
function workPhone(){return"023-86661283 023-86661281(传真)"};function keepPhone(){return"189-83865-121 189-83865-122 189-83865-123"};function setDomain(){/*var domain=document.location.hostname;var p=domain.indexOf(".");domain=domain.substring(p+1);document.domain=domain*/};
////////////////精确数字运算
//除法函数，用来得到精确的除法结果 
function accDiv(arg1,arg2){ 
     var t1=0,t2=0,r1,r2; 
	 arg1=arg1+"";
	 arg2=arg2+"";
	 arg1=arg1.Trim();
	 arg2=arg2.Trim();	 
     try{t1=arg1.split(".")[1].length}catch(e){} 
     try{t2=arg2.split(".")[1].length}catch(e){} 
     with(Math){ 
         r1=Number(arg1.replace(".","")) 
         r2=Number(arg2.replace(".","")) 
         return (r1/r2)*pow(10,t2-t1); 
     } 
} 

//给Number类型增加一个div方法，调用起来更加方便。 
Number.prototype.div = function (arg){ 
     return accDiv(this, arg); 
} 

//乘法函数，用来得到精确的乘法结果 
function accMul(arg1,arg2) 
{ 
	 arg1=arg1+"";
	 arg2=arg2+"";
	 arg1=arg1.Trim();
	 arg2=arg2.Trim();	 
     var m=0,s1=arg1,s2=arg2; 
     try{m+=s1.split(".")[1].length}catch(e){} 
     try{m+=s2.split(".")[1].length}catch(e){} 
     return Number(s1.replace(".",""))*Number(s2.replace(".",""))/Math.pow(10,m) 
} 

//给Number类型增加一个mul方法，调用起来更加方便。 
Number.prototype.mul = function (arg){ 
     return accMul(arg, this); 
} 

//加法函数，用来得到精确的加法结果 
function accAdd(arg1,arg2){ 

     var r1,r2,m;
	 arg1=arg1+""
	 arg2=arg2+""
	 arg1=arg1.Trim();
	 arg2=arg2.Trim();	 
	 arg1 = arg1.replace(/\,/g,""); 
     arg2 = arg2.replace(/\,/g,""); 
     try{r1=arg1.split(".")[1].length}catch(e){r1=0} 
     try{r2=arg2.split(".")[1].length}catch(e){r2=0} 
     m=Math.pow(10,Math.max(r1,r2)) 

     return (Math.round(arg1*m+arg2*m))/m 
} 

//给Number类型增加一个add方法，调用起来更加方便。 
Number.prototype.add = function (arg){ 
     return accAdd(arg,this); 
} 

function fmtNumber(val,m)
{
	var tmp;
	var pw=Math.pow(10,m)
	tmp=val*pw
	tmp=Math.round(tmp)/pw
	return tmp;
}

/** 
/** 
* 格式化数字 
* Author : Z,Mingyu 
* 参数： 
* prmNum (Number) : 要格式化的数字 
* prmPtn (String) : 格式化规则，例如：#,##0.00 
* * prmNullValue : 当要格式化的数字为null、空或非数字时，返回的结果。默认为0 
*/ 
function formatNumber(prmNum,prmPtn,prmNullValue){ 
var nullValue = prmNullValue ? prmNullValue : 0; 
if(prmNum == "" || prmNum == null) return nullValue; 
prmNum=prmNum+"";
prmNum = prmNum.replace(/\,/g,""); 
if(isNaN(prmNum)) return nullValue; 
if(prmPtn == "" || prmPtn == null) return prmNum; 
var ptnLen = prmPtn.length; 
var pointIndex = prmPtn.indexOf("."); 
var groupIndex = prmPtn.indexOf(","); 
var pointLen = (pointIndex == -1 ? 0 : ptnLen - pointIndex - 1); 
prmNum = parseFloat(prmNum).toFixed(pointLen) + ""; 
if(groupIndex != -1){ 
if(pointIndex == -1) pointIndex = ptnLen; 
var len = pointIndex - groupIndex - 1; 
var reg = new RegExp("(-?\\d+)(\\d{"+len+"})"); 
while(reg.test(prmNum)) prmNum = prmNum.replace(reg,"$1,$2"); 
} 

return prmNum; 
} 
function getUrl(url,_target) 
{
	var p;
	var target;
	if(!_target)
		target=window;
	else
		target=_target;
	var ll=target.location.pathname;
	p=ll.lastIndexOf("/");
	ll=ll.substr(0,p+1)+url
	return(ll);
	
}
function webBlink (elId) {
	var html = 'try{var el = parent.document.all("gTitleBar").all("' + elId + '");';
	html += 
	'el.style.visibility = ' + 
	'el.style.visibility == "hidden" ? "visible" : "hidden"}catch(err){}';
	setInterval(html, 500)
}
function wParseFloat(val)
{
	if(val==null)
		return 0;
	val=val.replace(",","");
	var f=parseFloat(val);
	return isNaN(f)?0:f
}
function OpenTipsWin(url,app,wid,hi)
{
	window.open(url);
}
//wBtn

function wBtnIt(btn)
{
	var _btn=$(btn);
	if(!$.browser.msie)
	{
		var isFirst=false;
		if(!_btn.attr("cls"))
		{
			_btn.attr("cls",btn.className);
			isFirst=true;
		}
		
		if(!_btn.attr("clk"))
			_btn.attr("clk",_btn.attr("onclick"));
		var dis=_btn.attr("dis")
		
		if(typeof(dis)!="undefined" && dis!="false" && dis!=false )
		{
			btn.className=_btn.attr("cls")+"_Disabled";
			_btn.attr("onclick",null)
			_btn.removeAttr("onmouseover")
			_btn.removeAttr("onmouseout")
			_btn.removeAttr("onmousedown")
			_btn.removeAttr("onmouseup")
		}
		else if(!_btn.attr("onmouseover"))
		{
			btn.className=_btn.attr("cls");
			_btn.attr("onmouseover","this.className=$(this).attr('cls')+'Hover'");
			_btn.attr("onmouseout","this.className=$(this).attr('cls')");
			_btn.attr("onmousedown","this.className=$(this).attr('cls')+'Down'");
			_btn.attr("onmouseup","this.className=$(this).attr('cls')");
			if(!isFirst)
				_btn.attr("onclick",_btn.attr("clk"))
			//alert(btn.outerHTML);
		}
	}
	else
	{
		if(typeof(_btn.attr("dis"))!="undefined")
		{
			if(_btn.attr("dis")=="true" || _btn.attr("dis")==true)
			{
				btn.disabled=true;
				//btn.style.filter="gray";
			}
			else
			{
				btn.disabled=false;
				//btn.style.filter="";
			}
		}
	}

}
function disWBtn(wBtn,stat)
{
	 if(stat)
		$(wBtn).attr("dis",true);
	  else
	  	$(wBtn).attr("dis",false);
	 wBtnIt(wBtn);
}
function expSel(act)
{
	mainTab._expAct=act;
	var sWin=_top.createExtWin("选择导出或打印的记录","/print/printSel.jsp",820,460,this);
	sWin.addButton('确定', "this.ext_win._dlgWin.saveIt()")
	sWin.addButton('取消', "this.ext_win.hide()")	
	sWin.addExtHTML	("<font color=ff0000>提示：</font><font color=0000ff>请勾选需要导出或打印的记录后，点击[确定]</font>");
	sWin.show();		

}

