var cF=null;var cW=null;var g_tid=0;var g_cP,g_eD,g_eDP;
var g_fNoCity=false;

function SetCity(cP,eD,eDP){
	clearTimeout(g_tid);
	if(g_fNoCity){g_fNoCity=false;return;}
	if(g_calShown && eD==g_eD){return;}
	g_calShown = true;
	g_calCB = null;
	g_cP=cP;
	g_eD=eD;
	g_eDP=eDP;
	WaitCity();
}
function CancelCity(){clearTimeout(g_tid);if(!cF)cF=getObj('CityFrame');cF.style.visibility="hidden";g_calShown=false;}
function WaitCity(){
 if(!cW)cW=frames['CityFrame'];

 if(null==cW||null==cW.g_fCL||false==cW.g_fCL){
	g_tid=setTimeout("WaitCity()", 200);
 } else{
 if(!cF)cF=getObj('CityFrame');
	cF.style.visibility="hidden";
	setTimeout("DoCity()",1);
 }
}
function DoCity(){
  PosCity(g_cP);
  if(!cW)cW=frames['CityFrame'];
  cW.DoCity(g_eD,g_eDP);
}
function CitySetFocus(e){if(e){g_fNoCity=true;e.focus();setTimeout("EndCityFocus()", 200);}}
function EndCityFocus(){g_fNoCity=false;}
function getScrollTop(){
	if(document.documentElement.scrollTop) return document.documentElement.scrollTop;
	if(document.body.scrollTop) return document.body.scrollTop;
	if(window.pageYOffset) return window.pageYOffset;
	return 0;
}
function getWinHeight(){
	if(window.innerHeight) return window.innerHeight;
	if(document.documentElement.clientHeight) return document.documentElement.clientHeight;
	if(document.body.clientHeight) return document.body.clientHeight;
	return 0;
}
function PosCity(cP){
	var dB=document.body;var eL=0;var eT=0;
	if(!cF)cF=getObj('CityFrame');
	for(var p=cP;p&&p.tagName!='BODY';p=p.offsetParent){eL+=p.offsetLeft;eT+=p.offsetTop;}
	var eH=cP.offsetHeight;var dH=parseInt(cF.style.height);var sT=getScrollTop();
	if(eT-dH>=sT&&eT+eH+dH>getWinHeight()+sT)eT-=dH;else eT+=eH;
	cF.style.left=eL+'px';cF.style.top=eT+'px';
}

var g_calShown = false;
function SetCityShown(fcshown){g_calShown=fcshown;}

document.onclick = HCity;