//setLayout(new Array(tag id, position id, is close, separator))
//tag id: 投放广告的HTML标签对象ID
//position id: 广告位ID
//is close: 是否允许关闭
//separator: 同一广告位有多个广告时的分隔符
//
//sample:
//setLayout(new Array("div_id","100128",true),new Array("div_id","100129",false,"&nbsp;"));
//----------------------------------------------------
//div depth 1-4
//advertdata format: p_positionid={id,name,image,link,type,width,height,position}

//document.domain="9sky.com";

try{new SWFObject();}
catch(e){document.write("<script src=http://static.9eye.cn/js/swfobject.js></script>");}
var set_ad_site=0;

var GGClass=function(){}
GGClass.prototype={
	isAd:function(pOrR)
	{
		var d;
		try{d=eval('p_'+pOrR);}
		catch(e){try{d=eval('r_'+pOrR);}catch(e){}}
		if(d)return true;
		return false;
	},
	setLayout:function()
	{
		arguments=arguments[0];
		var ads="";
		if(arguments.length<2) return;
		set_ad_site=arguments[0];
		for(i=1;i<arguments.length;i++)
		{
			var arg=arguments[i];
			if(arg.length<2) continue;
			//数据
			var o;
			o=document.getElementsByName(arg[0]);
			if(o.length==0) continue;
			var d;
			try{d=eval('p_'+arg[1]);}
			catch(e){try{d=eval('r_'+arg[1]);}catch(e){continue;}}
			//参数
			if(arg.length<3)
				arg=arg.concat(false,"");//缺省不允许关闭
			else{
				if(!/true|false/gi.test(arg[2])){
					if(arg.length>3)
						arg=(new Array()).concat(arg.slice(0,1),false,arg.slice(3));
					else
						arg=(new Array()).concat(arg.slice(0,1),false,"");
				}
				else if(arg.length<4)
					arg=arg.concat("");//缺省无分隔符
			}
			//构建
			try{
				try{
					d[0].join(",");//关于验证d[0]是否数组
					for(var n=0;n<d.length;n++){
						var _arg;
						if(o.length==1) _arg=new Array(o[0],d[n],arg[2],(n==0?"":arg[3]));
						else if(o.length<n+1) break;
						else _arg=new Array(o[n],d[n],arg[2],"");
						if(!_arg[2]) _arg[2]=(_arg[1][8]==1?true:false);
						ads+=","+_arg[1][0];
						this.setLayoutClass(_arg);
					}
				}
				catch(e){
					var _arg=new Array(o[0],d,arg[2],"");
					if(!_arg[2]) _arg[2]=(d[8]==1?true:false);//根据记录信息设置关闭是否允许关闭
					ads+=","+d[0];
					this.setLayoutClass(_arg);
				}
			}catch(e){continue;}
		}
		//跟踪
		if(ads.length>0){
			ads=ads.substr(1);
			ping(set_ad_site,102,ads);//广告展示跟踪
		}
	},
	setLayoutClass:function()
	{
		var arg=arguments[0];
		var d=arg[1];
		switch(d[4].toLowerCase()){
			case 'image':
			case 'images':
			case '图片':
				this.setImage(arg);
				break;
			case 'flash':
				this.setFlash(arg);
				break;
			case 'iframe':
			case 'jscript':
				this.setIframe(arg);
				break;
			case 'txt':
			case '文本':
			default:
				this.setOther(arg);
				break;
		}
	},
	//close code
	closeLayout:'<div style="right:5px; position:absolute; top:4px; z-index:4;"><img onclick="gg.closeBanner()" src="http://img1a.9eye.cn/gg/images/close.gif"></div>',
	//image code
	setImage:function()
	{
		var args=arguments[0];
		var layout=args[0];
		var d=args[1];
		var isclose=args[2];
		var separator=args[3];
		var root='http://img1a.9eye.cn/gg/images/';
		var c='<a href="'+d[3]+'" onclick="ping(set_ad_site,101,'+d[0]+')" target="_blank"><img src="'+root+d[2]+'" width="'+d[5]+'" height="'+d[6]+'" border="0"></a>';
		if(isclose) c='<div style="clear:both; width:'+d[5]+'px; position:relative;">'+c+this.closeLayout+'</div>';
		layout.innerHTML+=separator+c;
	},
	//flash code
	setFlash:function()
	{
		var args=arguments[0];
		var layout=args[0];
		var d=args[1];
		var isclose=args[2];
		var separator=args[3];
		var flashlayout='ab'+d[0];
		var root='http://img1a.9eye.cn/gg/flash/';
		var c='<div id="'+flashlayout+'"></div>';
		if(d[3].replace(/http:\/\//gi,'').length>0) c='<div style="text-align:left;position:absolute;z-index:3;"><a href="'+d[3]+'" target="_blank" onclick="ping(set_ad_site,101,'+d[0]+')"><img src="http://img1.9sky.com/gg/images/over.gif" width="'+d[5]+'" height="'+d[6]+'" border=0></a></div>'+c;
		if(isclose) c='<div style="clear:both; width:'+d[5]+'px; position:relative;">'+c+this.closeLayout+'</div>';
		layout.innerHTML+=separator+c;
		var so=new SWFObject(root+d[2], d[0], d[5], d[6], "3", "#FFFFFF");
		so.addParam("wmode","transparent");
		//so.addVariable("target", d[3]);
		so.write(flashlayout);
	},
	//iframe code
	setIframe:function()
	{
		var args=arguments[0];
		var layout=args[0];
		var d=args[1];
		var isclose=args[2];
		var separator=args[3];
		var framelayout='ab'+d[0];
		var c='<div id="'+framelayout+'"></div>';
		if(isclose) c='<div style="clear:both; width:'+d[5]+'px; position:relative;">'+c+this.closeLayout+'</div>';
		layout.innerHTML+=separator+c;
		var s1=document.createElement("iframe");
		s1.width=d[5];
		s1.height=d[6];
		s1.frameBorder="0";
		s1.scrolling="no";
		s1.marginHeight="0";
		s1.marginWidth="0";
		s1.id=framelayout;
		s1.src=d[2];
		document.getElementById(framelayout).appendChild(s1);
		//with(window.frames[framelayout]){
		//	document.open();
		//	document.write(d[2]);//执行JS代码
		//	document.close();
		//}
	},
	//text other code
	setOther:function()
	{
		var args=arguments[0];
		var layout=args[0];
		var d=args[1];
		var isclose=args[2];
		var separator=args[3];
		var c=d[2].replace('&lt;','<').replace('&gt;','>').replace('\'','\\\'');
		if(/[text|文本]/gi.test(d[4])) c='<a href="'+d[3]+'" onclick="ping(set_ad_site,101,'+d[0]+')" target="_blank">'+d[2]+'</a>';
		if(isclose) c='<div style="clear:both; width:'+d[5]+'px; height:'+d[6]+'px; position:relative;">'+c+this.closeLayout+'</div>';
		layout.innerHTML+=separator+c;
	},
	//close action code
	closeBanner:function()
	{
		event.srcElement.parentNode.parentNode.parentNode.style.display='none';
	}
}
//实例化
var gg=new GGClass();
function setLayout()
{
	gg.setLayout(arguments);
}