Event.observe(
		window,'load',function()
		{
			$("states_tokenizer").select(".tokenizer_input")[0]
			.observe("tokenizer:change",function (event) {
							if (event.memo.action == "add")
							{
								$("united_states_select_wrapper").contentWindow.$Flash("united_states_select").select(event.memo.target);
							} else if (event.memo.action == "remove")
							{
								$("united_states_select_wrapper").contentWindow.$Flash("united_states_select").deselect(event.memo.target);
							}
						    }
				);
		});

function selectState(state)
{
	if ($("states_tokenizer"))
	{
		new Ajax.Request(url+'?hash='+hash+'&action=suggest&param=states&key='+state,{ 
				method : "get",
				onSuccess : 
				function (response)
				{
					response.responseJSON.each(function(row) {
					new Ajax.Request(url+'?hash='+hash+'&action=add&param=states&value='+row.id, {
						method: 'get'
					});
					tokenize($("states_tokenizer").select(".tokenizer_input")[0],row.name,row.id);						
					});
				}
		});
	}
}

function deselectState(state)
{
	if ($("states_tokenizer"))
	{
		$("states_tokenizer").select(".token").each(
			function (token)
			{
				if (token.down().innerHTML == state) remove_token(token);	
			}
			);
	}
}

function selectedStates()
{
	if ($("states_tokenizer"))
	{
		var selected = new Array();
		$("states_tokenizer").select(".tokenizer_input")[0].values
		.each(
			(function(pair)	{
			if (pair.value) 
			{selected.push(pair.key);}
			}).bind(selected)
		);
	}
	
	return selected;
}
