Event.observe(document, 'dom:loaded', function(event) {
	init_location_map();
});


/**** location map ****/
var pin_anim = false;

function init_location_map() {
	if( $$('#locations-module').length == 0 )
		return false;
		
	elt = $$('#locations-module a').first();
	
	switch_locations(elt);
	
	Event.observe('location-list', 'click', function(event) {
		event.stop();
		
		elt = Event.findElement(event, 'a');
		
		if( !elt )
			return;
			
		switch_locations(elt);
	});	
	
	new Draggable('location-pin');
}

function switch_locations(elt) {
	ld_id = elt.id.split('-')[1];
	cx = location_data[ld_id].x;
	cy = location_data[ld_id].y;
	
	$$('#location-list a').invoke('removeClassName', 'active');
	elt.addClassName('active');
	
	if( $('location-pin').visible() == false ) {				
		$('location-pin').appear();
	}
	
	try {
		pin_anim.cancel();
	} catch(er) {}
	
	pin_anim = new Effect.Move('location-pin', { 
		x: cx, 
		y: cy, 
		mode: 'absolute',
		duration: 1.0
	});	
	
	$$('#locations-module .button').first().setAttribute('href', '/locations.html?lid=' + location_data[ld_id].id);

	$$('#location-description label').first().update(location_data[ld_id].name);
	$$('#location-description span').first().update(location_data[ld_id].descr);
}
