skMgr.register("socountry", {buildList: function() {
	return countryListHTML;
}});
skMgr.register("socity");
skMgr.register("socategory");

function soSearchInit () { 
    $("#socountry").change( soLoadCities ); 
	$("#socity").change(
	   function() {
           var kwField = skMgr.getById("sokw");
           $("#sokw").val('');
	   }
	); 
}

function soLoadCities () {
       
	var cc = $("#socountry").val();
	
	if(! cc || cc == "XX") {
		//displays all cities
		$("#socity").html(allCities);
		$("#socity").val("0");
		var kwField = skMgr.getById("sokw");
		$("#sokw").val(i18n.watermark);
		var tt = skMgr.getById("socity");
		if(tt) {
		    tt.refresh();
		}
		return false;
	}
	var country = eval('cityList.'+cc);
	if(! country) {
		//displays all cities
		$("#socity").html(allCities);
		$("#socity").val("0");
		var kwField = skMgr.getById("sokw");
		$("#sokw").val(i18n.watermark);
		var tt = skMgr.getById("socity");
		if(tt) {
		    tt.refresh();
		}
		return false;
	}
	
	var html = '';
	if(country.length > 1) {
		html += '<option value="0">'+i18n.allCities+'</option>';
	}
	
	for(i in country) {
		html += '<option value="'+country[i].id+'">'+country[i].name+'</option>';
	}
	$("#socity").html(html);
	
	if(country.length > 1) {
		//selectionne le 1er element
		$("#socity").val("0");
	}
	
	var kwField = skMgr.getById("sokw");
	$("#sokw").val(i18n.watermark);
	var tt = skMgr.getById("socity");
	if(tt) {
	    tt.refresh();
	}
	return false;
}

$(document).ready(function() {
	soSearchInit();
	
    $("#sokw").autocomplete("/xhrhotel/getkwresults/", {
        matchContains: true,
        width: 250,
        
        formatItem: function(row, i, max) {
            if(row[0] > 0) {
                return row[1];
            } else {
                return {text: row[1], liClass: 'ac_cat'};
            }
        },
        formatMatch: function(row, i, max) {

        },
        formatResult: function(row) {
            if(row[0] > 0) {
                return row[1];
            } else {
                return false;
            }
        }
    });
    $("#sokw").bind('click', function() {
    	$(this).val('');
    	$("#socountry").val("XX");
    	$("#socity").html(allCities);
    	$("#socity").val("0");
    	var tt = skMgr.getById("socity");
    	var uu = skMgr.getById("socountry");
    	if(tt) {
    	    tt.refresh();
    	}
    	if(uu) {
    	    uu.refresh();
    	}
    });
});

