var _cityIds;
var _blurTimer;

function choseCapital(cityCode,cityName,initCityID){
	if(!initCityID) {
		initCityID='flightcity';
	}
	
	YAHOO.util.Dom.get(_cityIds[0]).value=cityName;
	YAHOO.util.Dom.get(_cityIds[1]).value=cityCode;
	var initCityObj=YAHOO.util.Dom.get(initCityID);
	initCityObj.style.display='none';

}

/**
*  @param list 城市数组,
*		  cityAcID 页面自动完成控件id,
*		  ctiyCodeID  城市编码控件 。提交表单用,
*		  containerId 下拉选择容器id,
*			
*/
function fillCityAC(list,cityAcID,ctiyCodeID,containerId,initCityID){
	if(!initCityID) {
		initCityID='flightcity';
	}
	var focusHandler=function(oSelf){//得到焦点  显示省会城市
		if(_blurTimer){
			clearTimeout(_blurTimer);
		}
		if(initCityID=='flightcity'){
			showFlightCity(0);//显示默认城市
		}else if(initCityID=='hotelcity'){
			showHotelCity(0);
		}
		//设置初始信息的坐标 和外观
		var initCityObj=YAHOO.util.Dom.get(initCityID);
		initCityObj.style.position='absolute';
		initCityObj.style.display='inline';
		var pos = YAHOO.util.Dom.getXY(cityAcID);
		pos[1] += YAHOO.util.Dom.get(cityAcID).offsetHeight + 2;
		YAHOO.util.Dom.setXY(initCityID,pos);
		
		//全局变量赋值 当前控件
		_cityIds=[cityAcID,ctiyCodeID];
		
		/*
		 if(oAC.isContainerOpen()) {   
			 oAC.collapseContainer();   
		 }else{
			 oAC.getInputEl().focus(); // Needed to keep widget active   
			 setTimeout(function() { // For IE   
				 oAC.sendQuery("");   
			 },0);  

		 }
		 */
	};
	var blurHandler=function(OSelf){//失去焦点
		var initCityObj=YAHOO.util.Dom.get(initCityID);
		_blurTimer=setTimeout(function(){
			initCityObj.style.display='none';//延迟0.5秒消失 为响应鼠标点击事件
		},250);
		//alert(blurTimer);
	};
	var expandHandler=function(oSelf){//展开选项
		var initCityObj=YAHOO.util.Dom.get(initCityID);
		initCityObj.style.display='none';
	};
 	var selectHandler= function(sType, aArgs){//选择城市
	 	var oData = aArgs[2];   
	 	var cityChose = YAHOO.util.Dom.get(cityAcID);
	 	var cityCode=YAHOO.util.Dom.get(ctiyCodeID);
	 	cityChose.value=oData.name; 
	 	cityCode.value=oData.code; 
 	};
	
	 var oDS = new YAHOO.util.LocalDataSource(list);
	
	 oDS.responseSchema = {fields : 
		  [
		   {key:"contract",parser:YAHOO.util.DataSourceBase.parseTextDate},
		  {key:"name",parser:YAHOO.util.DataSourceBase.parseTextDate},
		  {key:"code",parser:YAHOO.util.DataSourceBase.parseTextDate}
		  ]
	   }; 
	
 	 var oAC = new YAHOO.widget.AutoComplete(cityAcID,containerId, oDS);
 	oAC.setHeader('输入拼音 ↑↓选择<br/>- - - - - - - - - - - - -');//城市选择 div 头
 	oAC.forceSelection=true; //必须选择 不能用户输入
 	oAC.useIFrame=true;//结果遮挡    select  标签 
 	oAC.useShadow = true; //阴影效果
 	oAC.maxResultsDisplayed = 8; //最多显示8行
 	oAC.resultTypeList = false; //显示结果封装到对象里面
 	oAC.minQueryLength = 1; //最少输入几个字符 再搜索

 	oAC.itemSelectEvent.subscribe(selectHandler);
 	oAC.textboxFocusEvent.subscribe(focusHandler);
 	oAC.textboxBlurEvent.subscribe(blurHandler);
 	oAC.containerExpandEvent.subscribe(expandHandler);
 	
 	
 	oAC.formatResult =function(oResultData, sQuery, sResultMatch){//列表显示
 	 	 var contract=oResultData.contract;
 	 	 var name=oResultData.name;
 	 	 return contract+" - "+name;
 	    };
 	 return oAC;
 }//end cityAC

