var actionURL = '';

//callback from flash
var _prefectureCache = {};
function onPrefectureSelect(id){
	var $ = jQuery;
	
	while(String(id).length < 2) id = '0' + String(id);
	//might want to double check if selected
	var $area = $('#areaLink');
	$area.empty();
	
	if(_prefectureCache[id]){
		setPrefecture(_prefectureCache[id]);
		$area.html(getListHTML(_prefectureCache[id]));
		return;
	}
	
	//if not cached
	var $div = $('<div/>');
	$div
		.css({height:'16px', top:'50%', marginTop:'-16px', textAlign:'center', position:'relative'})
		.html('<img src="./images/loader.gif"/>');
	$area.append($div);
	
	//set prefecture
	function setPrefecture(data){
		var $form = $('form[name=formobj]'); 
		$form.find('input[name=r_pref]').attr('value', data[1]);
	};
	
	//create string
	function getListHTML(data){
		var len = data[2].length;
			var html = '<ul>';
			for(var i = 0; i < len; i++)
			{
				var id = 'town_' + data[2][i][0];
				html += '<li><a href="#" id="' + id + '">' + data[2][i][1] + '</a></li>';
			}
			html += '</ul>';
		return html;
	};
	
	jQuery.ajax({
		url:'./javascripts/city/pref-' + id + '.json',
		dataType:'json',
		success: function(data){
			_prefectureCache[id] = data;
			
			setPrefecture(_prefectureCache[id]);
			$area.html(getListHTML(data));
		},
		error:function(XMLHttpRequest, textStatus, errorThrown){
			alert(errorThrown);
		}
	});
}

(function($){
	//flash
	var flashvars = {};
	var params = {};
	var attributes = {};
	attributes.id = "map";
	swfobject.embedSWF("./swf/map.swf", "flashBlock", "611", "355", "9.0.115", false, flashvars, params, attributes);
	
	$(function(){
		var $form = $('form[name=formobj]'); 
		$form.attr('action', actionURL);
		$('#areaLink > ul > li a').live('click', function(){
				var $this = $(this);
				var id = $this.html();//$this.attr('id').replace('town_', '');
				$form
					.find('input[name=r_town]').attr('value', id)
					.end();
					
				$form.submit();
				return false;
			});
	});
})(jQuery);