
var g_bMainFrameResizeInProgress=false;

//animation length is 900ms with 33fps
var g_iInterpolSteps=16;	
var g_iInterpolDelay=30;	

var g_axInterpolators=new Array();
var g_iTBsize=75;
var g_iTBExpsize=80;

var g_xCountDown = null;

var g_xAudioPlayer=null;

function PlaySound(p_sURL)
{
	if(g_xCountDown==null)
	{
		g_xAudioPlayer=document.createElement("div");
		g_xAudioPlayer.style.position="absolute";
		g_xAudioPlayer.style.visibility="hidden";
		g_xAudioPlayer.style.height="0px";
		g_xAudioPlayer.style.width="0px";
		AddFlashControl(g_xAudioPlayer,"/ContentLoader/GameHTSelector.swf","FLAudioPlayer",null);
		
		g_xAudioPlayer.play=function()
		{
			var xEl=document.getElementById("FLAudioPlayer");
			xEl.play(p_sURL);
		}
	}
}

function GetInterIdxById(p_sID)
{
	var i;
	for(i=0;i<g_axInterpolators.length;i++)
	{		
		if(g_axInterpolators[i].m_sID==p_sID)
		{			
			return i;
		}
	}
	return -1;
};

function GetGameID()
{
	return g_sCurrentGameID;
};

var g_sCurrentHTID=null;
var g_sLastSelType="game";
var g_sLastDescImage="";
var g_bDescImg1=false;
var g_iDescImgTimer=null;
//var g_iDescImgStep=0;

function SetOpacity(p_xEl,p_fVal)
{
	if(p_fVal>100) {p_fVal=100;};
	if(!(p_fVal>=0)) {p_fVal=0;};
	var iO=Math.floor(p_fVal*100);
	
	p_xEl.style.opacity=p_fVal;
	p_xEl.style.filter="alpha(opacity="+iO+")";
}

function SetGameHTDescImage(p_sImg)
{
	if(g_sLastDescImage==p_sImg) {return;};
	g_sLastDescImage=p_sImg;
	if(g_iDescImgTimer!=null) {clearInterval(g_iDescImgTimer);g_iDescImgTimer=null;};
	g_bDescImg1=!g_bDescImg1;
	var xImg0=g_bDescImg1?$("descimage0"):$("descimage1");
	xImg0.src=p_sImg;
	DescImageTimer(true);
};

function DescImageTimer(p_bInit)
{
	var iIdx=GetInterIdxById("descimgipol");
	var xInterpol=null;
	if(iIdx==-1)
	{		
		xInterpol = new PitScalarInterpolator();
		xInterpol.m_sID="descimgipol";
		xInterpol.m_iStepCounter=0;
		xInterpol.SetInOutQuad();
		xInterpol.SetStart(0,0);
		xInterpol.SetEnd(6,1);
		g_axInterpolators.push(xInterpol);		
	}
	else
	{		
		xInterpol=g_axInterpolators[iIdx];
	};
	
	var xImg0=g_bDescImg1?$("descimage0"):$("descimage1");
	var xImg1=g_bDescImg1?$("descimage1"):$("descimage0");
	if(p_bInit) {xInterpol.m_iStepCounter=-1;g_iDescImgTimer=setInterval(function(){DescImageTimer(false);},40);};
	xInterpol.m_iStepCounter++;
	
	var fT=1-xInterpol.Get(xInterpol.m_iStepCounter);
	var fI0=1-(fT*fT);
	var fI1=1-((1-fT)*(1-fT));
	SetOpacity(xImg0,fI0);
	SetOpacity(xImg1,fI1);
	
	//if(fI0>=0.)
	if(xInterpol.m_iStepCounter>=xInterpol.m_fTimeEnd)
	{
		if(g_iDescImgTimer!=null) {clearInterval(g_iDescImgTimer);g_iDescImgTimer=null;};
	};
};

function GameHTSelectorClick(p_sID,p_sSub,p_sName)
{
	//return;
	//alert(p_sID+p_sSub+p_sName);
	g_sLastSelType=p_sID;
	if(p_sID=="game")
	{
		g_sCurrentGameID=p_sSub;
		g_sCurrentGameName=p_sName;
		//xImg.src="gfxgen.xrq?s=gametarget&t="+p_sSub+"-"+p_sName;
		SetGameHTDescImage("/images/games/"+p_sSub+".jpg");
	};
	if(p_sID=="ht")
	{
		var aS=p_sSub.split(",");
		SetHelpTarget(aS[0]);
		g_sCurrentHTID=aS[1];

		//xImg.src="gfxgen.xrq?s=helptarget&t="+aS[1]+"-"+aS[0];
		SetGameHTDescImage("/images/ht/"+aS[1]+".jpg");
	};
};

function GameHTSelectorOver(p_sID,p_sSub,p_sName)
{
	//return;
	if(p_sID=="game")
	{
		SetGameHTDescImage("/images/games/"+p_sSub+".jpg")
	};
	if(p_sID=="ht")
	{
		var aS=p_sSub.split(",");
		SetGameHTDescImage("/images/ht/"+aS[1]+".jpg");
	};
}

function GameHTSelectorLeave(p_sID)
{
	return;
	if(g_sLastSelType=="game")
	{
		if(g_sCurrentGameID!=null&&g_sCurrentGameID.length>0)
		{
			SetGameHTDescImage("/images/games/"+g_sCurrentGameID+".jpg");
		};
	};
	if(g_sLastSelType=="ht")
	{
		if(g_sCurrentHTID!=null&&g_sCurrentHTID.length>0)
		{
			SetGameHTDescImage("/images/ht/"+g_sCurrentHTID+".jpg");
		};
	};
};

function GetQuestionMarkImage(p_iX,p_iY)
{
	var xEl = document.createElement("img");
	xEl.src=FontTextImage("?",28,16750848,-2,4);
	xEl.style.position="absolute";
	xEl.style.left=p_iX + "px";
	xEl.style.top=p_iY + "px";
	xEl.style.cursor="pointer";
	return xEl;
}

function DoCollapseEffect()
{
	/*var xTopLinks=$("toplinks");
	if(xTopLinks)
	{
		xTopLinks.style.visibility="visible";
	}*/
	
	var iIdx=GetInterIdxById("mfipol");
	var xInterpol=null;
	if(iIdx==-1)
	{		
		xInterpol = new PitScalarInterpolator();
		xInterpol.m_sID="mfipol";
		xInterpol.m_iStepCounter=0;
		xInterpol.SetCosine();
		xInterpol.SetStart(0,0);
		xInterpol.SetEnd(g_iInterpolSteps,1600);
		g_axInterpolators.push(xInterpol);		
	}
	else
	{		
		xInterpol=g_axInterpolators[iIdx];
	}
	
	if(xInterpol.m_iStepCounter<g_iInterpolSteps)
	{
		var iValue=xInterpol.Get(xInterpol.m_iStepCounter);
		xInterpol.m_iStepCounter++;

		//gameframe
		var xBigFrame=$("tutorial_frame");
		if(xBigFrame)
		{
			iH=parseInt(xBigFrame.style.height);
			if(xBigFrame.m_iExpandedPos==undefined) {xBigFrame.m_iExpandedPos=iH;}
			xBigFrame.style.height=xBigFrame.m_iExpandedPos-(iValue*0.9) + "px";
		}
		
		var xIdxFrame=$("index_big_frame");
		if(xIdxFrame)
		{
			iH=parseInt(xIdxFrame.style.height);
			if(xIdxFrame.m_iExpandedPos==undefined) {xIdxFrame.m_iExpandedPos=iH;};
			xIdxFrame.style.height=xIdxFrame.m_iExpandedPos-(iValue*0.1) + "px";
		};
		
		m_iTimeout=setTimeout(function(){DoCollapseEffect()}, g_iInterpolDelay);
	}
	else
	{
		g_sScoreTableType="mraisedlist";
		g_xRankMenu.SetTitle("Ranking.");
		setTimeout(function(){OnClickRanking(false)},1000);
		
		clearTimeout(this.m_iTimeout);
		
		xInterpol.m_iStepCounter=0; //reset stepcounter
		
		var xBigFrame=$("tutorial_frame");
		if(xBigFrame)
		{
			//AddIframeBorders(false);
			xBigFrame.removeChild($("gameiframe"));	
			
			var xTutImage = document.createElement("img");
			xTutImage.className="frontpageheadline";
			xTutImage.src=FontTextImage("gaming for a good cause, this is how it works!",40,16750848,-2,4);
			xBigFrame.appendChild(xTutImage);
		}
		else if(typeof(g_xGamesFrame)!=undefined)
		{	
			//todo: recreate instead of reload
			window.location.href="/games.html";
		}
	}
}

function DoExpandEffect()
{
	/*var xTopLinks=$("toplinks");
	if(xTopLinks)
	{
		xTopLinks.style.visibility="hidden";
	}*/
	
	var xTabs=$("tabs");
	if(xTabs)
	{
		xTabs.style.visibility="hidden";
	}
	
	var iIdx=GetInterIdxById("mfipol");
	var xInterpol=null;
	if(iIdx==-1)
	{		
		xInterpol = new PitScalarInterpolator();
		xInterpol.m_sID="mfipol";
		xInterpol.m_iStepCounter=0;
		xInterpol.SetCosine();
		xInterpol.SetStart(0,0);
		xInterpol.SetEnd(g_iInterpolSteps,1600);
		g_axInterpolators.push(xInterpol);		
	}
	else
	{		
		xInterpol=g_axInterpolators[iIdx];
	}
	
	if(xInterpol.m_iStepCounter<g_iInterpolSteps)
	{
		var iValue=xInterpol.Get(xInterpol.m_iStepCounter);
		xInterpol.m_iStepCounter++;
	
		//tutorial frame
		var xTutFrame=$("tutorial_frame");
		if(xTutFrame)
		{
			iH=parseInt(xTutFrame.style.height);
			if(xTutFrame.m_iBasePos==undefined) {xTutFrame.m_iBasePos=iH;};
			xTutFrame.style.height=xTutFrame.m_iBasePos+(iValue*0.9) + "px";
		};
		
		var xIdxFrame=$("index_big_frame");
		if(xIdxFrame)
		{
			iH=parseInt(xIdxFrame.style.height);
			if(xIdxFrame.m_iBasePos==undefined) {xIdxFrame.m_iBasePos=iH;};
			xIdxFrame.style.height=xIdxFrame.m_iBasePos+(iValue*0.1) + "px";
		};
		
		m_iTimeout=setTimeout(function(){DoExpandEffect()}, g_iInterpolDelay);
	}
	else
	{
		g_sScoreTableType="gamescore";
		//setTimeout(function(){OnClickRanking(false);},1000);
		clearTimeout(this.m_iTimeout);
		var xCanvas=$("tutorial_frame");
		if(xCanvas)
		{	
			xCanvas.innerHTML="<iframe frameborder=0 id=\"gameiframe\" src='/ContentLoader/HTWContentLoader.html' width=800px height=600px>Your browser does not support iframes</iframe>";
			g_sScoreTableType="gamescore";
		}
		else if(g_xGamesFrame)
		{
			g_xGamesFrame.m_xSubFrameWnd.innerHTML="<iframe style=\"background-Color:transparent;\" allowtransparency=\"true\" frameborder=0 id=\"gameiframe\" src='/ContentLoader/HTWContentLoader.html' width=800px height=600px>Your browser does not support iframes</iframe>";
			g_xGamesFrame.m_xWnd.style.height="660px";
		};
		
		//AddIframeBorders(true);
		$('close_game_btn').style.display="block";
		
		xInterpol.m_iStepCounter=0; //reset stepcounter
		if(!g_bRandGame)
		{
			SetTitleTopImage(g_sCurrentGameName);
			//OnClickRanking(false);
		}
	}
};

function SetTitleTopImage(p_sText)
{
	var xCI=$("category_img");
	if(!xCI) {return;};
	if(p_sText.length==0) {xCI.style.visibility="hidden";return;};
	xCI.src=GenCategoryHead(p_sText);
	xCI.style.visibility="visible";
};

function gfx_ZoomIn(p_iW,p_iH,p_xEl)
{  	
	this.m_iZoomDelay=10;
	this.m_iTimeout=null;
	p_xEl.width=p_iW;
	p_xEl.height=p_iH;
	p_xEl.style.width = p_iW+"px";
	p_xEl.style.height = p_iH+"px";
};

function gfx_ZoomOut(p_iW,p_iH,p_xEl)
{	
	this.m_iZoomDelay=40;
	this.m_iTimeout=null;
	
	if(p_xEl.width > p_iW)
	{
		var iW=p_xEl.width;
		iW -= 1;
		p_xEl.width=iW;
		p_xEl.style.width=iW+"px";
	}
	
	if(p_xEl.height > p_iH)
	{
		var iH = p_xEl.height;
		var iStepSize = 1;
		iH -= iStepSize;
		p_xEl.height=iH;
		p_xEl.style.height=iH+"px";
	}
	
	if(p_xEl.width > p_iW)
	{
		m_iTimeout=setTimeout(function(){gfx_ZoomOut(p_iW,p_iH,p_xEl)}, m_iZoomDelay);
	}
	else
	{
		clearTimeout(this.m_iTimeout);
	}
};

function CloseFlash()
{
	if(typeof(g_xGamesFrame)!=undefined) {window.location.href="/games.html";};
	//	DoCollapseEffect();
};

function OnComComplete()
{
	var xCanvas=$("tutorial_frame");
	if(!xCanvas)
	{
		xCanvas=g_xGamesFrame.m_xSubFrameWnd;
	}
	xCanvas.innerHTML="<iframe frameborder=0 id=\"gameiframe\" src='/ContentLoader/game$bc7a65a94eb96a76$.html?random="+g_bRandGame+"&g="+g_sGoGame+"' width=800px height=600px>Your browser does not support iframes</iframe>";
};

function NewsFrame2(p_sWndID)
{
	var xThis=this;
	this.m_sSubFrameWndID=p_sWndID;
	this.m_xWnd=$("mainframe");
	this.m_xSubFrameWnd=$(p_sWndID);
	
	this.Open=function()
	{
		var xThis=this;
		if(!this.m_xWnd) {return;};
		xThis.DoContent();
	};
	
	this.DoContent=function(p_sTab)
	{
		xThis.m_xSubFrameWnd.innerHTML="";
		
		var xRPC=new VXHR();
		xRPC.SetURL("news.xrq");
		xRPC.SetFunction("summary");
		
		xRPC.OnSucceed=function()
		{
			xThis.DisplayNews(xRPC.m_xResults);	
		};
		xRPC.Send();
	};
	
	this.DisplayNews=function(p_xNews)
	{
		//for(var j=0;j<8;j++)
		for(var i=0;p_xNews["Entry_"+i]!=undefined&&i<7;i++)
		{
			//if(i==3){continue;};
			var xEntry=p_xNews["Entry_"+i];
			var sText=trim(xEntry.Text);
			
			var xB=document.createElement("div");
			xB.className="news_sbody";
			xB.innerHTML=sText;
			xB.onclick=function() {GoHREF('/news.html#'+this.m_iNIdx);};
			xB.m_iNIdx=i;
			
			//#3e5e6c
			//alert(sText);
			
			
			xThis.m_xSubFrameWnd.appendChild(xB);
		}
	};
};

var g_iHTListMStart=0;
function HTListM(p_iRel) {g_iHTListMStart+=p_iRel;HelpTargetList();};
function HelpTargetList()
{
	var xC=$("ht_box_list");if(!xC) {return;};
	if(!xC.m_xHTData)
	{
		var xRPC=new VXHR();
		xRPC.SetURL("htw.xrq");
		xRPC.SetFunction("htlist");
		xRPC.SetParam("fp",1);
		xRPC.OnSucceed=function()
		{
			xC.m_xHTData=this.m_xResults;
			HelpTargetList();
		};
		xRPC.Send();
		return;
	};
	if(!g_xUserInfo)
	{
		setTimeout(HelpTargetList,10);
		return;
	};
	xC.innerHTML="";
	var axData=[];
	for(var i=0;i<xC.m_xHTData.length;i++)
	{
		axData.push(xC.m_xHTData[i]);
	};
	if(g_iHTListMStart>axData.length-4) {g_iHTListMStart=axData.length-4;};
	if(g_iHTListMStart<0) {g_iHTListMStart=0;};
	
	var axData=xC.m_xHTData;
	for(var i=0;i<4;i++)
	{
		if(i+g_iHTListMStart>=axData.length) {break;};
		var xEntry=axData[i+g_iHTListMStart];
		var bSel=(g_xUserInfo.ht==xEntry.id);
		var sL="help target,auswählen";
		if(bSel) {sL="dein,help target";};
		
		var sCl=bSel?"":"onClick='SetHelpTarget("+xEntry.id+");HelpTargetList();'";
		var sCp=bSel?"":"cursor:pointer;";
		
		var sT="<div style='width:100%;height:80px;margin-bottom:6px;'>";
		sT+="<div style='width:0px;height:0px;'><image "+sCl+" style='"+sCp+"' src='/gfxgen.xrq?s=htselhome&m="+(bSel?1:0)+"&t="+encodeURIComponent(sL)+"'></div>";
		sT+="<div style='width:0px;height:0px;'><image "+sCl+" style='"+sCp+"height:80px;width:80px;' src='/gfxgen.xrq?s=helptarget&t="+xEntry.name+"'></div>";
		sT+="<div style='color:black;position:relative;left:80px;top:7px;width:130px;'>"
		sT+=xEntry.name+"<br>";
		sT+="Value: "+xEntry.mgoal+"€<br>";
		sT+="Units Donated: "+xEntry.tf+"<br>";
		sT+="Progress: "+(Math.floor(100*xEntry.mraised/xEntry.mgoal))+"%";
		sT+="</div>";
		sT+="</div>";
		
		xC.innerHTML+=sT;
		
		// /gfxgen.xrq?s=helptarget&t=75da1adb1c7268e48b375c12693a1f89
	};
};

function ProjectOfTheDay()
{
	var xPBox=$('idx_pro_box');if(!xPBox) {return;};
	var xPLst=$('idx_ht_lst');if(!xPLst) {return;};
	
	var xRPC = new VXHR();
	xRPC.SetURL("htw.xrq");
	xRPC.SetFunction("hplist");
	xRPC.OnSucceed=function()
	{	
		var xR=xRPC.m_xResults;
		
		var iDay=Math.floor(Math.floor((new Date()).getTime()/1000)/(60*60*24));
		var iPIdx=iDay%xR.length;
		
		var xP=xR[iPIdx];
		var sPath="/HelpProjects/"+Name2Dir(xP.name);
		var sDescInfoPath=sPath+"/desc.js";
		
		var xRPCb = new PitRPC(sDescInfoPath);
		xRPCb.name=this.name;
		xRPCb.OnSucceed=function()
		{
			var xR=eval("("+xRPCb.m_sResultText+")");
			
			var sPB="";
			sPB+="<img style='height:130px;margin-top:10px;margin-left:20px;' src='"+sPath+"/title.png'>";
			sPB+="<div style='position:absolute;left:230px;top:10px;color:#f1f3f1;'>";
			sPB+="<div style='background-color:#323d36;width:220px;height:20px;margin-bottom:6px;'>";
			sPB+="<img src='/gfxgen.xrq?s=text_smp&m=-14&w=220&p1=xffb1d243,,cc,cb,1&t="+xP.name+"'>";
			sPB+="</div>";
			sPB+="<img src='/gfxgen.xrq?s=text_smp&m=-14&p1=xfff1f3f1,,cc,cb,1&t="+g_L.about_proj_domain+"'><br>";
			sPB+="&nbsp;&nbsp;&nbsp;"+xR.pos+"<br>";
			sPB+="<img src='/gfxgen.xrq?s=text_smp&m=-14&p1=xfff1f3f1,,cc,cb,1&t="+g_L.about_proj_goals+"'><br>";
			sPB+="&nbsp;&nbsp;&nbsp;"+xR.goals+"<br>";
			sPB+="<img src='/gfxgen.xrq?s=text_smp&m=-14&p1=xfff1f3f1,,cc,cb,1&t="+g_L.about_proj_organ+"'><br>";
			sPB+="&nbsp;&nbsp;&nbsp;"+xR.org+"<br>";
			sPB+="</div></div>";
			
			sPB+="<div class='btnsml' onclick='GoHREF(\"/about_helpprojects.html\");' style='position:absolute;left:470px;top:10px;color:#f1f3f1;text-align:center;'>more</div>";
			
			xPBox.innerHTML=sPB;
		};
		xRPCb.Send();
	}
	xRPC.Send();

};

function Advent()
{
	var xAd=$('advent_box');if(!xAd) {return;};
	var xTGB=$('topgames_box');if(xTGB) {xTGB.style.visibility="hidden";};
	
	var iDay=(new Date()).getDate();
	var sDay=g_xURLParameters.GetParamValue("adv_day");
	if(sDay&&sDay.length>0) {iDay=sDay;};
	if(iDay<1||iDay>24) {xTGB.style.visibility="";xAd.style.visibility="hidden";return;};
	//iDay=1;
	
	xAd.style.textAlign="center";
	xAd.style.color="#e2e2e2";
	
	var asLinks=[
		'http://cinemalab.hfg-karlsruhe.de/',
		'http://stornebel.de/',
		'http://www.confused-direction.de/',
		'http://www.textouren.com/',
		'http://www.oflovesu.com',
		'http://agora42.de',
		'http://www.maigrau.com/',
		'http://www.ioqoo.com',
		'http://www.konkreetlabs.com/',
		'http://www.hannoverliebe.de/',
		'http://www.maec-haerder.de',
		'http://www.baukind.de/',
		'http://www.n-effekt.de/',
		'http://www.plotmag.com/',
		'http://www.kabelbrand.de/',
		'http://www.trommelwirbel.de/',
		'http://www.likeoffenbach.de',
		'http://www.prjktr.net/',
		'http://www.citinic.de',
		'http://www.co5.eu/',
		'http://www.myskoob.com/',
		'http://www.axel-huepfer.de/?ref=chw',
		'http://www.hands-on-sound.com/',
		'http://www.u-institut.de/'
		];
	var asTips=[
		'Expanded 3Digital',
		'Sven Stornebel Design',
		'Confused Direction',
		'textouren',
		'OflovesU',
		'Agora42',
		'maigrau',
		'ioqoo',
		'Konkreet Labs',
		'Hannover Liebe',
		'Mäc Härder',
		'Baukind',
		'Neubauer Handwerkstechnik',
		'Plot',
		'Kabelbrand',
		'Trommelwirbel',
		'likeoffenbach',
		'Projektor',
		'Citinic',
		'c/o 5',
		'MySkoob',
		'Axel Hüpfer',
		'Hands on Sound',
		'U-Institut'
		];

	var sLink=asLinks[iDay-1];
	var sTip=asTips[iDay-1];
	
	var sH="";
	sH+="<img style='margin-top:12px;' src='/gfxgen.xrq?s=text_smp&m=-20&w=-4&h=0&p1=xffff0000,,cc,cb&p3=str,2,-1,128;&t="+g_L.advent_title+"'/><br>";
	sH+="<img style='margin-top:2px;' src='/gfxgen.xrq?s=text_smp&m=-30&w=-4&h=0&p1=xffff0000,,cc,cb&p3=str,3,-1,128;&t="+iDay+".'/><br>";

	if(iDay<10) {iDay="0"+iDay;};
	sH+="<div style='position:absolute;top:80px;left:0px;width:241px;text-align:center;'><img src='/images/advent/ht_"+iDay+".png'></div>";
	sH+="<div style='position:absolute;top:260px;left:0px;width:241px;text-align:center;'><a href='"+sLink+"' target='_blank'><img class='notooltip' title='"+sTip+"' src='/images/advent/logo_"+iDay+".png'></a></div>";
	sH+="<div style='position:absolute;top:200px;left:4px;width:233px;text-align:center;'><span style='color:#efefef;font-size:13px;'>"+g_L["advent_ht_"+iDay]+"</span></div>";

	sH+="<img style='position:absolute;top:110px;left:11px;' src='/images/advent/trees.png'/>";
	sH+="<a href='http://www.kultur-kreativpiloten.de/' target='_blank'><img class='notooltip' style='position:absolute;top:390px;left:56px;' src='/images/advent/kkp.png'/></a>";
	sH+="<img style='position:absolute;top:500px;left:50px;' src='/images/advent/logo.png'/>";
	
	sH+="<div style='position:absolute;top:368px;left:0px;width:241px;text-align:center;'><span>"+g_L.advent_initiative+"</span></div>";
	sH+="<div style='position:absolute;top:238px;left:0px;width:241px;text-align:center;'><span>"+g_L.advent_financed+"</span></div>";
	
	xAd.innerHTML=sH;
	var xTT=new Tooltip(g_L.advent_tooltip,xAd,600);
};

function FeaturedHT()
{
	var xC=$("featht_cont");if(!xC) {return;};
	var xHTN=$('featht_name');if(!xHTN) {return;};


	if(xC.m_FHTDone) {return;};xC.m_FHTDone=true;
	var xRPC = new PitRPC("htw.xrq");
	xRPC.SetFunction("htlist");
	xRPC.OnSucceed=function()
	{
		var axR=this.m_xResults;
		var iDay=Math.floor(Math.floor((new Date()).getTime()/1000)/(60*60*24));
		var iIdx=iDay%axR.count;
		var xE=axR["Entry_"+iIdx];
		//alert(iIdx);
		xHTN.src="/gfxgen.xrq?s=text_smp&m=-13&w=-4&h=0&p1=xfff1f3f1,,cc,cb&t="+g_L["ht_name_"+xE.name]+" - "+g_L["hp_name_"+xE.hpname];
		var bSel=(g_xUserInfo.ht==xE.id);
		var sH="";
		sH+="<img style='cursor:pointer;width:180px;' onclick='SelectHTPlay(\""+xE.id+"\");' src='/gfxgen.xrq?s=helptarget&t="+xE.name+"&m="+(bSel?"0":"1")+"'>";
		
		var sHP="/HelpProjects/"+Name2Dir(xE.hpname)+"/title.png";
		sH+="<img style='width:120px;vertical-align:50%;' src='"+sHP+"'>";
		sH+="<img style='cursor:pointer;position:absolute;top:220px;left:450px;' onclick='ShowHelpTargetInfo(\""+xE.name+"\");' src='/images/htinfo.png'>";
		
		xC.innerHTML=sH;
	};
	xRPC.Send();
};

function SelectHTPlay(p_sHT)
{
	SetHelpTarget(p_sHT,function(){
		GoHREF("/games.html");
	});
};

function PlayerOfTheDay()
{
	var xC=$("potd_cont");if(!xC) {return;};
	if(xC.m_POTDDone) {return;};xC.m_POTDDone=true;
	var xRPC = new PitRPC("htw.xrq");
	xRPC.SetFunction("potd");
	xRPC.OnSucceed=function()
	{
		//var sHREF="<a style='color:#F3FB00;' href='/community_viewprofile.html?"+this.m_xResults.name+"'>"+this.m_xResults.name+"</a>";
		//var sCImg="<img src='/gfxgen.xrq?s=text_smp&m=-18&p1=-1,,,6c,1&t="+this.m_xResults.value+"€'>";
		//xPlayerInfo.innerHTML=sHREF+" from "+this.m_xResults.city+"<p style='color:#AADD16;'>donated yesterday:</p><p>"+sCImg+"</p>";
		//xProfileImg.innerHTML="<img style='width:64px;height:64px' src='/htw.xrq?rpc_function=pgi&re=1&u="+this.m_xResults.id+"'>";
		var xR=this.m_xResults;
		var xY=$("poty_cont");
		if(xY&&xR.y)
		{
			var sH="";
			sH+="<a href='/community_viewprofile.html?&"+xR.y[1]+"'>"
			sH+="<img style='width:112px;' src='/gfxgen.xrq?s=uimg&t="+xR.y[1]+"'></a><br>";
			sH+=xR.y[0];
			xY.innerHTML=sH;
		};
		var sH="";
		for(var i=0;i<xR.t.length;i+=2)
		{
			sH+="<div style='float:left;width:86px;text-align:center;margin-top:12px;'>";
			sH+="<img src='/gfxgen.xrq?s=text_smp&m=-14&p1=xff323d36,,cc,cb,1&t=%23"+(i/2+1)+"'><br>";
			sH+="<a href='/community_viewprofile.html?&"+xR.t[i+1]+"'>"
			sH+="<img style='width:64px;' src='/gfxgen.xrq?s=uimg&t="+xR.t[i+1]+"'></a><br>";
			sH+=xR.t[i];
			sH+="</div>";
		};
		xC.innerHTML=sH;
	}
	xRPC.Send();
};

function PlayerOfTheMonth()
{
	var xC=$("potm_cont");if(!xC) {return;};
	if(xC.m_POTDDone) {return;};xC.m_POTDDone=true;
	var xRPC = new PitRPC("htw.xrq");
	xRPC.SetFunction("potd");
	xRPC.OnSucceed=function()
	{
		var xR=this.m_xResults;
		if(xR.m)
		{
			var sH="";
			//sH+="<a href='/community_viewprofile.html?&"+xR.m[1]+"'>"
			sH+="<br><img style='width:130px;' src='/gfxgen.xrq?s=uimg&t="+xR.m[1]+"'>";
			//sH+="</a>";
			sH+="</a><br>";
			sH+=xR.m[0];
			xC.innerHTML=sH;
		};
	}
	xRPC.Send();
};

function ChangeInputType(p_xEl,p_sType)
{
	return;
	var sRet=p_xEl.type;
	//alert(p_xEl.outerHTML);
	
	var xEl=document.createElement('input');
	xEl.className=p_xEl.className;
	//alert(xEl.outerHTML);	
	
	var xEl=p_xEl.cloneNode(false);
	xEl.type='text';
	p_xEl.parentNode.replaceChild(xEl,p_xEl);
	//xEl.focus();
	
	return sRet;
};

function RegFieldOnFocus(p_xEl)
{
	if(!p_xEl.m_sOrgBGImg) {p_xEl.m_sOrgBGImg=p_xEl.style.backgroundImage;};
	p_xEl.style.backgroundImage="";
};

function RegFieldOnBlur(p_xEl)
{
	if(!p_xEl.m_sOrgBGImg) {return;};
	p_xEl.value=p_xEl.value.replace(/^\s+/, '').replace(/\s+$/, '');
	if(p_xEl.value.length==0)
	{
		p_xEl.style.backgroundImage=p_xEl.m_sOrgBGImg;
		return;
	};
};

function RegFieldFixAge(p_xEl)
{
	var sVal=String(p_xEl.value);
	var sNew="";
	for(var i=0;i<sVal.length;i++)
	{
		var sChar=sVal[i];
		var bValid="0123456789".indexOf(sChar)!=-1;
		if(bValid) {sNew+=sChar;};
	};
	p_xEl.value=sNew;
	
	var iAge=Math.floor(Number(p_xEl.value));
	var bValid=p_xEl.value.length>0&&!isNaN(iAge)&&iAge>0&&iAge<=122;
	p_xEl.style.color=bValid?"#000":"#b00";
};


