
//初始化
{	
	var e__ua = navigator.userAgent;
	var $IE = (navigator.appName == "Microsoft Internet Explorer");
	var $IE5 = $IE && (e__ua.indexOf('MSIE 5') != -1);	
	var $Opera = e__ua.indexOf('Opera') != -1;

	
	if ($Opera) {
		$IE = true;		
	}
	if ($IE5) {
	        $IE = true;	      
	}
}

{
	String.prototype.getQueryString = function(name)
	{
	  var reg = new RegExp("(^|&|\\?)"+ name +"=([^&]*)(&|$)"), r;
	  if (r=this.match(reg)) return unescape(r[2]); return null;
	}



		var oScript = document.getElementsByTagName("script");
		var b ="";
		
		for (var i=0;i<oScript.length;i++ )
		{
			
			if (oScript[i].src.toLowerCase().indexOf('tv.js')>=0)
			{			 

			   b = oScript[i].src;
			}
		}


       var ptype = b.getQueryString("ptype");
       var pfn =   b.getQueryString("fn");
	   var prid =  b.getQueryString("rid");
	   var pw =    b.getQueryString("w");
	   var ph =    b.getQueryString("h");
   	   var pipos = b.getQueryString("ipos");
	   var pcid  = b.getQueryString("cid");
	   var skinID =b.getQueryString("skinID");

}


function $_t(root,tag,id){
	var ar=root.getElementsByTagName(tag);
	for (var i=0;i<ar.length;i++){
		if (ar[i].id==id) return ar[i];
	}
	return null;
}
function _(root){
	
	var ids=arguments;
	var i0=0;
	
	if (typeof(root) == 'string') root = document;
	else i0=1;
	
	for (var i=i0;i<ids.length;i++){
		var s=root.getElementsByTagName("*");
	
		var has=false;
		for (var j=0;j<s.length;j++){
			if (s[j].id==ids[i]){
				root=s[j];
				has=true;
				break;
			}
		}
		if (!has) return null;
	}
	return root;
}


function $dele(o,fn,rv){
	
	var r = function (){
		
		var s=arguments.callee;
		
		var args = [];
		for (var i=0;i<s.length;i++) args[i]=s[i];
		var argStr = args.join(",");
		if (argStr.length > 0) argStr=","+argStr;
		
		var callStr="s.thiz[s.fn]("+argStr+")";
		var v=eval(callStr);
		
		
		if (s.rv!=null) {
			return s.rv;
		}	else {
			return v;
		}
	}
	
	r.thiz=o;
	r.fn=fn;
	r.rv=rv;
	
	return r;
}

function $ge(e){
	if (e!=null) return e;
	if ($IE) {
		return window.event;
	}	else return e;
}

/**
* get event for a element;
*/
function $gte(e,ev){
	if (!e.getElementById) e=e.ownerDocument;
	if ($IE5) {
		return ev!=null ? ev : e.parentWindow.event;
	} else {
		return ev;
		throw new Error("this method can only execute in IE");
	}
}
function $addEL(n,e,l,b){
	
	if ($IE){
		if (n["$__listener_"+e]==null){
			var lst=function (e){
				
				var f=arguments.callee;
				var ar=f.fList;
				
				e=$ge(e);
				for (var i=0;i<ar.length;i++){					
					ar[i](e);
				}
			}
			lst.fList=[];			
			n["$__listener_"+e]=lst;
			n["on"+e]=n["$__listener_"+e];
			
		}
		var fList=n["$__listener_"+e].fList;
		fList[fList.length]=l;
		
	} else {
		n.addEventListener(e,l,b);
	}
}
function $cancelEvent (e) {
	if ($IE) {
		e.returnValue = false;
		e.cancelBubble = true;
	} else
		e.preventDefault();
};
function $cpAttr(o,p){
	for (var i in p){
		var s=p[i];
		o[i]=s;
	}
	return o;
}
function $getValue(v,d){
	return v==null ? d : v;
}
var $gv=$getValue;

var $dom={
	parseInt : function(s) {
		if (s == null || s == '' || typeof(s)=='undefined')
			return 0;

		return parseInt(s);
	},
	getClientSize : function(n){
		if ($IE){
			//ts("this is ie");
			var s= {x:n.clientLeft,y:n.clientTop};
			s.l=s.x;
			s.t=s.y;
			s.r=n.clientRight;
			s.b=n.clientBottom;
			
			s.w=n.clientWidth;
			s.h=n.clientHeight;
			
			//tr("calculated client size");
			
			return s;
		} else {
			var t=n.style;
			if (t.borderLeftWidth.length==0 || t.borderTopWidth.length==0 || t.borderRightWidth.length==0 || t.borderBottomWidth.length==0){
				
				var l=n.offsetWidth;
				t.borderLeftWidth="0px";
				l-=n.offsetWidth;
				
				var r=n.offsetWidth;
				t.borderRightWidth="0px";
				r-=n.offsetWidth;
				
				var o=n.offsetHeight;
				t.borderTopWidth="0px";
				o-=n.offsetHeight;
				
				var b=n.offsetHeight;
				t.borderBottomWidth="0px";
				b-=n.offsetHeight;
				
				t.borderLeftWidth=l+"px";
				t.borderTopWidth=o+"px";
				t.borderRightWidth=r+"px";
				t.borderBottomWidth=b+"px";
				
				var s={l:l,r:r,t:o,b:b,x:l,y:o};
				
				
				return s;
			} else {
				var s= {
						x: this.parseInt(n.style.borderLeftWidth),
						y: this.parseInt(n.style.borderTopWidth),
						r: this.parseInt(n.style.borderRightWidth),
						b: this.parseInt(n.style.borderBottomWidth)
					};
				s.l=s.x;
				s.t=s.y;
				return s;
			}
		}
	},
	
	
	
	getSize : function (n,withMargin){
		var c={
			x : n.offsetWidth != null ? n.offsetWidth : 0,
			y : n.offsetHeight != null ? n.offsetHeight : 0
		};
		
		if (withMargin) {
			var m=this.getMargin(n);
			c.x+=m.l+m.r;
			c.y+=m.t+m.b;
		}
		return c; 
	},
	
	setSize : function(elmt,x,y,withMargin){
		if ($IE){
			if (withMargin){				
				var m=this.getMargin(elmt);
				x-=m.l+m.r;
				y-=m.t+m.b;				
			}			
			elmt.style.width=x;			
			elmt.style.height=y;			
		} else {
			var clientSize=this.getClientSize(elmt);
			var dx=clientSize.l+clientSize.r;
			
			var dy=clientSize.t+clientSize.b;
			
			elmt.style.width=x-dx+"px";
			elmt.style.height=y-dy+"px";
		}
	},
	
	getPosition : function (elmt,withMargin){
		var c;
		
		c={
			x:elmt.offsetLeft,
			y:elmt.offsetTop
		};
		if (withMargin){
			var m=this.getMargin(elmt);
			c.x-=m.l;
			c.y-=m.t;
		}
		
		return c;
	},
	setPosition : function (elmt,x,y,withMargin){
		if (withMargin){
		}	
		elmt.style.left=x+"px";
		elmt.style.top=y+"px";
	},
		
	
	setAlpha : function (n,a){
		return;
		n.style.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity="+a*100+");";
		n.style.opacity = a;
		n.style.MozOpacity = a;
	}
	
}
var $motion={
	smooth : function (s, e, t){
		return (e - s) * t + s;
	}
}


function PopUp(id, config){
	this.id=id;
	
	var c = this.config = config;
	c.width 	= $gv(c.width,300);
	c.height 	= $gv(c.height,200);
	c.bottom 	= $gv(c.bottom,0);
	c.right 	= $gv(c.right,20);
	c.display 	= $gv(c.display,true);
	c.contentUrl= $gv(c.contentUrl,"");
	c.motionFunc= $gv(c.motionFunc,$motion.smooth);
	
	var t=c.time;
	t.slideIn	= $gv(t.slideIn,10);
	t.hold		= $gv(t.hold,10);
	t.slideOut	= $gv(t.slideOut,10);
	
	t.slideIn 	*= 1000;
	t.hold		*= 1000;
	t.slideOut	*= 1000;
	
	this.container = document.body;
	this.popup = null;
	this.content = null;
	this.switchButton = null;
	
	this.moveTargetPosition = 0;
	this.startMoveTime = null;
	this.startPosition = null;
	
	this.status = PopUp.STOP;
	this.intervalHandle = null;
	
	this.mm = "max";
	
	this.imgMin = "inc/images/small.gif";
	this.imgMax = "inc/images/large.gif";

	if (ptype==15)
	{
		this.imgMin = "http://www.eootv.com/player/spacer.gif";
	}

}

PopUp.STOP = 0;
PopUp.MOVE_DOWN = 1;
PopUp.MOVE_UP = 2;
PopUp.SWITCH_TO_MIN = PopUp.MOVE_DOWN | 4;
PopUp.SWITCH_TO_MAX = PopUp.MOVE_UP | 8;

var __o={
	create : function (){
		
		var doc=document;
		var c=this.config;	
		
		var p = this.popup = doc.createElement("div");
		this.container.appendChild(p);
		
		p.id=this.id;
		p.style.cssText="position:absolute;\
						z-index:9000;\
						overflow:hidden;";
		$dom.setSize(p, c.width, c.height);
		
		
		
		var t = this.content = doc.createElement("div");
		p.appendChild(t);
		
		t.id = this.id+"_content";
		t.style.cssText="position:absolute;\
						z-index:1;\
						overflow:hidden;";
		$dom.setSize(t, c.width, c.height);
		
		$dom.setPosition(t, 0, c.height);//hide it at first
		
		
		
		t.innerHTML = "<a id='closeButton' href='#'></a>"+
									"<a id='switchButton' href='#'></a>"+
					  			"<iframe id='"+this.id+"_content_iframe' src="+c.contentUrl+" frameborder=0 scrolling=no width='100%' height='100%'></iframe>";
		
		
		var sBtn = this.switchButton = $_t(t,'a',"switchButton");


		if (ptype=='15')
		{
			sBtn.style.backgroundImage = 'url(http://www.eootv.com/player/spacer.gif)';
		}
		else
		{
					sBtn.style.cssText='position:absolute;\
							z-index:2;\
							\
							font-size:0px;\
							line-height:0px;\
							\
							top:2px;\
							width:15px;\
							height:15px;\ ';
		}
   		sBtn.style.backgroundImage = 'url(inc/images/small.gif)';

		sBtn.style.left = pw - 50 +"px";
	
		$addEL(sBtn,"click",$dele(this,"switchMode"),true);
		$addEL(sBtn,"click",$cancelEvent,true);
		
		
		var btn = $_t(t,'a',"closeButton");




		btn.style.cssText='position:absolute;\
							z-index:2;\
							\
							font-size:0px;\
							line-height:0px;\
							\
							top:2px;\
							width:15px;\
							height:15px;\ ';

		btn.style.backgroundImage = 'url(inc/images/close.gif)';

		btn.style.left = pw - 30 + "px";
		
		$addEL(btn,"mouseover",function (e){
										 	$dom.setAlpha(this,0.4);
										 },true);
		
		$addEL(btn,"mouseout",function (e){
										$dom.setAlpha(this,1);
										 },true);
										 
		
		
		$addEL(btn,"click",$dele(this,"hide"),true);
		$addEL(btn,"click",$cancelEvent,true);
		
		var container=$IE ? document.body : document.documentElement;
		
		$addEL(document.body,"resize",$dele(this,"onresize"),true);
		
			this.__hackTimer=window.setInterval("__popup.onresize()",50);
		
		
		$addEL(container,"scroll",$dele(this,"onresize"),true);
		
		this.onresize();
		
	},
	
	show : function (){
		
		if (!this.config.display) return;
		
		this.moveTargetPosition = 0;
		this.status = PopUp.MOVE_UP;
		this.startMove();
	},
	
	hide : function (){
		
		this.moveTargetPosition = this.config.height;
		this.status = PopUp.MOVE_DOWN;
		this.startMove();
		this.popup.innerHTML = '';
	},
	
	minimize : function (){
		this.mm = "min";
		this.moveTargetPosition = this.config.height - 28;
		this.status = PopUp.SWITCH_TO_MIN;
		this.startMove();
		
		var s = this.switchButton.style;
		var bg = s.backgroundImage;
		
		if (bg.indexOf(this.imgMin) > -1) {
			bg = bg.replace(this.imgMin,this.imgMax);
			s.backgroundImage = bg;			
		}
	},
	
	maximize : function (){
		if (!this.config.display) return;
		
		this.mm = "max";
		this.moveTargetPosition = 0;
		this.status = PopUp.SWITCH_TO_MAX;
		this.startMove();
		
		
		var s = this.switchButton.style;
		var bg = s.backgroundImage;
		
		if (bg.indexOf(this.imgMax) > -1) {
			bg = bg.replace(this.imgMax,this.imgMin);
			s.backgroundImage = bg;			
		}
	},
	
	delayHide : function (){		
		window.setTimeout("__popup.hide()",this.config.time.hold);
	},
	
	delayMin : function (){
		window.setTimeout("__popup.minimize()",this.config.time.hold);
	},
	
	switchMode : function (){
		if (this.mm == "min"){
			this.maximize();
		} else {
			this.minimize();
		}
	},
	
	//开始移动
	startMove : function (){
		this.stopMove();
		
		this.intervalHandle = window.setInterval("__popup.move()",100);
		
		this.startMoveTime = new Date().getTime();

		// modify by Naola
		if ((this.config.ctype == '1') || (this.config.ctype == '2'))
			this.startPosition = 0;
		else
			this.startPosition = $dom.getPosition(this.content).y;
	},
	
	stopMove : function (){
		if (this.intervalHandle != null) window.clearInterval(this.intervalHandle);
		this.intervalHandle = null;
	},
	
	//移动
	move : function (){
		
		
		var t = new Date().getTime();
		t = t - this.startMoveTime;
		
		var total = this.status & PopUp.MOVE_UP ? 
					this.config.time.slideIn : 
					this.config.time.slideOut;
		
		var y = this.config.motionFunc(this.startPosition, this.moveTargetPosition, t/total);
		this.content.style.top = y + "px";
		
		if (t >= total){
			this.onFinishMove();
		}
	},
	// 完成移入操作
	onFinishMove : function (){
		this.stopMove();
		this.content.style.top = this.moveTargetPosition + "px";
		
		if (this.status == PopUp.MOVE_UP && this.config.time.hold > 0 ){
			this.delayMin();
		} else {
			if (this.__hackTimer!=null) window.clearInterval(this.__hackTimer);
		}
		this.status = PopUp.STOP;
	},
	
	onresize : function (){
		var c=this.config;

		var et = (document.documentElement && document.documentElement.scrollTop) ? document.documentElement.scrollTop : document.body.scrollTop;
		var ey = (document.documentElement && document.documentElement.clientHeight) ? document.documentElement.clientHeight : document.body.clientHeight;
		var ew = (document.documentElement && document.documentElement.clientWidth) ? document.documentElement.clientWidth : document.body.clientWidth;
		var el = (document.documentElement && document.documentElement.scrollLeft) ? document.documentElement.scrollLeft : document.body.scrollLeft;

        if (!$IE && (document.compatMode!='CSS1Compat'))
        {
				et = document.body.scrollTop;
				ey = document.body.clientHeight;
				ew = document.body.clientWidth;
				el = document.body.scrollLeft;
        }

 		var dx=ew + el;
		var dy=ey + et;
		
		
		var x = dx - c.right - c.width ;
		var y = dy - c.bottom - c.height ;
		
		switch (c.ctype)
		{
		case '1':
			x = 0;
		    y = 0;
			break;
		case '2':
			y = 0;
			break;
		case '3':
			x = 0;
			break;
		case '4':
			break;	
		case '5':
			x = x/2;
			break;	
		case '6':
			x = x/2;
		    y = 200;
			break;				
		}


		$dom.setPosition(this.popup, x, y);	
	}
}

$cpAttr(PopUp.prototype,__o);

/*---------------------------------------*/

function readCookie(name)
{
  var cookieValue = "";
  var search = name + "=";
  if(document.cookie.length > 0)
  { 
    offset = document.cookie.indexOf(search);
    if (offset != -1)
    { 
      offset += search.length;
      end = document.cookie.indexOf(";", offset);
      if (end == -1) end = document.cookie.length;
      cookieValue = unescape(document.cookie.substring(offset, end))
    }
  }
  return cookieValue;
}

function writeCookie(name, value, hours)
{
  var expire = "";
  if(hours != null)
  {
    expire = new Date((new Date()).getTime() + hours * 3600000);
    expire = "; expires=" + expire.toGMTString();
  }
  document.cookie = name + "=" + escape(value) + expire + ";path=/";
}

function e__job(){

	
//ptype 弹出播放器有4种.1.单个视频播放器 tvs 2，不带直播的播放器 tvnolive 3，带直播的播放器tvlive  4.直播客户端 live 5.方块小电视直播


		var pUrl = '';

		switch (ptype)
		{
		case '1':
			pUrl = 'inc/tvs.html'
			break;
		case '2':
			pUrl = 'http://www.eootv.com/player/tvnolive.html'
			break;
		case '3':
			pUrl = 'http://www.eootv.com/player/tvlive.html'			
			break;
		case '4':
			pUrl = 'http://www.eootv.com/player/live.html'
			break;		
		case '5':
		   pUrl = 'http://www.eootv.com/player/fanglive.html'
			break;
		case '6':
		   pUrl = 'http://www.eootv.com/player/tvredlist.html'
		   break;
		case '7':
		   pUrl = 'http://www.eootv.com/player/tvbluelist.html'
		   break;
		case '8':
		   pUrl = 'http://www.eootv.com/player/tvredlive.html'
		   break;
		case '9':
		   pUrl = 'http://www.eootv.com/player/tvbluelive.html'
		   break;
		case '10':
		   pUrl = 'http://www.eootv.com/player/redlive.html'
		   break;
		case '11':
		   pUrl = 'http://www.eootv.com/player/bluelive.html'
		   break;
		case '12':
		   pUrl = 'http://www.eootv.com/player/redfangkuai.html'
		   break;
		case '13':
		   pUrl = 'http://www.eootv.com/player/tvred.html'
		   break;
		case '14':
		   pUrl = 'http://www.eootv.com/player/tvblue.html'
		   break;
		case '15':
		   pUrl = 'http://www.eootv.com/player/nokuang.html'
		   break;
		case '16':
		   pUrl = 'http://www.eootv.com/player/xuancaifangkuang.html'
		   break;
		}


     pUrl += '?fn=' + pfn + '&rid='+ prid + '&cid=' + pcid + '&skinID=' + skinID;


	var cfg={
		width 			: pw,
		height 			: ph,
		
		bottom			: 0,
		right			: 1,
	
		ctype           : pipos,
		
		display			: true,
			
		contentUrl		: pUrl,
		
		time : {
			slideIn			: 1,
			hold				: 6000,
			slideOut		: 1
		}					
	}
	
	var displayTimeList = ["7+7"];
	
	var displayMode = "eachTime";
	
	var cookieName="eootv_popup_next_display_time";
	
	
	
	var hours={};
	var delays=[];
	for (var i=0;i<displayTimeList.length;i++) {
		var o = displayTimeList[i];
		var ar = o.split("+");
		var t = parseInt(ar[0]);
		for (var m=0;m<ar.length-1;m++){
		    ar[m]=ar[m+1];
		}		
		hours[t]=true;
		for (var j=0;j<ar.length;j++){
			hours[t + parseInt(ar[j])]=true;
		}		
	}
	displayTimeList=[];
	for (var i in hours){
		var s = parseInt(i);
		if (isNaN(s)) continue;
		displayTimeList[displayTimeList.length]=s;
	}
	displayTimeList = displayTimeList.sort();
	
	
	var pp = new PopUp("xp", cfg);
	window.__popup=pp;
	pp.create();
	
	
	var n=readCookie(cookieName);	
	
	if (displayMode=="eachTime") 
		pp.show();
	else {
		var tm=new Date().getTime();
		if (n==null || tm>n) {
			pp.show();
			
			//get next display time
			var hr=new Date().getHours();
			var f = 60*60*1000;
			var l = displayTimeList.concat(), len = l.length;
			for (var i = 0; i < len; i++) l[len + i] = l[i] + 24;
			for (var i = 0; i < l.length && hr >= l[i]; i++);
			
			var dt = new Date();
			dt.setHours(l[i] > 23 ? l[i] - 24 : l[i]);
			var nextTime = dt.getTime();
			if (l[i] > 23) nextTime += f * 24 ;
			
			writeCookie(cookieName, nextTime, 24);
		}
	}
}

function e__doit(){
	if (document.body == null) {		
		window.setTimeout(__e_doit,500);
		return;
	}
	
	e__job();
}



if(!window.attachEvent && window.addEventListener)
{
  Window.prototype.attachEvent = HTMLDocument.prototype.attachEvent=
  HTMLElement.prototype.attachEvent=function(en, func, cancelBubble)
  {
    var cb = cancelBubble ? true : false;
    this.addEventListener(en.toLowerCase().substr(2), func, cb);
  };
  Window.prototype.detachEvent = HTMLDocument.prototype.detachEvent=
  HTMLElement.prototype.detachEvent=function(en, func, cancelBubble)
  {
    var cb = cancelBubble ? true : false;
    this.removeEventListener(en.toLowerCase().substr(2), func, cb);
  };
}


window.attachEvent ('onload', e__doit);

