function max_str(d,g){d=txt_htm(d,'txt');var c='';var j=/[^\x00-\xff]/;var i=0;if(g==-1){c=0;for(i=0;i<d.length;i++){if(j.test(d.charAt(i)))c=c+2;else c=c+1;}}else{var f;if(j.test(d.charAt(i)))f=2;else f=1;while(i<d.length&&f<g){c=c+d.charAt(i);i++;if(j.test(d.charAt(i)))f=f+2;else f=f+1;}if(i<d.length){if(f>g)c=c.substring(0,c.length-1);c=c+'…';}}return c}
function str_safe(c,f){var d;c=c.replace(/^[ 　]*|[ 　]*$/g,'');if(f=='select'){d=/<(.*)( *)(.*)>.*<\/\1>|<(.*) \/>/;c=c.replace(d,'');d=/['"|$<>\\+&%#]/ig;c=c.replace(d,'');d=/\s+/ig;c=c.replace(d,' ');return c;}d=/<(iframe|frameset|frame)[^>]*>/gi;c=c.replace(d,'');d=/(?:<script.*?>)(?:(\n|\r|.)*?)(?:<\/script>)/ig;c=c.replace(d,"");if(f=='script'){d=/'/g;c=c.replace(d,"\\'");d=/\r\n/g;c=c.replace(d,'<br>');d=/\s+/g;c=c.replace(d,' ');return c;}d=/<(style|a) [^>]*(javascript|jscript|vbscript|vbs):[^>]*>(.*?)<\/\1>/ig;c=c.replace(d,"");d=/<(img)[^>]*(javascript|jscript|vbscript|vbs):[^>]*>/ig;c=c.replace(d,"");if(f=='strict'||f=='html'){d=/&/g;c=c.replace(d,'&#38;');d=/\\/g;c=c.replace(d,'&#92;');d=/\r\n/g;c=c.replace(d,'');if(f=='strict'){d=/"/g;c=c.replace(d,'&#34;');d=/\+/g;c=c.replace(d,'&#43;');d=/\(/g;c=c.replace(d,'&#40;');d=/\)/g;c=c.replace(d,'&#41;');d=/</g;c=c.replace(d,'<&#160;');d=/'/g;c=c.replace(d,'&#96;');d=/>/g;c=c.replace(d,'&#62;');d=/\s+/g;c=c.replace(d,' ');}if(f=='html'){d=/'/g;c=c.replace(d,'\&#39;');d=/\s+/g;c=c.replace(d,' ');}return c;}if(f=='common'){d=/'/g;c=c.replace(d,'"');return c;}}
function txt_htm(c,f){var d;if(f!='txt'){d=/<(iframe|frameset|frame)[^>]*>/gi;c=c.replace(d,'');d=/<(style|a) [^>]*(javascript|jscript|vbscript|vbs):[^>]*>(.*?)<\/\1>/ig;c=c.replace(d,"");d=/<(img)[^>]*(javascript|jscript|vbscript|vbs):[^>]*>/ig;c=c.replace(d,"");d=/(<[\w][^>]*\s)(on[\w| ]+\s*=\s*)(\w+|'[^']*'|"[^"]*")([^>]*>)/gi;c=c.replace(d,'$1$4');d=/(?:<script.*?>)(?:(\n|\r|.)*?)(?:<\/script>)/ig;c=c.replace(d,"");}if(f=='htm'){d=/\\/g;c=c.replace(d,'&#92;');d=/"/g;c=c.replace(d,'&#34;');d=/</g;c=c.replace(d,'<&#160;');d=/'/g;c=c.replace(d,'&#96;');d=/>/g;c=c.replace(d,'&#62;');d=/\r\n/g;c=c.replace(d,'<br>');d=/\s+/g;c=c.replace(d,'&#160;');return c;}if(f=='code'){d=/'/g;c=c.replace(d,'\\\'');d=/\r\n/g;c=c.replace(d,'<br>');return c;}if(f=='meta'){d=/'/g;c=c.replace(d,'');d=/\s+/g;c=c.replace(d,' ');return c;}if(f=='txt'){d=/<br>/g;c=c.replace(d,'\n\r');d=/&#92;/g;c=c.replace(d,'\\');d=/&#34;/g;c=c.replace(d,'"');d=/<&#160;/g;c=c.replace(d,'<');d=/&gt;/g;c=c.replace(d,'>');d=/&#160;/g;c=c.replace(d,' ');d=/&nbsp;/g;c=c.replace(d,' ');d=/&#96;/g;c=c.replace(d,'\'');d=/&#43;/g;c=c.replace(d,'+');d=/&#40;/g;c=c.replace(d,'(');d=/&#41;/g;c=c.replace(d,')');d=/&#38;/g;c=c.replace(d,'&');}return c;}
function create_select(j,d,g,selected){var f;var c=document.getElementsByName(j);var c=c[0];if(selected==null)selected=0;if(c.options.length!=0){while(c.options.length!=0){c.options.remove(0);}}for(var i=0;i<d.length;i++){f=document.createElement('OPTION');c.options.add(f);c.options[i].text=d[i];c.options[i].value=g[i];}c.selectedIndex=selected;}
function valid_judge(str,index){
	var reg_expression, reg_explain, patrn
	reg_expression = new Array(/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){5,20}$/, /^\d+$/, /^\d{5,9}$/, /(^[0-9]{3,4}(\-| )[0-9]{6,8}$)|(^[0-9]{6,8}$)|(^13[0-9]{9}$)/, /^13[0-9]{9}$|^15[0-9]{9}$/, /^\d{6}$/, /^\d{15}(\d{2}[0-9X])?$/, /^[\u4e00-\u9fa5]{2,5}$/, /^[\x00-\xff]$/, /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/, (/^[\w\-\.]+@[\w\-]+(\.\w+)+$/), /(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$/, /(^[0-9]+)(.{0,1})([0-9]{0,2}$)/, /^[^\'\"\|&%#<>]*$/);
	var reg_explain = new Array('由字母或数字组成,字符长度在5-20位之间','应该为数字','应该为5-9位数字','必须6-8位数字和-或空格组成,例027-88888888','必须为11位数字,以13或15开头','必须为6位数字','身份证号不对','中文名字格式不对','不能有中文','格式不对,范例:192.168.0.1','格式不对,范例:redcap@163.net','格式不对,范例:www.sina.com.cn','货币的格式不对', '含有非法字符', '电话号码格式不对');
	if(index==14){
		patrn = reg_expression[3];
		if(patrn.exec(str)){
			return true;
		}else{
			patrn = reg_expression[4];
			if(patrn.exec(str)){
				return true;
			}else{
				return reg_explain[index];
			}
		}
	}else{
		patrn = reg_expression[index];
		if(patrn.exec(str)){
			return true;
		}else{
			return reg_explain[index];
		}
	}

}
function simplePreload(){
	var args = simplePreload.arguments;
	document.imageArray = new Array(args.length);
	for(var i=0; i<args.length; i++){
		document.imageArray[i] = new Image;
	    document.imageArray[i].src = args[i];
	}
}
function regInput(k,j,l){var d,c,f,g;d=document.selection.createRange();if(d.parentElement().tagName!='INPUT')return false;c=d.duplicate();c.text='';f=k.createTextRange();c.setEndPoint('StartToStart',f);g=c.text+l+f.text.substr(c.text.length);return j.test(g)}
//找到莫个一级栏目下的二级栏目,或三级栏目,限于新闻发布系统
function FoundColumn(ColumnStr, TypeStr, AddIndex){
	var str, tmp, Result;
	if(!menu_item instanceof Array){
		alert('找不到指定的数组!');
		return;
	}
	Result = -1;
	for(var i=0;i<menu_item.length;i++){
		if(menu_item[i][1]=='文章发布'||menu_item[i][1]=='产品录入'||menu_item[i][1]=='下载系统'){
			if(menu_item[i][0]==ColumnStr){
				Result = i;
				break;
			}
		}
	}
	if(Result==-1) return Result;
	if(arguments[2]=='undefined'||arguments[2]==-1){
		return menu_item[Result][10];
	}else{
		tmp = menu_item[Result];
		Result = -1;
		for(var i=0;i<tmp[10].length;i++){
			if(tmp[10][i]==TypeStr){
				Result = i;
				break;
			}
		}
		if(Result==-1) return Result;

		if(tmp[14]=='1'){
			str = tmp[12][0]
		}else{
			str = tmp[12][Result]
		}
		str = str[AddIndex][3];
		if(str!='') str = str.split(':'); else str = '';
		return str;
	}
}
function GetObjPos(e){var rec=new Array(3);rec[2]=e.offsetWidth;rec[3]=e.offsetHeight;var t=e.offsetTop;var l=e.offsetLeft;while(e=e.offsetParent){t+=e.offsetTop;l+=e.offsetLeft;};rec[1]=t;rec[0]=l;return rec;}
function TransShow(o,m,l,k,j){var g,c,f;c=document.getElementById(o);if(c==null)return;if(navigator.appVersion.indexOf('MSIE 5.5')>0||navigator.appVersion.indexOf('MSIE 6.0')>0)g=true;else g=false;r=Math.floor(Math.random()*5);switch(m){case 0:f=new Array(2,0.25,0,'reverse');if(typeof arguments[4]!='undefined'&&arguments[4]!=''){d=j.split('|');f[0]=parseInt(d[0]);if(d.length>1)f[1]=parseInt(d[1]);if(d.length>2&&d[2]=='1')f[2]=parseInt(d[2]);if(d.length>3&&d[3]=='forward')f[1]=d[3];}c.style.filter='progid:DXImageTransform.Microsoft.GradientWipe(duration=2, GradientSize=0.5, wipestyle=0, motion=reverse)';break;case 1:c.style.filter='progid:DXImageTransform.Microsoft.Wheel(spokes=4)';break;case 2:c.style.filter='progid:DXImageTransform.Microsoft.Blinds( Bands=10,direction=up)';break;case 3:c.style.filter='progid:DXImageTransform.Microsoft.RadialWipe(wipestyle=CLOCK)';break;case 4:c.style.filter='progid:DXImageTransform.Microsoft.Strips(motion=rightup)';break;case 5:c.style.filter='progid:DXImageTransform.Microsoft.Checkerboard( Direction=right,SquaresX=6,SquaresY=2)';break;default:f=new Array(1,1);if(typeof arguments[4]!='undefined'&&arguments[4]!=''){d=j.split('|');f[0]=parseInt(d[0]);if(d.length>1)f[1]=parseInt(d[1]);}c.style.filter='progid:DXImageTransform.Microsoft.Fade(duration='+f[0]+',overlap='+f[1]+')';}if(g){c.filters[0].apply();}if(c.tagName=='IMG'){c.src=l;}else{c.innerHTML=l;}if(g){c.filters[0].play();}if(k!=''){window.setTimeout('k',f[0]+100);}}
function JudgeImg(l,m,g){var k,f,d,j,c;c=true;f=navigator.userAgent.toLowerCase();if(f.indexOf('msie 7')!= -1)j=true;else j=false;if(g==1){d=document.getElementById(m);if(j){d.innerHTML='<div style="filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=image);width:10px;height:10px;"></div>';try{d.firstChild.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src=l;}catch(e){}}else{d.innerHTML='<img src="'+l+'">';}}else if(g==2||g==3){c=new Array();c[0]= -1;if(g==2){d=document.getElementById(m).firstChild;if(j){try{f=d.offsetWidth;c[0]=2;}catch(e){}f=d.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src;}else{if(d.readyState=='loading'){c[0]=0;}else if(d.readyState=='uninitialized'){c[0]=1;}else if(d.readyState=='complete'){c[0]=2;}f=d.src}}if(g==3){c[0]=2;f=l;}if(c[0]== -1)return c;if(f.indexOf('.')== -1){c[1]='';}else{k=f.substring(f.indexOf('.')+1);if(k.indexOf('.')!= -1){c[1]='';}else{c[1]=k.toLowerCase();}}if(g==2){if(j){if(c[0]==2){c[2]=d.offsetWidth;c[3]=d.offsetHeight;}}else{c[2]=d.width;c[3]=d.height;}}return c;}}


/**************************************************
函数名：ScrollTimeID
作  用：无间断滚动
参  数：DIvID:滚动所在层的ID, Direct:滚动的方向,1:垂直向上 2:垂直向下 3:水平向左 4:水平向右 Speed:滚动的速度 HtmStr:滚动的内容(如果为空,表明内容由asp写入,注意,asp只写入一半,二htm是全部写入DivID+'a'和DivID+'b').
'		ParaStr:相关参数, 格式为:无间断滚动类型|滚动一周后的调用的函数名|滚动步长
'		无间隔滚动类型: 如果为0表示当前滚动为持续无间断滚动,如果为其它数字,表示当前滚动为间断无间断滚动,当一屏滚动完毕后,停留一定时间后,再滚动到下一屏,两者在程序上的区别在于:前者是根据滚动方向的不同由程序产生两个内容同为HtmStr,但位置不同的ID分别为a和b的表格,后者则两个表格在页面制作时已做好,ID分别为a和b
返回值：
**************************************************/
var ScrollTimeID = new Array();
function CreateScroll(DivID, Direct, Speed, HtmStr, ParaStr){
	var str, tmp, obj1, obj2, DivObj, TimeIdIndex, ScrollStr, NeedScroll, Para, TypesStr, StepPace;
	Para = ParaStr.split('|');
	if(isNaN(Para[0])||Para[0]=='') Para[0] = '0';
	if(isNaN(Para[2])||Para[2]=='') StepPace = 1; else StepPace = parseInt(Para[2]);
	DivObj = document.getElementById(DivID);
	if(DivObj==null) return;

	if(DivObj.offsetWidth==0){
		window.setTimeout('CreateScroll("'+DivID+'", '+Direct+', '+Speed+', \''+HtmStr+'\', "'+ParaStr+'")', 200);
		return;
	}

	if(Para[0]=='0'){//持续无间隔滚动
		if(HtmStr!=''){
			if(Direct==1||Direct==2){
				ScrollStr = '<table border="0" cellpadding="0" cellspacing="0"><tr><td id="'+DivID+'a" style="table-layout:fixed; word-break:break-all;">'+HtmStr+'</td></tr><tr><td id="'+DivID+'b">'+HtmStr+'</td></tr></table>';
			}
			if(Direct==3||Direct==4){
				ScrollStr = '<table border="0" cellpadding="0" cellspacing="0"><tr><td id="'+DivID+'a">'+HtmStr+'</td><td id="'+DivID+'b">'+HtmStr+'</td></tr></table>';
			}
			DivObj.innerHTML = ScrollStr;
		}else{
			document.getElementById(DivID+'b').innerHTML = document.getElementById(DivID+'a').innerHTML
		}
		NeedScroll = false;
		tmp = GetObjPos(DivObj.firstChild);

		if(Direct==1||Direct==2){
			if((tmp[3]/2)>DivObj.offsetHeight) NeedScroll = true;
		}

		if(Direct==3||Direct==4){
			if((tmp[2]/2)>DivObj.offsetWidth) NeedScroll = true;
		}
		if(!NeedScroll){
			if(Direct==1||Direct==2) DivObj.firstChild.rows[1].cells[0].innerHTML = '';
			if(Direct==3||Direct==4) DivObj.firstChild.rows[0].cells[1].innerHTML = '';
			DivObj.style.visibility = 'visible';
			return;
		}else{

		}
		TypesStr = '0';
	}else{//间断无间隔滚动
		TypesStr = Para[0]+'|'+Para[1];
	}
	TimeIdIndex = DivObj.getAttribute('TimeIdIndex');
	if(typeof TimeIdIndex=='undefined'||TimeIdIndex==null){
		TimeIdIndex = ScrollTimeID.length;
		DivObj.setAttribute('TimeIdIndex', ScrollTimeID.length);
	}
	if(Para[0]==0){
		DivObj.onmouseover = function(){var tmp=this.getAttribute('TimeIdIndex');window.clearInterval(ScrollTimeID[tmp]);}
		DivObj.onmouseout = function(){var tmp=this.getAttribute('TimeIdIndex');ScrollTimeID[tmp]=window.setInterval('ScrollMarquee("'+DivID+'", '+Direct+', '+StepPace+', "'+TypesStr+'")', Speed)};
		DivObj.style.visibility = 'visible';
	}
	ScrollTimeID[TimeIdIndex] = window.setInterval('ScrollMarquee("'+DivID+'", '+Direct+', '+StepPace+', "'+TypesStr+'")', Speed);
}

function ScrollMarquee(DivID, Direct, Step, Types) {
	var str, tmp, obj, obj1, obj2, FuncStr, IsOver;
	obj = document.getElementById(DivID);
	obj1 = document.getElementById(DivID+'a');
	obj2 = document.getElementById(DivID+'b');
	IsOver = false;
	if(Direct==1){
		if(obj2.offsetHeight-obj.scrollTop<=0){
			if(Types!='0') obj1.innerHTML = obj2.innerHTML
			obj.scrollTop-=obj1.offsetHeight;
			IsOver = true;
		}else{
			obj.scrollTop = obj.scrollTop+Step;
		}
	}
	if(Direct==2){
		if(obj1.offsetTop-obj.scrollTop>=0){
			if(Types!='0') obj2.innerHTML = obj1.innerHTML
			obj.scrollTop+=obj2.offsetHeight;
			IsOver = true;
		}else{
			obj.scrollTop = obj.scrollTop-Step;
		}
	}
	if(Direct==3){
		if(obj2.offsetWidth-obj.scrollLeft<=0){
			if(Types!='0') obj1.innerHTML = obj2.innerHTML
			obj.scrollLeft-=obj1.offsetWidth;
			IsOver = true;
		}else{
			obj.scrollLeft = obj.scrollLeft+Step;
		}
	}
	if(Direct==4){
		if(obj.scrollLeft<=0){
			if(Types!='0') obj1.innerHTML = obj2.innerHTML
			obj.scrollLeft+=obj2.offsetWidth;
			IsOver = true;
		}else{
			obj.scrollLeft = obj.scrollLeft-Step;
		}
	}
	if(Types!='0'&&IsOver){
		str = Types.split('|');
		tmp = document.getElementById(DivID).getAttribute('TimeIdIndex');
		window.clearInterval(ScrollTimeID[tmp]);
		tmp = str[1].split('#');
		FuncStr = tmp[0]+'('+tmp[1]+', \''+tmp[2]+'\', '+tmp[3]+', '+Direct+')';
		eval(FuncStr);
	}
}

function TransShow(DivID, SHowType, Content, AfterFunc, Para){
	var ie_support, obj, TransPara;
	obj = document.getElementById(DivID);
	if(obj==null) return;
	if(navigator.appVersion.indexOf('MSIE 5.5')>0||navigator.appVersion.indexOf('MSIE 6.0')>0) ie_support = true;else ie_support = false;
	str = Math.floor(Math.random()*5)
	switch(SHowType){
		case 0:
			TransPara = new Array(2, 0.25, 0, 'reverse'); //wipestyle:0:left to right motion,1:top to bottom moting. motion:reverse:反向运动显示,forward:正向运动显示
			if(typeof arguments[4]!='undefined'&&arguments[4]!=''){
				tmp = Para.split('|');
				TransPara[0] = parseInt(tmp[0]);
				if(tmp.length>1) TransPara[1] = parseFloat(tmp[1]);
				if(tmp.length>2) TransPara[2] = parseInt(tmp[2]);
				if(tmp.length>3&&(tmp[3]=='forward'||tmp[3]=='reverse')) TransPara[3] = tmp[3];
			}
			obj.style.filter = 'progid:DXImageTransform.Microsoft.GradientWipe(duration='+TransPara[0]+', GradientSize='+TransPara[1]+', wipestyle='+TransPara[2]+', motion='+TransPara[3]+')';
			break;
		case 1:
			obj.style.filter = 'progid:DXImageTransform.Microsoft.Wheel(spokes=4)';
			break;
		case 2:
			obj.style.filter = 'progid:DXImageTransform.Microsoft.Blinds( Bands=10,direction=up)';
			break;
		case 3:
			obj.style.filter = 'progid:DXImageTransform.Microsoft.RadialWipe(wipestyle=CLOCK)';
			break;
		case 4:
			obj.style.filter = 'progid:DXImageTransform.Microsoft.Strips(motion=rightup)';
			break;
		case 5:
			obj.style.filter = 'progid:DXImageTransform.Microsoft.Checkerboard( Direction=right,SquaresX=6,SquaresY=2)';
			break;
		case 6:
			obj.style.filter = 'progid:DXImageTransform.Microsoft.Checkerboard( Direction=right,SquaresX=6,SquaresY=2)';
			break;
		default://Fade:overlap:渐变重合比例0~~1,1表示先消失完前者后在显示后者
			TransPara = new Array(1, 1);
			if(typeof arguments[4]!='undefined'&&arguments[4]!=''){
				tmp = Para.split('|');
				TransPara[0] = parseInt(tmp[0]);
				if(tmp.length>1) TransPara[1] = parseInt(tmp[1]);
			}
			obj.style.filter = 'progid:DXImageTransform.Microsoft.Fade(duration='+TransPara[0]+',overlap='+TransPara[1]+')';
	}
	if (ie_support) {
		obj.filters[0].apply();
	}
	if(obj.tagName=='IMG'){
		obj.src = Content;

	}else if(obj.tagName=='TABLE'){
		eval(Content);
	}else{
		obj.innerHTML = Content;
	}
	if(ie_support){

		obj.filters[0].play();
	}
	if(AfterFunc!=''){
		window.setTimeout('AfterFunc', TransPara[0]+100);
	}
}
