var Js_advertConfig=
{
	getInfoUrl:"http://ADAAdView.Hotsales.net/BillDisplay.aspx",
	clickUrl:"http://ADAAdVisit.Hotsales.net/BillMetaReceiver.ASPX",
	controlId:"Hotsales_AdvertDisplay_ContorlClass"
}
var _callBackRequestText="";
function _callbackRequest(id)
{
	var str=unescape(_callBackRequestText);
	if(str==null||str==""||id==null||id=="")return;
	var work=window[Js_advertConfig.controlId];
	if(work==null||typeof work=="undefined")return;
	work.work(Js_advertConfig.clickUrl,str,id);
}
function getNowDateStr(){var dt=new Date();return dt.getFullYear()+"_"+parseInt(dt.getMonth()+1)+"_"+dt.getDate()+"_"+dt.getHours()+"_"+dt.getMinutes()+"_"+dt.getSeconds();}
function Js_companySign()
{
	this.textImgSrc="http://ADAAdView.Hotsales.net/Resource/images/ada.gif";
	this.imageImgSrc="ada1.gif";
	this.clickUrl="http://Ada.hotsales.net";
	this.style={image:{width:120,height:18},obj:{width:120,height:18}};
	this.getHtmlString=function(ty,url,urlAry,fw,w,h,css,link)
	{
		var html=[],s=this.style;
		s.image.width=(s.image.width>w?w:s.image.width);
		if(ty==1)
		{
			s.obj.height=h;
			s.obj.width=w;
			var urlw=Math.floor(url.length*(fw));
			html.push("<table border='0' cellspacing='0' cellpadding='0' width='"+s.obj.width+"' height='"+s.obj.height+"' style='line-height:90%;'>");
			if(s.image.width+urlw<(w+fw))
			{
				html.push("<tr><td colspan='3' height='"+s.obj.height-s.image.height+"' onclick=\"window.open('"+link+"')\"></td></tr>");
				html.push("<tr><td style='"+css+"line-height:90%;'>"+url+"</td><td width='100%' onclick=\"window.open('"+link+"')\"></td><td><a href='"+this.clickUrl+"' target='_blank'><img alt='HotADA "+unescape("%u63D0%u4F9B%u7684%u5E7F%u544A")+"' src='"+this.textImgSrc+"' border='0' width='"+s.image.width+"' height='"+s.image.height+"'></a></td></tr>");
			}
			else
			{
				html.push("<tr><td height='"+s.obj.height-s.image.height*2+"' onclick=\"window.open('"+link+"')\"></td></tr>");
				html.push("<tr><td style='"+css+"line-height:90%;' height='"+s.image.height+"'>"+urlAry.join("<br>")+"</td></tr>");
				html.push("<tr><td align='right' valign='buttom'><a href='"+this.clickUrl+"' target='_blank'><img alt='HotADA "+unescape("%u63D0%u4F9B%u7684%u5E7F%u544A")+"' src='"+this.textImgSrc+"' border='0' width='"+s.image.width+"' height='"+s.image.height+"'></a></td></tr>");
			}
			html.push("</table>");
		}
		else if(ty==0)
		{
			s.obj.height=s.image.height;
			s.obj.width=s.image.width;
			html.push("<a href='"+this.clickUrl+"' target='_blank'><img alt='HotADA "+unescape("%u63D0%u4F9B%u7684%u5E7F%u544A")+"' src='"+this.textImgSrc+"' border='0' width='"+s.image.width+"' height='"+s.image.height+"'></a>");
		}
		return html.join("");
	}
}
function Js_advertHtmlObject(id)
{
	this.id="hotsales_hotada_addisplay_"+id;
	this.advertCompanySign=null;
	this.pos=null;
	this.style=
	{
		wordTitle:
		{
			fontName:"Arial,Tahoma,Verdana",fontSize:13,fontBold:true,fontColor:"#F2984C",fontUnderLine:true,
			readConfig:function()
			{
				var w=window,tcN="_bill_title_color",tbN="_bill_title_bold",tuN="_bill_title_underline";
				var tc=w[tcN],tb=w[tbN],tu=w[tuN];
				if(typeof tc!="undefined"&&typeof tc=="string"){this.fontColor=tc;w[tcN]=null;}
				if(typeof tb!="undefined"&&typeof tb=="boolean"){this.fontBold=tb;w[tbN]=null;}
				if(typeof tu!="undefined"&&typeof tu=="boolean"){this.fontUnderLine=tu;w[tuN]=null;}
			},
			getCssText:function()
			{
				var css=[];
				css.push("font-family:"+this.fontName+";");
				css.push("font-size:"+this.fontSize+"px;");
				css.push("color:"+this.fontColor+";");
				css.push("text-decoration:"+(this.fontUnderLine==true?"underline":"none")+";");
				css.push("font-weight:"+(this.fontBold==true?"bold":"normal")+";");
				return css.join("");
			}
		},
		wordContent:
		{
			fontName:"Arial,Tahoma,Verdana",fontSize:12,fontBold:false,fontColor:"#99C9FF",fontUnderLine:false,
			readConfig:function()
			{
				var w=window,ccN="_bill_content_color",cbN="_bill_content_bold",cuN="_bill_content_underline";
				var cc=w[ccN],cb=w[cbN],cu=w[cuN];
				if(typeof cc!="undefined"&&typeof cc=="string"){this.fontColor=cc;w[ccN]=null;}
				if(typeof cb!="undefined"&&typeof cb=="boolean"){this.fontBold=cb;w[cbN]=null;}
				if(typeof cu!="undefined"&&typeof cu=="boolean"){this.fontUnderLine=cu;w[cuN]=null;}

			},
			getCssText:function()
			{
				var css=[];
				css.push("font-family:"+this.fontName+";");
				css.push("font-size:"+this.fontSize+"px;");
				css.push("color:"+this.fontColor+";");
				css.push("text-decoration:"+(this.fontUnderLine==true?"underline":"none")+";");
				css.push("font-weight:"+(this.fontBold==true?"bold":"normal")+";");
				return css.join("");
			}
		},
		displayUrl:
		{
			fontName:"Arial,Tahoma,Verdana",fontSize:10,fontColor:"#C1C1C1",
			getCssText:function()
			{
				var css=[];
				css.push("font-family:"+this.fontName+";");
				css.push("font-size:"+this.fontSize+"px;");
				css.push("color:"+this.fontColor+";");
				return css.join("");
			}
		},
		object:
		{
			borderColor:"#F3F3F3",borderWidth:1,borderStyle:"solid",backColor:"#FFFFFF",width:0,height:0,paddingSize:0,zIndex:9999,disPlay:"block",
			readConfig:function()
			{
				var w=window,bcN="_bill_background_color",bdcN="_bill_border_color";
				var bkColor=w[bcN],bdColor=w[bdcN];
				if(typeof bkColor!="undefined"&&typeof bkColor=="string"){this.backColor=bkColor;w[bcN]=null;}
				if(typeof bdColor!="undefined"&&typeof bdColor=="string"){this.borderColor=bdColor;w[bdcN]=null;}
			},
			getCssText:function()
			{
				var css=[];
				css.push("display:"+this.disPlay+";");
				css.push("border:"+this.borderWidth+"px "+this.borderStyle+" "+this.borderColor+";");
				css.push("background-color:"+this.backColor+";");
				css.push("width:"+this.width+"px;");
				css.push("height:"+this.height+"px;");
				css.push("padding:"+this.paddingSize+"px;");
				css.push("z-index:"+this.zIndex+";");
				return css.join("");
			}
		}
	};
	this.load=function()
	{
		this.advertCompanySign=new Js_companySign();
		this.readStyleConfig();
		this.buildObject();
	}
	this.readStyleConfig=function()
	{
		this.style.wordTitle.readConfig();
		this.style.wordContent.readConfig();
		this.style.object.readConfig();
	}
	this.buildObject=function(){document.write("<div id=\""+this.id+"\"></div>");}
	this.getObject=function(){return document.getElementById(this.id);}
	this.fillObject=function(adInfo)
	{
		var obj=this.getObject();
		if(obj==null)return;
		this.style.object.width=adInfo.width;
		this.style.object.height=adInfo.height;
		var html=this.makeAdvertHtml(adInfo);
		var css=this.style.object.getCssText();
		obj.style.cssText=css;
		obj.innerHTML=html;
	}
	this.makeAdvertHtml=function(adInfo)
	{
		var html="";
		switch(parseInt(adInfo.displayType))
		{
			case 0:
				html=this.makeTextAdvertHtml(adInfo);
				break;
			case 1:
				html=this.makeImageAdvertHtml(adInfo);
				break;
			default:
				break;
		}
		return html;
	}
	this.getLineCount=function(info)
	{
		var index=info.indexOf("*");
		return  parseInt((index>-1?info.substring(0,index):info));
	}
	this.getShowStrArray=function(str,fw,w,h)
	{
		var array=[];
		var count=str.length;
		var index=Math.floor(w/fw);
		if(count*fw>w)
		{
			while(str!="")
			{
				array.push(str.substring(0,index));
				str=str.substring(index);
			}
		}
		else{array.push(str);}
		return array;
	}
	this.checkContentArrayInBox=function(height,width,ary1,ary2,ary3,fs1,fs2,fs3,fw)
	{
		var h=height-(ary1.length*(parseInt(fs1))+ary2.length*(parseInt(fs2)));
		var c=Math.floor(h/(parseInt(fs3)));
		if(c<=ary3.length)
		{
			ary3=ary3.slice(0,(c<1?1:c));
			ary3[ary3.length-1]=ary3[ary3.length-1].substring(0,Math.floor(width/parseInt(fw))-2)+"...";
		}
		return ary3;
	}
	this.getContentArrayHeight=function(ary1,ary2,ary3,fs1,fs2,fs3){return ary1.length*parseInt(fs1)+ary2.length*parseInt(fs2)+ary3.length*parseInt(fs3);}
	this.getHtmlStrInTextBox=function(info,index,width,height)
	{
		var html=[],s=this.style;//tC=this.getLineCount(item.titleMax),cC=this.getLineCount(item.contentMax),uC=this.getLineCount(item.urlMax);
		var item=info.advertItemList[index];
		var tfs=s.wordTitle.fontSize,cfs=s.wordContent.fontSize,ufs=s.displayUrl.fontSize;
		var tfw=tfs+1,cfw=cfs+1,ufw=ufs-5;
		var tfh=tfs+2.5,cfh=cfs+2.5,ufh=ufs+2;
		var tAry=this.getShowStrArray(item.wordTitle,tfw,width,height);
		var cAry=this.getShowStrArray(item.wordContent,cfw,width,height);
		var uAry=this.getShowStrArray(item.displayUrl,ufw,width,height);
		var h=this.getContentArrayHeight(tAry,cAry,uAry,tfh,cfh,ufh);
		if(h>height)
		{
			cAry=this.checkContentArrayInBox(height,width,tAry,uAry,cAry,tfh,ufh,cfh,cfw);
			h=this.getContentArrayHeight(tAry,cAry,uAry,tfh,cfh,ufh);
			if(h>height){tAry=this.checkContentArrayInBox(height,width,cAry,uAry,tAry,cfh,ufh,tfh,tfw);}
		}
		html.push("<div style='"+s.wordTitle.getCssText()+"'>"+tAry.join("<br>")+"</div>");
		html.push("<div style='"+s.wordContent.getCssText()+"'>"+cAry.join("<br>")+"</div>");
		html.push("<div style='"+s.displayUrl.getCssText()+"'>"+uAry.join("<br>")+"</div>");
		return html.join("");
	}
	this.makeTextAdvertHtml=function(adInfo)
	{
		var html=[];
		var itemCount=adInfo.advertItemList.length;
		var tfs=this.style.wordTitle.fontSize,cfs=this.style.wordContent.fontSize,ufs=this.style.displayUrl.fontSize;
		var sw=(tfs>cfs?tfs:(cfs>ufs?cfs:ufs));
		var csHtml=this.advertCompanySign.getHtmlString(adInfo.displayType,null,null,null,adInfo.width,null);
		if(adInfo.arrayDirection==1)
		{
			width=Math.floor(adInfo.width/itemCount);
			height=adInfo.height-this.advertCompanySign.style.obj.height;
			html.push("<table border='0' cellspacing='0' cellpadding='0' style='cursor:pointer;line-height:120%;' width='"+adInfo.width+"' height='"+adInfo.height+"'>");
			html.push("<tr>");
			for(var i=0,length=adInfo.advertItemList.length;i<length;i++)
			{
				html.push("<td style='line-height:120%;' valign='top' align='left' width='"+Math.floor(100/itemCount)+"%' height='"+height+"' onclick=\"javascript:window.open('"+adInfo.advertItemList[i].jumpUrl+"');\" onmousemove=\"window.status='"+adInfo.advertItemList[i].displayUrl+"';\" onmouseout=\"window.status='';\">");
				html.push(this.getHtmlStrInTextBox(adInfo,i,width-sw*1.5,height));
				html.push("</td>");
			}
			html.push("</tr>");
			html.push("<tr><td align='right' valign='buttom' colspan='"+itemCount+"' style='line-height:120%;'>"+csHtml+"</td></tr>");
			html.push("</table>");
		}
		else if(adInfo.arrayDirection==0)
		{
			width=parseInt(adInfo.width);
			height=Math.floor(adInfo.height/itemCount);
			html.push("<table border='0' cellspacing='0' cellpadding='0' style='line-height:120%;cursor:pointer;' width='"+adInfo.width+"' height='"+adInfo.height+"'>");
			for(var i=0,length=adInfo.advertItemList.length;i<length;i++)
			{
				html.push("<tr>");
				html.push("<td style='line-height:120%;' valign='top' align='left' width='"+width+"' height='"+Math.floor(100/itemCount)+"%' onclick=\"javascript:window.open('"+adInfo.advertItemList[i].jumpUrl+"')\" onmousemove=\"window.status='"+adInfo.advertItemList[i].displayUrl+"';\" onmouseout=\"window.status='';\">");
				html.push(this.getHtmlStrInTextBox(adInfo,i,width,height-sw*1.5));
				html.push("</td>");
				html.push("</tr>");
			}
			html.push("<tr><td align='right' valign='buttom'  style='line-height:120%;'>"+csHtml+"</td></tr>");
			html.push("</table>");
		}
		return html.join("");
	}
	this.makeImageAdvertHtml=function(adInfo)
	{
		var html=[];
		var item=adInfo.advertItemList[0];
		var ufs=this.style.displayUrl.fontSize;
		var uAry=this.getShowStrArray(item.displayUrl,ufs-5,adInfo.width,adInfo.height);
		var csHtml=this.advertCompanySign.getHtmlString(adInfo.displayType,item.displayUrl,uAry,ufs-5,adInfo.width,adInfo.height,this.style.displayUrl.getCssText(),item.jumpUrl);//onclick=\"javascript:window.open('"+adInfo.advertItemList[0].jumpUrl+"');\"
		html.push("<div style='cursor:pointer;width:100%;height:100%;background-image:url("+item.picPhysicalName+");background-repeat:no-repeat;' onmousemove=\"window.status='"+adInfo.advertItemList[0].displayUrl+"';\" onmouseout=\"window.status='';\">");
		html.push(csHtml);
		html.push("</div>");
		return html.join("");
	}
	this.load();
}
function Js_advertViewInfo(ary)
{
	this.adPosPKId=ary[0];
	this.displayType=ary[1];
	this.sizePKId=ary[2];
	this.applyPagePosition=ary[3];
	this.adLimit=parseInt(ary[4]);
	this.width=parseInt(ary[5]);
	this.height=parseInt(ary[6]);
	this.arrayDirection=parseInt(ary[7]);
	this.visitSourceUrl=escape(document.referrer);
	this.visitorDisplayPrecision=screen.width+'*'+screen.height;
	this.visitorLanguage=(navigator.systemLanguage?navigator.systemLanguage:navigator.language);
	this.sitePageUrl=escape(window.location.href);
	this.visitType=0;
	this.advertItemList=[];
	this.addAdvertItem=function(adItem){this.advertItemList.push(adItem);}
	this.isNullAdvertItem=function(){return this.advertItemList.length==0;}
}
function Js_advertViewItem(ary,adInfo,url)
{
	this.adPlanPKId=ary[0];
	this.displayUrl=ary[1];
	this.clickUrl=ary[2];
	this.wordTitle=ary[3];
	this.wordContent=ary[4];
	this.picPhysicalName=ary[5];
	this.displayInfoPKId=ary[6];
	this.identityGUID=ary[7];
	this.titleMax=ary[8];
	this.contentMax=ary[9];
	this.urlMax=ary[10];
	var ckUrl=[];
	ckUrl.push(url);
	ckUrl.push("?BILLPosPKId="+adInfo.adPosPKId);
	ckUrl.push("&BILLPlanPKId="+this.adPlanPKId);
	ckUrl.push("&DispInfoPKId="+this.displayInfoPKId);
	ckUrl.push("&IdentityGUID="+this.identityGUID);
	ckUrl.push("&VisitSourceUrl="+adInfo.visitSourceUrl);
	ckUrl.push("&VisitorDisplayPrecision="+adInfo.visitorDisplayPrecision);
	ckUrl.push("&VisitorLanguage="+adInfo.visitorLanguage);
	ckUrl.push("&SitePageUrl="+adInfo.sitePageUrl);
	ckUrl.push("&VisitType="+adInfo.visitType);
	ckUrl.push("&ClickUrl="+this.clickUrl);
	this.jumpUrl=ckUrl.join("");
}
function Js_advertRequest()
{
	this.id="";this.advertId=null;this.charSet=null;this.advertInfo=null;this.advertHtmlObject=null;this.state=false;this.work=false;
	this.readConfig=function()
	{
		var w=window,idN="_bill_BillPosPKId",csN="_bill_charset",str=Math.random().toString();
		var id=w[idN],c=w[csN];
		if(typeof id!="undefined"&&typeof id=="number"){this.advertId=id;w[idN]=null;}else{this.state=false;return;}
		if(typeof c!="undefined"&&typeof c=="string"){this.charSet=c;w[csN]=null;}else{this.charSet=this.getCharset();}
		this.id=this.advertId+"_"+getNowDateStr()+"_"+str.substr(str.indexOf(".")+1,8);
		this.state=true;
	}
	this.getCharset=function(){var ct=document.charset;if(typeof ct!="undefined"&&ct!=null&&ct!=""){return ct;}else{return "";}}
	this.getsendUrl=function(url)
	{
		var sendUrl=[];
		sendUrl.push(url+"?AdPosPKId="+this.advertId);		
		sendUrl.push("&CharSet="+this.charSet);		
		sendUrl.push("&VisitorDisplayPrecision="+screen.width+'*'+screen.height);
		sendUrl.push("&VisitSourceUrl="+escape(document.referrer));
		sendUrl.push("&VisitorLanguage="+(navigator.systemLanguage?navigator.systemLanguage:navigator.language));
		sendUrl.push("&SitePageUrl="+escape(window.location.href));
		sendUrl.push("&CheckValueId="+this.id);
		return sendUrl.join("");
	}
	this.getAdvertInfo=function(url)
	{
		if(!this.state)return;
		var sendurl=this.getsendUrl(url),doc=document;
		stOb=doc.createElement("script");
		stOb.setAttribute("src",sendurl);
		stOb.src=sendurl;
		doc.body.appendChild(stOb);
	}
	this.parseAdvertResult=function(url,str)
	{
		var hs=["[","-","]"],bs=["{","=",";","}"],info,list,item;
		info=str.substring(str.indexOf(hs[0])+1,str.indexOf(hs[2]));
		this.advertInfo=new Js_advertViewInfo(info.split(hs[1]));
		info=str.substring(str.indexOf(bs[0])+1,str.indexOf(bs[3]));
		list=info.split(bs[2]);
		for(var i=0,len=list.length;i<len;i++)
		{
			if(list[i]=="")continue;
			var adItem=new Js_advertViewItem(list[i].split(bs[1]),this.advertInfo,url);
			this.advertInfo.addAdvertItem(adItem);
		}
		return true;
	},
	this.load=function()
	{
		this.readConfig();
		if(this.state){this.advertHtmlObject=new Js_advertHtmlObject(this.id);}
	}
	this.getResultWork=function(url,str)
	{
		this.parseAdvertResult(url,str);
		if(this.advertInfo.isNullAdvertItem()){return;}
		this.advertHtmlObject.fillObject(this.advertInfo);
	}
	this.load();
}
function Js_RequestWorker()
{
	this.list={};
	this.loadState=false;
	this.add=function(){var info=new Js_advertRequest();if(info.state){this.list[info.id]=info;}}
	this.send=function(){var list=window[Js_advertConfig.controlId].list;for(var b in list){list[b].getAdvertInfo(Js_advertConfig.getInfoUrl);}}
	this.work=function(url,str,id){if(this.list[id]!=null){this.list[id].getResultWork(url,str);}}
}
function _pageLoad()
{
	var w=window;
	if(w[Js_advertConfig.controlId]==null){w[Js_advertConfig.controlId]=new Js_RequestWorker();}
	w[Js_advertConfig.controlId].add();
	if(w[Js_advertConfig.controlId].loadState==false){if(document.all){w.attachEvent('onload',w[Js_advertConfig.controlId].send);}else{w.addEventListener('load',w[Js_advertConfig.controlId].send,false);}w[Js_advertConfig.controlId].loadState=true;}
}
_pageLoad();