Page.resetBookingType = function() {
	
	$('bookingType').hide().getElements('input').set( 'checked', false );
	
	$('detailsContainer').hide();
	
}

Page.bookingCreated = function() {

	var $feedback = $( 'form_book_feedback' );
	
	new Element( 'img', { src: "http://www.googleadservices.com/pagead/conversion/1018172217/?label=p_FuCMfkxgEQuabA5QM&amp;guid=ON&amp;script=0" } ).inject( $feedback );

}

whenReady(function(){
	
	var locations = $('locationsData').getDataFromComment().locations;
	
	$('locationsContainer').hide();
	$('bookingType').hide();
	$('detailsContainer').hide();
	
	$('states').getElements('a').addEvent( 'click', function(){
		
		Page.resetBookingType();
		
		var thisState = this.getDataFromComment().state;
		var locationsField = $('locationId');
	
		while ( locationsField.options.length )
			locationsField.options[0].destroy();
		
		
		locationsField.options.add( new Element( 'option' ) );
		
		
		for ( var i = 0; i < locations.length; i++ )
		{
			var loc = locations[i];
			
			if ( loc.State != thisState )
				continue;
			
			locationsField.options.add( new Option( loc.Suburb, loc.CalendarId ) );
		}
		
		if ( Browser.Engine.trident4 )
		{
			$('locationsContainer').setStyles({ display: 'block' });
			Page.resetBookingType();
			$('bookingType').setStyles({ marginLeft: 40, display: 'block' });
		}
		else
			$('locationsContainer').setStyles({ opacity: 0, marginLeft: 60, display: 'block' }).morph({ opacity: 1, marginLeft: 40 });
		
	});
	
	if ( !Browser.Engine.trident4 )
	{
		$('locationId').addEvent( 'change', function() {
			
			Page.resetBookingType();
			
			$('bookingType').setStyles({ opacity: 0, marginLeft: 60 , display: 'block'}).morph({ opacity: 1, marginLeft: 40 });
			
		});
	}
	
	$('bookingType').getElements('input').addEvent( 'click', function() {
				
		if ( this.value == 'new' )
			$('optionalContainer').setStyle( 'display', 'block' );
		else
			$('optionalContainer').setStyle( 'display', 'none' );
		
		$('detailsContainer').setStyle( 'display', 'block' ).slideIn();
		
		(function(){ try { $('field_firstName').focus(); } catch(e) {} }).delay(250);
		
	});
	
});