ycn=window.ycnui||{};//如果有对象ycnui则赋值，没有则=new Object{}

ycn.Common=new function(){
	this.getEl=function(i){
		if(!document.getElementById)
			return false;
		if(typeof i==="string"){
			return document.getElementById(i);
		}else{return i;}
	};
	this.getElByClassName=function(t,n,s,el){
		var el=(el)?el:document;
		var itm=el.getElementsByTagName(t);
		var num=1;
		for(i=0;i<itm.length;i++){
			if(itm[i].className===n&&s===num){
				return itm[i];
			}else if(itm[i].className===n){num++;}
		}
		return false;
	};
};
//ycn=window.ycn||{};
ycn.Event={
	addEvent:function(obj,evType,fn){if(obj.addEventListener){obj.addEventListener(evType,fn,false);return true;}
		else if(obj.attachEvent){var r=obj.attachEvent("on"+evType,fn);ycn.EventCache.add(obj,evType,fn);return r;}
		else{return false;}},
	stopEvent:function(e){
		if(e&&e.cancelBubble!=null){e.cancelBubble=true;e.returnValue=false;}
		if(e&&e.stopPropagation&&e.preventDefault){
			e.stopPropagation();
			e.preventDefault();
		}
		return false;
		}
};
ycn.EventCache=function(){
	var listEvents=[];
	return{
		listEvents:listEvents,
		add:function(node,sEventName,fHandler,bCapture){
			listEvents[listEvents.length]=arguments;},
			flush:function(){
				var i,item;
				for(i=listEvents.length-1;i>=0;i=i-1){
					item=listEvents[i];
					if(item[0].removeEventListener){
						item[0].removeEventListener(item[1],item[2],item[3]);
					};
					if(item[1].substring(0,2)!="on"){
						item[1]="on"+item[1];};
						if(item[0].detachEvent){
							item[0].detachEvent(item[1],item[2]);
						};
						item[0][item[1]]=null;
					};
				}};
			}();

ycn.Event.addEvent(window,"unload",ycn.EventCache.flush);//刷新页面时动作
slidePlayer.prototype.container=null;
slidePlayer.prototype.imageList=null;
slidePlayer.prototype.width=0;
slidePlayer.prototype.height=0;
slidePlayer.prototype.currentNum=1;
slidePlayer.prototype.playTimer=null;
slidePlayer.prototype.loopTimer;
slidePlayer.prototype.intervalTime=50;
slidePlayer.prototype.waiting=5000;//循环时间
slidePlayer.prototype.isPause=true;
slidePlayer.prototype.isPlaying=false;
slidePlayer.prototype.endPlay=new Function;
slidePlayer.prototype.initial=new Function;
slidePlayer.prototype.getCurrnetNum=function(){return this.currentNum;};

slidePlayer.prototype.goToPlay=function(n){//鼠标放到数字编号上时
	var o=this;
	if(o.playTimer||o.playTimer!=null){window.clearInterval(o.playTimer);}
	if(o.loopTimer){window.clearTimeout(o.loopTimer);}
	var d;
	for(var i=0;i<o.imageList.length;i++){
		o.imageList[i].style.display="none";
		if(o.imageList[i].parentNode&&o.imageList[i].parentNode.tagName.toLowerCase()=='a'){
			d=o.imageList[i].parentNode;
		}else{
			d=o.imageList[i];
		}
		d.style.zIndex="1";
		d.style.filter="alpha(opacity=100)";
		d.style.MozOpacity=1;
		d.style.opacity=1;
	}
	o.isPlaying=false;
	o.imageList[o.currentNum-1].style.display="block";
	o.play(n);
};
slidePlayer.prototype.play=function(num){
	var o=this;
	if(o.isPlaying){return;}
	if(num){var nn=num;var on=o.currentNum;}else{var nn=o.currentNum+1;var on=o.currentNum;}
	if(nn>o.imageList.length){nn=1;}
	if(on==nn){o.loopTimer=window.setTimeout(function(){o.play();},o.waiting);return;}
	if(o.playTimer||o.playTimer!=null){window.clearInterval(o.playTimer);}
	if(o.loopTimer){window.clearTimeout(o.loopTimer);}
	var n_el=(o.imageList[nn-1].parentNode&&o.imageList[nn-1].parentNode.tagName.toLowerCase()=='a')?o.imageList[nn-1].parentNode:o.imageList[nn-1];
	var o_el=(o.imageList[on-1].parentNode&&o.imageList[on-1].parentNode.tagName.toLowerCase()=='a')?o.imageList[on-1].parentNode:o.imageList[on-1];
	n_el.style.zIndex=1;
	o_el.style.zIndex=10;
	o_el.style.filter="alpha(opacity=100)";o_el.style.MozOpacity=1;
	o_el.style.opacity=1;n_el.style.filter="alpha(opacity=100)";n_el.style.MozOpacity=1;
	n_el.style.opacity=1;o.imageList[nn-1].style.display="block";
	o.isPlaying=true;
	var n=100;
	var _is_start=false;
	var anim=function(){if(o.isPause){o_el.style.filter="alpha(opacity=100)";o_el.style.MozOpacity=1;o_el.style.opacity=1;return;}
	n-=20;_is_start=true;
	if(n<=0){
		o_el.style.filter="alpha(opacity=0)";
		o_el.style.MozOpacity=0;
		o_el.style.opacity=0;
		o_el.style.zIndex=1;
		o.imageList[on-1].style.display="none";
		//o.imageList[on-1].filters[0].Apply();
		//o.imageList[on-1].filters[0].Play();
		o.isPlaying=false;
		o.currentNum=nn;
		o.loopTimer=window.setTimeout(function(){o.play();},o.waiting);
		window.clearInterval(o.playTimer);
		o.endPlay();
	}else{//通过五次渐变实现
		o_el.style.filter="alpha(opacity="+n+")";
		o_el.style.MozOpacity=n/100;
		o_el.style.opacity=n/100;
	}}
o.playTimer=window.setInterval(anim,o.intervalTime);
};

function slidePlayer(con_id){
	var o=this;
	var cont=ycn.Common.getEl(con_id);
	if(!cont){return;}
	var imgs=cont.getElementsByTagName("img");
	if(!imgs||imgs.length<=0){return;}
	o.container=cont;
	o.imageList=imgs;
	var img=new Image();
	try{
		var posArr = new Array()
		for(var i=0,x=0;i<imgs.length;i++){
			posArr[i]=parseInt(imgs[i].src.split("?")[1]);
			posArr[i]=isNaN(posArr[i])?0:posArr[i];
			x+=posArr[i];
		}
		var intRnd=Math.round(Math.random()*x)%x+1;
		random_no=0;
		for(i=0;i<posArr.length;i++){
			if (intRnd - posArr[i] <= 0){
				random_no = i
				break
			}else{
				intRnd = intRnd - posArr[i]
			}
		}
		var temp=imgs[0].src;
		imgs[0].src=imgs[random_no].src;
		imgs[random_no].src=temp;
		temp=imgs[0].parentNode.href
		imgs[0].parentNode.href=imgs[random_no].parentNode.href;
		imgs[random_no].parentNode.href=temp;
		document.getElementById('slide-imgs').style.visibility="visible";
	}catch(e){
			document.getElementById('slide-imgs').style.visibility="visible"
	}

	img.src=imgs[0].src;
	o.width=img.width;
	o.height=img.height;
	o.container.style.width=o.width+"px";
	o.container.style.height=o.height+"px";
	imgs[0].style.display="block";
	o.loopTimer=window.setTimeout(function(){o.play();},o.waiting);
	o.initial();
}

function init_slide(){
	if(!document.getElementById('slide-imgs')) return;
	document.getElementById('slide-imgs').style.visibility="hidden";
	var obj = new slidePlayer('slide-imgs'),slidenum,t_num,li;
	if(obj && ycn.Common.getElByClassName('div','slide_addone',1)){
 		ycn.Common.getEl('slideContent').innerHTML = ycn.Common.getElByClassName('div','slide_addone',1).innerHTML;
	}
	slidenum = ycn.Common.getEl('slidenum');
	if(obj && slidenum){
 		t_num = "<ul class=\"slideNumber\"><li class=\"curSlideNumber\">1</li>";
 		for(var i=1;i<obj.imageList.length; i++){
			t_num +="<li>"+(i+1)+"</li>";
 		}
		t_num += "</ul>"
 slidenum.innerHTML = t_num;
 li = slidenum.getElementsByTagName("li");
 for(var j=0; j<li.length;j++){
 ycn.Event.addEvent(li[j],'mouseover',function(e){
 var el = (navigator.userAgent.toLowerCase().indexOf('msie')>0)? e.srcElement : this;
if(obj.currentNum==parseInt(el.innerHTML))return
 for(var i=0; i<li.length;i++){
 li[i].className = '';
 }
 el.className = "curSlideNumber";
 obj.goToPlay(parseInt(el.innerHTML));
 });
 }
}
		obj.endPlay = function(){
 			if(ycn.Common.getElByClassName('div','slide_addone',obj.getCurrnetNum())){
				ycn.Common.getEl('slideContent').innerHTML = ycn.Common.getElByClassName('div','slide_addone',obj.getCurrnetNum()).innerHTML;
			}
			if(li){
 				for(var i=0; i<li.length;i++){
 					li[i].className = '';
				}
				li[obj.getCurrnetNum()-1].className = 'curSlideNumber';
 			}
		}
		li = slidenum.getElementsByTagName("li");
		obj.isPause = false;
		ycn.Event.addEvent(obj.container,'load',function(){obj.isPause = true;});
		ycn.Event.addEvent(obj.container,'mouseover',function(){obj.isPause = true;});
		ycn.Event.addEvent(obj.container,'mouseout',function(){obj.isPause = false;});
}