var ielt7 = document.all && navigator.userAgent.indexOf('MSIE 7') < 0 && !window.opera;
var hasClass = function(ele,cls) {
	return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
};
var addClass = function(ele,cls) {
	if (!this.hasClass(ele,cls)) ele.className += " "+cls;
};
var removeClass = function(ele,cls) {
	if (hasClass(ele,cls)) {
		var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
		ele.className=ele.className.replace(reg,' ');
	}
};
if(window.opera){
	Array.prototype.concat = function(){
		var array = [];
		for(var i = 0, length = this.length; i < length; i++) array.push(this[i]);
		for(var i = 0, length = arguments.length; i < length; i++) {
			if(arguments[i].constructor == Array) {
				for(var j = 0, arrayLength = arguments[i].length; j < arrayLength; j++)
					array.push(arguments[i][j]);
			} else {
				array.push(arguments[i]);
			}
		}
		return array;
	};
}
Array.prototype._each =  function(iterator) {
	for (var i = 0, length = this.length; i < length; i++) 	iterator(this[i]);
};
Array.prototype.toArray = function() {
	return [].concat(this);
};
Array.prototype.each = function(iterator) {
	var index = 0;
	try {
		this._each(function(value) {
			try {
				iterator(value, index++);
			}
			catch (e) {}
		});
	} catch (e) {}
	return this;
};
var $A = function(iterable) {
	if (!iterable) return [];
	if (iterable.toArray) {
		return iterable.toArray();
	} else {
		var results = [];
		for (var i = 0, length = iterable.length; i < length; i++)
			results.push(iterable[i]);
		return results;
	}
};
var $ = function(element) {
	if (typeof element == 'string') element = document.getElementById(element);
	return element;
};
var $T = function(tagName,className,parentElement) {
	if( typeof parentElement == 'undefined' || parentElement == null ) parentElement = document;
	if( typeof tagName == 'undefined' || tagName == null ) tagName = '*';
	var eList = $A(parentElement.getElementsByTagName(tagName));
	if( typeof className == 'undefined' || className == null ) return eList;
	var t = new Array();
	for( var i=0; i < eList.length; i++ ) {
		if( hasClass(eList[i],className) ) {
			t.push(eList[i]);
		}
	}
	return t;
};
/**
*   标签页函数
*   tabContainer 容器id
*   eventType事件类型，默认为单击事件click
*   initial 默认选中的序号，默认值为0，选中第一个
*   eventFunction 触发事件
*   activeClass 激活状态的class，默认为current
*   normalClass 未激活状态的class，默认为空
*   setHeight 是否根据内容自动设置高度
*/
var s2uTab = function(tabContainer, eventType, initial, activeClass, normalClass, setHeight , delay ){
	if (typeof tabContainer == 'string') tabContainer = $(tabContainer);
	if( typeof tabContainer == 'undefined' || !tabContainer ) return;
	if( typeof initial == 'undefined' || initial == null ) initial = 0;
	if( typeof eventType == 'undefined' || eventType == null ) eventType = 'click';
	if( typeof delay == 'undefined' || delay == null ) delay = 0;
	if( typeof activeClass == 'undefined' || activeClass == null ) {
		activeClass = 'current';
	}
	if( typeof normalClass == 'undefined' || normalClass == null ) {
		normalClass = '';
	}
	if( typeof setHeight == 'undefined' ) setHeight = true;
	eventType = 'on' + eventType;
	var dts = tabContainer.getElementsByTagName('dt');
	var dds = tabContainer.getElementsByTagName('dd');
	var pp = initial;
	removeClass(dts[pp], normalClass);
	addClass(dts[pp], activeClass);
	if( setHeight == true ) {
		var dth = 0;
		for( var i=0; i< dts.length; i++ ) {
			dth = dts[i].offsetHeight > dth ? dts[i].offsetHeight : dth;
		}
		var ddh = dds[pp].offsetHeight;
		tabContainer.style.height = dth + ddh + 'px';
	}

	for (var i = 0; i < dts.length; ++i){
		if (i != initial) dds[i].style.display = 'none';
		$A(dts[i].getElementsByTagName('*')).each(
			function(e) {
				e.onfocus = function() {
					this.blur();
				};
			}
		);
		(function(){
			var p = i;
			var time = null;
			dts[p][eventType] = function(){
				var foo = function() {
					if (p != pp){
						removeClass(dts[p], normalClass);
						addClass(dts[p], activeClass);
						removeClass(dts[pp], activeClass);
						addClass(dts[pp], normalClass);
						dds[p].style.display = 'block';
						dds[pp].style.display = 'none';
						if( setHeight == true ) {
							ddh = dds[p].offsetHeight;
							tabContainer.style.height = dth + ddh + 'px';
						}
					}
					pp = p;
					return false;
				};
				if( eventType == 'onmouseover' && delay > 0 ) {
					clearTimeout(time);
					time = window.setTimeout(foo,delay);
				}
				else {
					foo();
				}
			};
			if( eventType == 'onmouseover' && delay > 0 ) {
				var op = 'onmouseout';
				dts[p][op] = function(){
					clearTimeout(time);
				};
			}
		})();
	}
	if (ielt7){
		for (var i = 1; i < dts.length; ++i){
			tabContainer.insertBefore(dts[i], dds[0]);
		}
		if (dts[initial + 1]) dts[initial + 1][eventType]();
		else dts[initial - 1][eventType]();
		dts[initial][eventType]();
	}
};
var s2uTabs = function(nodes, eventType, initial, activeClass, normalClass, setHeight , delay ){
	for( var i=0; i < nodes.length; i++ ) {
		s2uTab(nodes[i], eventType, initial, activeClass, normalClass, setHeight , delay );
	}
};
/**
*   搜索Nav
*   navContainer 容器id
*   eventType事件类型，默认为单击事件click
*   initial 默认选中的序号，默认值为0，选中第一个
*   eventFunction 触发事件
*   activeClass 激活状态的class，默认为current
*   normalClass 未激活状态的class，默认为空
*/
var setNav = function(navContainer, eventType, initial, eventFunction, activeClass, normalClass ){
	if (typeof navContainer == 'string') navContainer = $(navContainer);
	if( typeof navContainer == 'undefined' || !navContainer ) return;
	if( typeof eventType == 'undefined' || eventType == null ) eventType = 'click';
	if( typeof initial == 'undefined' || initial == null ) initial = 0;
	eventType = 'on' + eventType;
	if( typeof activeClass == 'undefined' || activeClass == null ) {
		activeClass = 'current';
	}
	if( typeof normalClass == 'undefined' || normalClass == null ) {
		normalClass = '';
	}
	if( typeof eventFunction != 'function' ) {
		eventFunction = function(index) {};
	}
	var lis = navContainer.getElementsByTagName('li');
	var pp = initial;
	removeClass(lis[pp], normalClass);
	addClass(lis[pp], activeClass);
	eventFunction(pp);
	for (var i = 0; i < lis.length; ++i){
		$A(lis[i].getElementsByTagName('*')).each(
			function(e) {
				e.onfocus = function() {
					this.blur();
				};
			}
		);
		if (i != initial) {
			removeClass(lis[i], activeClass);
		}
		(function(){
			var p = i;
			lis[p][eventType] = function(){
				if (p != pp){
					removeClass(lis[p], normalClass);
					addClass(lis[p], activeClass);
					removeClass(lis[pp], activeClass);
					addClass(lis[pp], normalClass);
					eventFunction(p);
				}
				pp = p;
				return false;
			};
		})();
	}
};

/**
*  公告滚动
*  container 容器id
*  row  显示行数，默认2行
*  delay 滚动间隔，默认10秒，10000ms
*  speed 滚动速度，默认30ms
*/
var setNoticeList = function(container,row,delay,speed,tagName,cols) {
	if (typeof container == 'string') container = $(container);
	if( typeof container == 'undefined' || !container ) return;
	if( typeof row == 'undefined' || row == null ) row = 2;
	if( typeof delay == 'undefined' || delay == null ) delay = 10000;
	if( typeof speed == 'undefined' || speed == null ) speed = 30;
	if( typeof tagName == 'undefined' || tagName == null ) tagName = 'p';
	if( typeof cols == 'undefined' || cols == null ) cols = 1;
	var ps = container.getElementsByTagName(tagName);
	var length = ps.length;
	var cheight = length > 0 ? ps[0].offsetHeight : 0;
	var movetime = null;
	var time = null;
	var pause = false;
	container.onmouseover=function(){pause=true;};
	container.onmouseout=function(){pause=false;};
	var show = function(delay,d) {
		clearInterval(movetime);
		clearTimeout(time);
		var top = 0;
		if( typeof d == 'undefined' || d == null || d > 0) {
			d = 1;
		}
		else {
			d = -1;
		}
		var start = function() {
			movetime = setInterval(move, speed);
		};
		var setNode = function(d) {
			var plist = $A(container.getElementsByTagName(tagName));
			if( tj = plist.length % cols ) {
				for(var temp=0;temp<cols-tj;temp++) container.appendChild(document.createElement(tagName));
			}
			if( d == 1 ) {
				var i = 0;
				var t = container.scrollTop;
				while( t >= cheight ) {
					t -= cheight;
					for(var temp=0;temp<cols;temp++) {
						container.appendChild(plist[i+temp]);
					}
					i++;
				}
				container.scrollTop = 0;
			}
			else {
				for( var t = 0 ; t < length/cols - row; t++ ) {
					for(var temp=0;temp<cols;temp++) container.insertBefore(plist[(length-t*cols-temp-1)%length], plist[(length-t*cols-temp)%length]);
				}
				container.scrollTop = cheight * (plist.length/cols - row);
			}
		};
		var move = function() {
			if (pause) return;
			var plist = $A(container.getElementsByTagName(tagName));
			container.scrollTop += 2 * d;
			var mod = container.scrollTop % cheight;
			if( mod ==  0 || mod ==  1 || mod ==  -1 ) {
				clearInterval(movetime);
				if( d == 1 ) {
					for(var temp=0;temp<cols;temp++) container.appendChild(plist[temp]);
					container.scrollTop = 0;
				}
				else {//alert(plist[length-1].innerHTML);
					for(var temp=0;temp<cols;temp++) container.insertBefore( plist[length - 1 - temp ] , plist[length - temp % length] );
					container.scrollTop = cheight * (plist.length/cols - row);
				}
				time = setTimeout(start, delay);
			}
		};
		setNode(d);
		start();
	};
	show(delay);
	var down = function() {
		show(delay);
	};
	var up = function() {
		show(delay,-1);
	};
	$A(container.parentNode.getElementsByTagName('a')).each(
		function(a) {
			if( hasClass(a,'up') ) {
				a.onclick = up;
				a.onfocus = function(){this.blur();};
			}
			if( hasClass(a,'down') ) {
				a.onclick = down;
				a.onfocus = function(){this.blur();};
			}
		}
	);
};
var setNoticeLists = function(containers,row,delay,speed,tagName,cols) {
	for( var i=0; i < containers.length; i++ ) {
		setNoticeList(containers[i],row,delay,speed,tagName,cols);
	}
}
function checkEmail(email) {
	var emailPattern = /^[\w\._\-]+@[\-\w\.]+$/;
	return emailPattern.test(email);
}
function checkSubForm(form) {
	var emailPattern = /^[\w\._\-]+@[\w\.]+$/;
	if(!form.email||!(checkEmail(form.email.value))){
		alert('邮箱格式不正确');
		return false;
	}
	return true;
}
function checkSub(actionType,obj) {
	if( obj.form.actionType ) {
		obj.form.actionType.value = actionType;
		return true;
	}
	return false;
}
var eventFunction = function(index) {
	var clist = ['index','info','bbs','product','resource','vendor'];
	var slist = ['','IRS','BBS','PROD','RESD','VEND'];
	if( document.cForm && index < clist.length && document.cForm.s && document.cForm.content ) {
		document.cForm.s.value = slist[index];
		document.cForm.content.value = clist[index];
	}
};
window.onload = function() {
	s2uTabs($T('dl','tab'), 'mouseover', null, 'active', 'normal', true,150);
	s2uTabs($T('dl','rtab'), 'mouseover', null, 'active', 'normal', false,150);
	setNav('searchnav', 'click', 1, eventFunction);
	setNoticeList('noticelist',2,5000);
	setNoticeLists($T('ul','provide_list',$('side_provide') ),3,1000,30,'li',2);
};