if(typeof(efl)!="object"){
	var efl = {}
}

efl.$=function(objId){
	if(!objId){
		throw new Error("efl.$(String objId)parameter need");
	}
	
	if(document.getElementById){
		return eval('document.getElementById("'+objId+'")');
	}else if(document.layers){
		return eval("document.layers['"+objId+"']");
	}else{
		return eval('document.all.'+objId);
	}
}

eflFlash=function(C,v,x,V,c,X,i,O,I,l,o){
	var z=this;
	if(!document.createElement||!document.getElementById){
		return;
	}
	z.id=v?v:"";
	z.classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000";
	z.codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version="+(c?c:"7")+",0,0,0";
	z.width=x;
	z.height=V;
	z.movie=C;
	z.bgcolor=X?X:null;
	z.quality=O?O:"high";
	z.src=z.movie;
	z.pluginspage="http://www.macromedia.com/go/getflashplayer";
	z.type="application/x-shockwave-flash";
	z.useExpressInstall=i?i:null;
	z.xir=(I)?I:window.location;
	z.redirectUrl=l?l:null;
	z.detectKey=o?o:null;
	z.escapeIs=false;
	z.objAttrs={};
	z.params={};
	z.flashVars=[];
	z.flashVarsStr="";
	z.embedAttrs={};
	z.forSetAttribute("id",z.id);
	z.objAttrs["classid"]=z.classid;
	z.forSetAttribute("codebase",z.codebase);
	z.forSetAttribute("width",z.width);
	z.forSetAttribute("height",z.height);
	z.forSetAttribute("movie",z.movie);
	z.forSetAttribute("quality",z.quality);
	z.forSetAttribute("pluginspage",z.pluginspage);
	z.forSetAttribute("type",z.type);
	z.forSetAttribute("bgcolor",z.bgcolor);
}

eflFlash.prototype={
	getFlashHtml:function(){
		var I=this,i='<object ';for(var l in I.objAttrs){
			i+=l+'="'+I.objAttrs[l]+'" ';
		}
		i+='>';
		for(var l in I.params){
			i+='<param name="'+l+'" value="'+I.params[l]+'" /> ';
		}
		if(I.flashVarsStr!=""){
			i+='<param name="FlashVars" value="'+I.flashVarsStr+'" /> ';
		}
		i+='<embed ';
		for(var l in I.embedAttrs){
			i+=l+'="'+I.embedAttrs[l]+'" ';
		}
		i+=' ></embed></object>';
		return i;
	},

	forSetAttribute:function(I,i){
		var l=this;
		I=I.toLowerCase();
		switch(I){
			case "classid":
				break;
			case "pluginspage":
				l.embedAttrs["pluginspage"]=i;
				break;
			case "src":
				l.embedAttrs["src"]=i;
				l.params["movie"]=i;
				break;
			case "movie":
				l.params["movie"]=i;
				l.embedAttrs["src"]=i;
				break;
			case "onafterupdate":
			case "onbeforeupdate":
			case "onblur":
			case "oncellchange":
			case "onclick":
			case "ondblClick":
			case "ondrag":
			case "ondragend":
			case "ondragenter":
			case "ondragleave":
			case "ondragover":
			case "ondrop":
			case "onfinish":
			case "onfocus":
			case "onhelp":
			case "onmousedown":
			case "onmouseup":
			case "onmouseover":
			case "onmousemove":
			case "onmouseout":
			case "onkeypress":
			case "onkeydown":
			case "onkeyup":
			case "onload":
			case "onlosecapture":
			case "onpropertychange":
			case "onreadystatechange":
			case "onrowsdelete":
			case "onrowenter":
			case "onrowexit":
			case "onrowsinserted":
			case "onstart":
			case "onscroll":
			case "onbeforeeditfocus":
			case "onactivate":
			case "onbeforedeactivate":
			case "ondeactivate":
			case "type":
				l.embedAttrs["type"]=i;
				break;
			case "codebase":
				l.objAttrs["codebase"]=i;
				break;
			case "width":
				l.objAttrs["width"]=i;
				l.embedAttrs["width"]=i;
				break;
			case "height":
				l.objAttrs["height"]=i;
				l.embedAttrs["height"]=i;
				break;
			case "align":
				l.objAttrs["align"]=i;
				l.embedAttrs["align"]=i;
				break;
			case "vspace":
				l.objAttrs["vspace"]=i;
				l.embedAttrs["vspace"]=i;
				break;
			case "hspace":
				l.objAttrs["hspace"]=i;
				l.embedAttrs["hspace"]=i;
				break;
			case "class":
				l.objAttrs["class"]=i;
				l.embedAttrs["class"]=i;
				break;
			case "title":
				l.objAttrs["title"]=i;
				break;
			case "accesskey":
				l.objAttrs["accesskey"]=i;
				break;
			case "name":
				l.objAttrs["name"]=i;
				l.embedAttrs["name"]=i;
				break;
			case "id":
				l.objAttrs["id"]=i;
				l.embedAttrs["name"]=i;
				break;
			case "tabindex":
				l.objAttrs["tabindex"]=i;
				break;
			default:
				l.params[I]=l.embedAttrs[I]=i;
		}
	},
	forGetAttribute:function(i){
		var I=this;
		i=i.toLowerCase();
		if(I.objAttrs[i]!=undefined){
			return I.objAttrs[i];
		}else if(I.embedAttrs[i]!=undefined){
			return I.embedAttrs[i];
		}else if(I.embedAttrs!=undefined){
			return I.embedAttrs[i];
		}else{
			return null;
		}
	},
	setAttribute:function(I,i){
		this.forSetAttribute(I,i);
	},
	getAttribute:function(i){
		return this.forGetAttribute(i);
	},
	addVariable:function(I,i){
		var l=this;
		if(l.escapeIs){
			I=escape(I);
			i=escape(i);
		}
		if(l.flashVarsStr==""){
			l.flashVarsStr=I+"="+i;
		}else{
			l.flashVarsStr+="&"+I+"="+i;
		}
		l.embedAttrs["FlashVars"]=l.flashVarsStr;
	},
	getVariable:function(I){
		var o=this,i=o.flashVarsStr;
		if(o.escapeIs){
			I=escape(I);
		}
		var l=new RegExp(I+"=([^\\&]*)(\\&?)","i").exec(i);
		if(o.escapeIs){
			return unescape(RegExp.$1);
		}
		return RegExp.$1;
	},
	addParam:function(I,i){
		this.forSetAttribute(I,i);
	},
	getParam:function(){
		return this.forGetAttribute(name);
	},
	write:function(i){
		var I=this;
		if(typeof i=="string"){
			efl.$(i).innerHTML=I.getFlashHtml();
		}else if(typeof i=="object"){
			i.innerHTML=I.getFlashHtml();
		}
	}
}

if(typeof(LoadMedia)!='function'){
	var LoadMedia = function(ad,div_id){
		var id = 0;
		var max = 99;
		var url = document.location.href;
		var cookiename = 'eflMediaRotator_'+escape(url.substr(0,url.lastIndexOf('.')));
		var timeout = 1440; //24h
		var w = ad.width;
		var h = ad.height;
		var num = ad.num;
		var ary = new Array();
		//eFeedLink Meida
		var nn = 0;
		if(ad.length>0){
			for(var i=0; i<num; i++){
				if(i>ary.length-1){
					ary.push([ad[nn][0], ad[nn][1], ad[nn][2], ""]);
					if(++nn > ad.length-1) nn = 0;
				}
			}
		}else{
			num = ary.length;
		}
		//get Id
		if(typeof(mediaRotatorId)=='undefined'){
			curId = G(cookiename);
			curId = curId==''?Math.floor(Math.random()*max):++curId;
			if(curId>max) curId=0;
			S(cookiename,curId,timeout);
			mediaRotatorId = curId;
		}
		id=mediaRotatorId%num+1;
		//Show AD
		if(id==0 || ary.length==0) return; //If No AD Return
		if(id==-1) id=1; //If Only One AD Also Display it
		var n = id-1;
		var type = ary[n][0].substring(ary[n][0].length-3).toLowerCase();
		var od = document.getElementById(div_id);
		if(type=='swf'){
			var of = new eflFlash(ary[n][0], div_id+'_swf', w, h, "7", "", false, "High");
			of.addParam("wmode", "opaque");
			of.addVariable("adlink", escape(ary[n][1]));
			of.addVariable("adtarget", ary[n][2]);
			of.write(div_id);
		}else if(type=='jpg' || type=='gif' || type=='png' || type=='bmp'){
			od.innerHTML = '<a href="'+ary[n][1]+'" target="'+ary[n][2]+'"><img src="'+ary[n][0]+'" border="0" width="'+w+'" height="'+h+'" /></a>';
		}else if(type=='htm' || type=='tml'){
			od.innerHTML = '<iframe id="ifm_'+div_id+'" frameborder="0" scrolling="no" width="'+w+'" height="'+h+'"></iframe>';
			document.getElementById('ifm_'+div_id).src = ary[n][0];
		}else if(Int(type) || type=='.js'){
			od.style.display = 'none';
			document.write('<script language="javascript" type="text/javascript" src="'+ary[n][0]+'"></scr'+'ipt>');
		}else{ //textlink
			od.style.display = 'none';
			document.write('<a href="'+ary[n][1]+'" target="'+ary[n][2]+'">'+ary[n][0]+'</a>');
		}
		if(ary[n][3]!="" && ary[n][3]!=null){ //ad tracker
			var oImg = new Image();
			oImg.src = ary[n][3];
		}

		function G(N){
			var c=document.cookie.split("; ");
			for(var i=0;i<c.length;i++){
				var d=c[i].split("=");
				if(d[0]==N)return unescape(d[1]);
			}return '';
		};
		function S(N,V,Q){
			var L=new Date();
			var z=new Date(L.getTime()+Q*60000);
			var d = document.domain!=""?("domain="+document.domain+";"):"";
			document.cookie=N+"="+escape(V)+";path=/;"+d+"expires="+z.toGMTString()+";";
		};
		function Int(inTxT){
			var re = /^[\d]*$/;
			return re.test(inTxT);
		}
	};
};

if(typeof(RotatorAD)!='function'){
	var RotatorAD = function(rad,nad,div_id){
		var date = new Date();
		var id = 0;
		var max = 99;
		var url = document.location.href;
		var cookiename = 'eflGlobalRotator_'+escape(url.substr(0,url.lastIndexOf('.')));
		var timeout = 1440; //24h
		var w = rad.width;
		var h = rad.height;
		var num = rad.num;
		var ary = new Array();
		//Filter expired AD
		for(var i=0; i<rad.length; i++){
			var start = strToDate(rad[i][3].replace('<startdate>','').replace('</startdate>',''));
			var expire = strToDate(rad[i][4].replace('<expiredate>','').replace('</expiredate>',''),true);
			if(date>start && date<expire){
				ary.push([rad[i][0], rad[i][1], rad[i][2], rad[i][5]]);
			}
		}
		//eFeedLink AD
		var nn = 0;
		if(nad.length>0){
			for(var i=0; i<rad.num; i++){
				if(i>ary.length-1){
					ary.push([nad[nn][0], nad[nn][1], nad[nn][2], ""]);
					if(++nn > nad.length-1) nn = 0;
				}
			}
		}else{
			num = ary.length;
		}
		//get Id
		if(typeof(globalRotatorId)=='undefined'){
			curId = G(cookiename);
			curId = curId==''?Math.floor(Math.random()*max):++curId;
			if(curId>max) curId=0;
			S(cookiename,curId,timeout);
			globalRotatorId = curId;
		}
		id=globalRotatorId%num+1;
		//Show AD
		if(id==0 || ary.length==0) return; //If No AD Return
		if(id==-1) id=1; //If Only One AD Also Display it
		var n = id-1;
		var type = ary[n][0].substring(ary[n][0].length-3).toLowerCase();
		var od = document.getElementById(div_id);
		
		if(type=='swf'){
			var of = new eflFlash(ary[n][0], div_id+'_swf', w, h, "7", "", false, "High");
			of.addParam("wmode", "opaque");
			of.addVariable("adlink", escape(ary[n][1]));
			of.addVariable("adtarget", ary[n][2]);
			of.write(div_id);
		}else if(type=='jpg' || type=='gif' || type=='png' || type=='bmp'){
			od.innerHTML = '<a href="'+ary[n][1]+'" target="'+ary[n][2]+'"><img src="'+ary[n][0]+'" border="0" width="'+w+'" height="'+h+'" /></a>';
		}else if(type=='htm' || type=='tml'){
			od.innerHTML = '<iframe id="ifm_'+div_id+'" frameborder="0" scrolling="no" width="'+w+'" height="'+h+'"></iframe>';
			document.getElementById('ifm_'+div_id).src = ary[n][0];
		}else if(Int(type) || type=='.js'){
			od.style.display = 'none';
			document.write('<script language="javascript" type="text/javascript" src="'+ary[n][0]+'"></scr'+'ipt>');
		}else{ //textlink
			od.style.display = 'none';
			document.write('<a href="'+ary[n][1]+'"  target="'+ary[n][2]+'">'+ary[n][0]+'</a>');
		}
		if(ary[n][3]!="" && ary[n][3]!=null){ //ad tracker
			var oImg = new Image();
			oImg.src = ary[n][3];
		}

		function G(N){
			var c=document.cookie.split("; ");
			for(var i=0;i<c.length;i++){
				var d=c[i].split("=");
				if(d[0]==N)return unescape(d[1]);
			}return '';
		};
		function S(N,V,Q){
			var L=new Date();
			var z=new Date(L.getTime()+Q*60000);
			var d = document.domain!=""?("domain="+document.domain+";"):"";
			document.cookie=N+"="+escape(V)+";path=/;"+d+"expires="+z.toGMTString()+";";
		};
		function strToDate(str,ext){
			var arys = new Array();
			arys = str.split('/');
			var newDate = new Date(arys[2],arys[0]-1,arys[1],9,0,0);
			if(ext){
				newDate = new Date(newDate.getTime()+1000*60*60*24);
			}
			return newDate;
		};
		function Int(inTxT){
			var re = /^[\d]*$/;
			return re.test(inTxT);
		}
	};
};