var opener_top_element;
var opener_bottom_element;
var opener_text_top_element;
var opener_shadow_element;
var opener_height;
var opener_step = 0;
var opener_timer;
var opener_stage = 1;
var logo_top_element;
var logo_bottom_element;
var estates_element;
var current_menu;
var dropdown_menu_id;
var dropdown_menu_height;
var menu_dropdown_timer = 0;
var menu_out_id = 0;
var max_menu_height;
var menu3_scroll_timer = 0;
var current_menu3 = 3;
var current_menu3_element;
var next_menu3_element;
var menu3_scroll_step;
var menu3_highlight_element;
var pow_slide_step = 0;
var pow_slide_direction = 1;
var pow_slide_timer = 0;
var pow_slide_element;
var pow_slide_element_westbury;
var pow_slide_element_trowbridge;
var we_would_element;
var love_to_element;
var o_outer_element;
var o_inner_element;
var white_top_element;
var white_bottom_element;
var valuation_step = 0;
var vs1_start = 10;
var vs2_start = 115;
var vs2_length = 35;
var vs3_start = vs2_start + vs2_length;
var vs4_start = 505;
var vs_length = 530;

function start_display()
{
	opener_top_element = document.getElementById( 'opener_top' );
	opener_bottom_element = document.getElementById( 'opener_bottom' );
	opener_text_top_element = document.getElementById( 'opener_text_top' );
	opener_shadow_element = document.getElementById( 'opener_shadow' );
	logo_top_element = document.getElementById( 'logo_top' );
	logo_bottom_element = document.getElementById( 'logo_bottom' );
	estates_element = document.getElementById( 'estates' );
	shine_top_element = document.getElementById( 'opener_shine_top' );
	shine_bottom_element = document.getElementById( 'opener_shine_bottom' );

	if ( navigator.appVersion.indexOf( 'MSIE 7.0' ) != -1 )
	{
		opener_top_element.style.position = 'absolute';
		opener_bottom_element.style.position = 'absolute';
	}

	opener_height = parseInt( get_window_height() / 2 );

	opener_top_element.style.height = opener_height;
	opener_bottom_element.style.top = opener_height;
	opener_bottom_element.style.height = opener_height;
	
	opener_text_top_element.style.top = opener_height - 63;
	opener_shadow_element.style.top = opener_height;

	opener_top_element.style.visibility = 'visible';
	opener_bottom_element.style.visibility = 'visible';

	shine_top_element.style.left = ( opener_top_element.offsetWidth - 960 ) / 2;
	shine_top_element.style.visibility = 'visible';

	shine_bottom_element.style.left = ( opener_bottom_element.offsetWidth - 960 ) / 2;
	shine_bottom_element.style.visibility = 'visible';

	window.setTimeout( 'start_open()', 2000 );
}

function get_window_height()
{
	var window_height;

	window_height = window.innerHeight;

	if ( window_height == undefined )
	{
		window_height = document.documentElement.clientHeight;

		if ( window_height <= 0 )
		{
			window_height = document.body.clientHeight;
		}
	}

	return window_height;
}

function start_open()
{
	document.getElementById( 'page_body' ).style.visibility = 'visible';
	opener_timer = window.setInterval( 'open_display()', 25 );
}

function open_display()
{
	if ( opener_stage == 1 )
	{
		opener_step += 8;

		if ( opener_step < opener_height )
		{
			opener_top_element.style.height = opener_height - opener_step;
			opener_bottom_element.style.height = opener_height - opener_step;
		}
		else
		{
			opener_top_element.style.visibility = 'hidden';
			opener_bottom_element.style.visibility = 'hidden';

		}

		opener_bottom_element.style.top = opener_height + opener_step;

		opener_text_top_element.style.top = opener_height - opener_step - 63;
		opener_shadow_element.style.top = opener_height - opener_step;

		if ( opener_height - opener_step < -25 )
		{
			opener_top_element.style.display = 'none';
			opener_bottom_element.style.display = 'none';

			opener_stage = 2;
			opener_step = 0;
		}
	}
	else if ( opener_stage == 2 )
	{
		opener_step += 4;

		logo_top_element.style.top = opener_step - 104;
		logo_bottom_element.style.top = 200 - opener_step;

		if ( opener_step >= 104 )
		{
			opener_stage = 3;
			opener_step = 0;
		}
	}
	else
	{
		opener_step += 2;

		set_opacity( estates_element, opener_step );

		if ( opener_step >= 100 )
		{
			window.clearInterval( opener_timer );
			opener_timer = 0;

			start_home_sequence();
		}
	}
}

function set_opacity( opacity_object, opacity_percent )
{
	opacity_object.style.opacity = opacity_percent / 100;
	
	if ( opacity_percent == 100 )
	{
		opacity_object.style.filter = '';
	}
	else
	{
		opacity_object.style.filter = 'progid:DXImageTransform.Microsoft.Alpha(Opacity=' + String( opacity_percent ) + ')';
	}

	if ( opacity_percent == 0 )
	{
		opacity_object.style.visibility = 'hidden';
	}
	else
	{
		opacity_object.style.visibility = 'visible';
	}
}

function start_page( menu_id )
{
	current_menu = menu_id;

	if ( menu_id != 0 )
	{
		menu_element = document.getElementById( 'menu' + menu_id );
		menu_element.style.height = '720px';
	}

	set_menu_classes( current_menu, 0 );

	window.setInterval( 'on_start_menu_scroll()', 4000 );
}

function on_start_menu_scroll()
{
	if ( menu3_scroll_timer != 0 )
	{
		window.clearInterval( menu3_scroll_timer );
		menu3_scroll_timer = 0;
	}

	current_menu3 = ( current_menu3 % 3 ) + 1;
	next_menu3 = ( current_menu3 % 3 ) + 1;

	current_menu3_element = document.getElementById( 'menu3_title' + current_menu3 );
	next_menu3_element = document.getElementById( 'menu3_title' + next_menu3 );
	menu3_highlight_element = document.getElementById( 'menu3_highlight' );

	menu3_scroll_step = 0;

	menu3_scroll_timer = window.setInterval( 'on_menu3_scroll()', 20 );
}

function on_menu3_scroll()
{
	if ( menu3_scroll_step >= 134 )
	{
		window.clearInterval( menu3_scroll_timer );
		menu3_scroll_timer = 0;
	}
	else if ( menu3_scroll_step >= 124 )
	{
		menu3_scroll_step++;

		set_opacity( menu3_highlight_element, ( 134 - menu3_scroll_step ) * 10 );
	}
	else if ( menu3_scroll_step >= 120 )
	{
		menu3_scroll_step++;
	}
	else
	{
		menu3_scroll_step += 6;

		current_menu3_element.style.top = -menu3_scroll_step;
		next_menu3_element.style.top = 120 - menu3_scroll_step;

		if ( menu3_scroll_step >= 102 )
		{
			set_opacity( menu3_highlight_element, ( menu3_scroll_step - 96 ) * 25 / 6 );
		}
	}
}

function mouse_over_menu( menu_id )
{
	if ( menu_out_id == menu_id )
	{
		menu_out_id = 0;
	}
	else
	{
		if ( menu_out_id != 0 )
		{
			on_mouse_out_menu_timer();
		}

		if ( ( current_menu != menu_id ) && ( dropdown_menu_id != menu_id ) )
		{
			set_menu_classes( current_menu, menu_id );

			dropdown_menu_id = menu_id;
			dropdown_menu_height = 192;

			if ( menu_id == 4 )
			{
				max_menu_height = 720;
			}
			else
			{
				max_menu_height = document.getElementById( 'dropdown_menu_items' + menu_id ).offsetHeight + 232;
			}

			start_menu_dropdown_timer();
		}
	}
}

function mouse_out_menu( menu_id )
{
	if ( current_menu != menu_id )
	{
		menu_out_id = menu_id;

		window.setTimeout( 'on_mouse_out_menu_timer()', 20 );
	}
}

function on_mouse_out_menu_timer()
{
	if ( menu_out_id != 0 )
	{
		menu_element = document.getElementById( 'menu' + menu_out_id );
		menu_element.style.height = '191px';

		set_menu_classes( current_menu, 0 );

		if ( dropdown_menu_id == menu_out_id )
		{
			stop_menu_dropdown_timer();
			dropdown_menu_id = 0;
		}

		menu_out_id = 0;
	}
}

function start_menu_dropdown_timer()
{
	stop_menu_dropdown_timer();

	menu_dropdown_timer = window.setInterval( 'on_dropdown_timer()', 20 );
}

function stop_menu_dropdown_timer()
{
	if ( menu_dropdown_timer != 0 )
	{
		window.clearInterval( menu_dropdown_timer );
	}
}

function on_dropdown_timer()
{
	dropdown_menu_height += 33;

	if ( dropdown_menu_height >= max_menu_height )
	{
		dropdown_menu_height = max_menu_height;

		stop_menu_dropdown_timer();
	}

	document.getElementById( 'menu' + dropdown_menu_id ).style.height = dropdown_menu_height + 'px';
}

function goto_page( url )
{
	window.location.href = url;
}

function set_menu_classes( current_menu, open_menu )
{
	var menu_class = new Array();

	if ( current_menu == 0 )
	{
		menu_class[ 1 ] = 'menu';
		menu_class[ 2 ] = 'menu';
		menu_class[ 3 ] = 'menu';
		menu_class[ 4 ] = 'menu';

		if ( open_menu != 0 )
		{
			menu_class[ open_menu ] = 'menu menu_open';
		}
	}
	else
	{
		menu_class[ 1 ] = 'menu menu_mask';
		menu_class[ 2 ] = 'menu menu_mask';
		menu_class[ 3 ] = 'menu menu_mask';
		menu_class[ 4 ] = 'menu menu_mask';

		if ( open_menu == 0 )
		{
			menu_class[ current_menu ] = 'menu menu_open';
		}
		else
		{
			menu_class[ current_menu ] = 'menu menu_open_mask';
			menu_class[ open_menu ] = 'menu menu_open';
		}
	}

	document.getElementById( 'menu1' ).className = menu_class[ 1 ];
	document.getElementById( 'menu2' ).className = menu_class[ 2 ];
	document.getElementById( 'menu3' ).className = menu_class[ 3 ];
	document.getElementById( 'menu4' ).className = menu_class[ 4 ];
}

function update_houses()
{
	var ajax_post_data = new Array();

	get_ajax_data( 'get_houses.php', ajax_post_data, process_update_houses );
}

function process_update_houses( data )
{
}

function goto_property( property_id )
{
	window.location.href='property.php?pid=' + property_id;
}

function get_dropdown_value( element_id )
{
	element = document.getElementById( element_id );

	return element.options[ element.selectedIndex ].value;
}

function start_home_sequence()
{
//	pow_slide_element = document.getElementById( 'properties_of_week_inner' );
	pow_slide_element_trowbridge = document.getElementById( 'pow_price_trowbridge' );
	pow_slide_element_westbury = document.getElementById( 'pow_outer_westbury' );
	window.setInterval( 'start_pow_slide()', 10000 );

	we_would_element = document.getElementById( 'we_would' );
	love_to_element = document.getElementById( 'love_to' );
	o_outer_element = document.getElementById( 'o_outer' );
	o_inner_element = document.getElementById( 'o_inner' );
	white_top_element = document.getElementById( 'white_top' );
	white_bottom_element = document.getElementById( 'white_bottom' );

	window.setInterval( 'on_valuation_sequence_timer()', 20 );
}

function start_pow_slide()
{
	if ( pow_slide_timer != 0 )
	{
		window.clearInterval( pow_slide_timer );
		pow_slide_timer = 0;
	}

	pow_slide_timer = window.setInterval( 'on_pow_slide_timer()', 20 );
}

function on_pow_slide_timer()
{
/*
	pow_slide_step += ( pow_slide_direction * 12 );

	if ( pow_slide_step <= -384 )
	{
		pow_slide_step = -384;
		pow_slide_direction = 1;

		window.clearInterval( pow_slide_timer );
		pow_slide_timer = 0;
	}

	if ( pow_slide_step >= 0 )
	{
		pow_slide_step = 0;
		pow_slide_direction = -1;

		window.clearInterval( pow_slide_timer );
		pow_slide_timer = 0;
	}

	pow_slide_element.style.left = pow_slide_step + 'px';
*/

	pow_slide_step += ( pow_slide_direction * 2 );

	if ( pow_slide_step <= 0 )
	{
		pow_slide_step = 0;
		pow_slide_direction = 1;

		window.clearInterval( pow_slide_timer );
		pow_slide_timer = 0;
	}

	if ( pow_slide_step >= 100 )
	{
		pow_slide_step = 100;
		pow_slide_direction = -1;

		window.clearInterval( pow_slide_timer );
		pow_slide_timer = 0;
	}

	set_opacity( pow_slide_element_trowbridge, 100 - pow_slide_step );
	set_opacity( pow_slide_element_westbury, pow_slide_step );
}

function on_valuation_sequence_timer()
{
	valuation_step++;

	if ( valuation_step > vs_length )
	{
		valuation_step = 0;
	}

	if ( ( valuation_step >= vs1_start ) && ( valuation_step <= vs1_start + 25 ) )
	{
		valuation_pos = ( valuation_step - vs1_start ) * 8 - 194;

		if ( valuation_pos > 0 )
		{
			valuation_pos = 0;
		}

		we_would_element.style.top = valuation_pos + 'px';
		love_to_element.style.top = ( 194 - valuation_pos ) + 'px';
	}

	if ( valuation_step == vs1_start + 25 )
	{
		o_outer.style.display = 'block';
		o_inner.style.display = 'block';
	}

	if ( ( valuation_step > vs2_start ) && ( valuation_step < vs2_start + vs2_length ) )
	{
		phase_step = valuation_step - vs2_start;
		
		o_outer_element.style.left = 116 - phase_step * 10;
		o_outer_element.style.top = 125 - phase_step * 10;
		o_outer_element.style.width = 67 + phase_step * 20;
		o_outer_element.style.height = 67 + phase_step * 20;

		inner_size = 45 - phase_step * 2;

		if ( inner_size > 0 )
		{
			o_inner_element.style.left = 127 + phase_step;
			o_inner_element.style.top = 136 + phase_step;
			o_inner_element.style.width = inner_size;
			o_inner_element.style.height = inner_size;
		}
		else
		{
			o_inner_element.style.display = 'none';
		}
	}

	if ( ( valuation_step > vs3_start ) && ( valuation_step <= vs3_start + 25 ) )
	{
		valuation_pos = ( valuation_step - vs3_start ) * 8 - 194;

		if ( valuation_pos > 0 )
		{
			valuation_pos = 0;
		}

		white_top_element.style.top = valuation_pos + 'px';
		white_bottom_element.style.top = ( 194 - valuation_pos ) + 'px';
	}

	if ( valuation_step == vs3_start + 25 )
	{
		o_outer_element.style.display = 'none';
		o_outer_element.style.left = '';
		o_outer_element.style.top = '';
		o_outer_element.style.width = '';
		o_outer_element.style.height = '';

		o_inner_element.style.left = '';
		o_inner_element.style.top = '';
		o_inner_element.style.width = '';
		o_inner_element.style.height = '';

		we_would_element.style.top = '-194px';
		love_to_element.style.top = '388px';
	}

	if ( ( valuation_step > vs4_start ) && ( valuation_step <= vs4_start + 25 ) )
	{
		valuation_pos = ( valuation_step - vs4_start ) * -8;

		white_top_element.style.top = valuation_pos + 'px';
		white_bottom_element.style.top = ( 194 - valuation_pos ) + 'px';
	}
}

function display_home_popup()
{
	document.getElementById( 'more_info_popup' ).style.display = 'block';

	document.getElementById( 'title' ).focus();
}

function more_info_on_return( event )
{
	var keynum
	var keychar
	var numcheck

	if( window.event ) // IE
	{
		keynum = event.keyCode;
	}
	else if( event.which ) // Netscape/Firefox/Opera
	{
		keynum = event.which;
	}

	if ( keynum == 13 )
	{
		send_more_info_request();
	}
}

function send_more_info_request()
{
	var ajax_post_data = new Array();

	ajax_post_data[ 'title' ] = document.getElementById( 'title' ).value;
	ajax_post_data[ 'first_name' ] = document.getElementById( 'first_name' ).value;
	ajax_post_data[ 'last_name' ] = document.getElementById( 'last_name' ).value;
	ajax_post_data[ 'address1' ] = document.getElementById( 'address1' ).value;
	ajax_post_data[ 'address2' ] = document.getElementById( 'address2' ).value;
	ajax_post_data[ 'town' ] = document.getElementById( 'town' ).value;
	ajax_post_data[ 'county' ] = document.getElementById( 'county' ).value;
	ajax_post_data[ 'postcode' ] = document.getElementById( 'postcode' ).value;
	ajax_post_data[ 'home_tel' ] = document.getElementById( 'home_tel' ).value;
	ajax_post_data[ 'work_tel' ] = document.getElementById( 'work_tel' ).value;
	ajax_post_data[ 'mobile_tel' ] = document.getElementById( 'mobile_tel' ).value;
	ajax_post_data[ 'email' ] = document.getElementById( 'email' ).value;
	ajax_post_data[ 'prefs' ] = document.getElementById( 'prefs' ).value;

	get_ajax_data( 'send_valuation_request.php', ajax_post_data, process_more_info_response );
}

function process_more_info_response( data )
{
	window.alert( data );
}

function close_more_info()
{
	document.getElementById( 'more_info_popup' ).style.display = 'none';
}


