window.addEvent('domready', function() {

	var images = [
		'/_images/back-nav-li-a-hover.gif',
		'/_images/back-calendar.png',
		'/_images/back-check-up.png',
		'/_images/back-radio-up.png',
		'/_images/back-button-big-hover.png',
		'/_images/back-button-bigger-hover.png',
		'/_images/back-button-large-hover.png',
		'/_images/back-drop.png',
		'/_images/bg-search-submit-hover.png',
		'/_images/bg-search-drop-bot.png',
		'/_images/bg-search-drop-top.png'
	];
	preloadImages(images);
	
	function preloadImages (imagearray) {
		imagearray.each(function(image){
			var preloader = new Element('div', {'class': 'preloader'});
			preloader.inject($('holder'),'bottom');
			preloader.setStyle('background','url(' + image + ')');
		});
		(function(){ $$('div.preloader').destroy(); }).delay(1000);
	}

	if ($chk($('shortlistholer'))) {
		$('shortlistholer').setStyle('display', 'block');
	}
	
	if ($chk($$('.top'))) {
		$$('.top').addEvent('click', function(e) {
			e.stop();
			var myFx = new Fx.Scroll(window).toTop();
		});
	}
	
	if ($chk($('randomise'))) {
		var randomRequest = new Request({
			url: '/_ajax/home.ajax.php',
			method: 'post',
			onSuccess: function(responseText) {
				$('randomVillaAjax').innerHTML = responseText;
				random_nav();
			}
		});
		function random_nav() {
			$('randomise').addEvent('click', function(e) {
				e.stop();
				$('randomVillaAjax').innerHTML = '<img class="ajaxloader" src="/_images/ajax-loader-large.gif" />';
				randomRequest.post({
					random: 'true'
				});
			});
		}
		random_nav();
	}
	
	if ($chk($('signupAjaxResponse'))) {
		var response = new Fx.Slide('signupAjaxResponse').hide();
		var signUp = new Request({
			url: '/_ajax/signup.ajax.php',
			method: 'post',
			onSuccess: function(responseText) {
				$('signupAjaxResponse').innerHTML = responseText;
				$('responseHolder').setStyle('margin-bottom', '15px');
				response.slideIn();
				$('signup').setStyle('display', 'block');
				$('ajaxloader').setStyle('display', 'none');
				if ($chk($('errors'))) {
					var errors = $('errors');
					var errorsFx = new Fx.Tween(errors, {duration: 'long'});
					errorsFx.start('background-color', '#F6FCED', '#FCDCDC');
				} else {
					var success = $('success');
					var successFx = new Fx.Tween(success, { duraction: 'long'});
					successFx.start('background-color', '#F6FCED', '#f0fdde');
					$('signupform').fade('out');
					window.location = '/thankyou/';
				}
			}
		});
		$('signup').addEvent('click', function(e) {
			e.stop();
			$('signup').setStyle('display', 'none');
			$('ajaxloader').setStyle('display', 'block');
			signUp.post({
				username: $('username').value,
				email: $('email').value,
				password1: $('password1').value,
				password2: $('password2').value
			});
			
			//This code will send a data object via a GET request and alert the retrieved data.
			/*var jsonRequest = new Request.JSON({url: "/_ajax/signup.ajax.php", onSuccess: function(data){
				//alert('test');
				alert(data.output);
				/*alert(data.usernameOk);
				alert(data.emailOk);
				alert(data.passwordOk);
				alert(data.output);*/
				/*$('signupAjaxResponse').innerHTML = data.output;
				$('responseHolder').setStyle('margin-bottom', '15px');
				response.slideIn();
				$('signup').setStyle('display', 'block');
				$('ajaxloader').setStyle('display', 'none');*/
				//alert(person.age);    //Alerts "25 years".
				//alert(person.height); //Alerts "170 cm".
				//alert(person.weight); //Alerts "120 kg".
			//}}).post({'username': 'Craig', 'email': 'cbullock2005@yahoo.co.uk', 'password1': $('password1').value, 'password2': $('password2').value, 'json': 'true'});
	
		});
	}
	
	if ($chk($('activateAjaxResponse'))) {
		var response = new Fx.Slide('activateAjaxResponse').hide();
		var activate = new Request({
			url: '/_ajax/activate.ajax.php',
			method: 'post',
			onSuccess: function(responseText) {
				$('activateAjaxResponse').innerHTML = responseText;
				$('responseHolder').setStyle('margin-bottom', '15px');
				response.slideIn();
				$('activate').setStyle('display', 'block');
				$('ajaxloader').setStyle('display', 'none');
				if ($chk($('error'))) {
					var error = $('error');
					var errorFx = new Fx.Tween(error, {duration: 'long'});
					errorFx.start('background-color', '#F6FCED', '#FCDCDC');
				} else {
					var success = $('success');
					var successFx = new Fx.Tween(success, { duraction: 'long'});
					successFx.start('background-color', '#F6FCED', '#f0fdde');
					$('activateform').fade('out');
					window.location = '/account/';
				}
			}
		});
		$('activate').addEvent('click', function(e) {
			e.stop();
			$('activate').setStyle('display', 'none');
			$('ajaxloader').setStyle('display', 'block');
			activate.post({
				key: $('key').value
			});
		});
	}

	if ($chk($$('slider'))) {
		var sliders = $$('.slider');
		sliders.each(function(slider, i) {
			var slide = new Fx.Slide(slider.getElement('.slide')).hide();
			var toggler = slider.getElement('h3');
			toggler.getElement('span').addClass('shut');
			toggler.setStyle('cursor', 'pointer');
			toggler.addEvent('click', function() {
				slide.toggle();
				
			});
			slide.addEvent('onComplete', function() {
				toggler.getElement('span').toggleClass('shut');
			});
		});
	}
	
	if ($chk($('quickSearchInput'))) {
		$('quickSearchInput').value = 'Quick Search';
		$('quickSearchInput').addEvent('focus', function() {
			if ($('quickSearchInput').value == 'Quick Search') {
				$('quickSearchInput').value = '';
			}
		});
		$('quickSearchInput').addEvent('blur', function() {
			if ($('quickSearchInput').value == '') {
				$('quickSearchInput').value = 'Quick Search';
			}
		});
		$('quickSearchInput').addEvent('blur', function() {
			if ($chk($('suggestresults'))) { $('suggestresults').fade('out'); }
		});
		var suggest = new Request({
			url: '/_ajax/search.ajax.php',
			method: 'get',
			onSuccess: function(responseText) {
				$('searchSuggest').setStyle('display', 'block');
				$('searchSuggest').innerHTML = responseText;
				if ($chk($$('.area_id'))) {
					var terms = $$('.area_id');
					terms.each(function(term, i) {
						term.addEvent('click', function(e) {
							e.stop();
							$('quickSearchInput').value = term.innerHTML;
							if ($chk($('suggestresults'))) { $('suggestresults').fade('out'); }
						});
					});
				}
			}
		});
		$('quickSearchInput').addEvent('keyup', function() {
			if (window.getSearchResultsTimeout)
				clearTimeout(window.getSearchResultsTimeout);
			window.getSearchResultsTimeout = setTimeout(get_search_results, 500);
		});
	}
	
	function get_search_results() {
			suggest.get({
				suggest: $('quickSearchInput').value
			});
	}
	
	/*var dropSearchReq = new Request({
		url: '/_ajax/dropdown.ajax.php',
		method: 'post',
		onSuccess: function(responseText) {
			$('dropSearch').innerHTML = responseText;
			$('searchli').removeEvent('mouseover', dropSearch);
		}
	});
	
	var dropSearch = function() {
		$('dropSearch').innerHTML = '<img class="ajaxloader" src="/_images/ajax-loader-blue-back.gif" />';
		dropSearchReq.post({
			drop: 'true',
			search: 'true'
		});
	}
	
	$('searchli').addEvent('mouseover', dropSearch);
	
	var dropCommunitiesReq = new Request({
		url: '/_ajax/dropdown.ajax.php',
		method: 'post',
		onSuccess: function(responseText) {
			$('dropCommunities').innerHTML = responseText;
			$('communitiesli').removeEvent('mouseover', dropCommunities);
		}
	});
	
	var dropCommunities = function() {
		$('dropCommunities').innerHTML = '<img class="ajaxloader" src="/_images/ajax-loader-blue-back.gif" />';
		dropCommunitiesReq.post({
			drop: 'true',
			communities: 'true'
		});
	}
	
	$('communitiesli').addEvent('mouseover', dropCommunities);*/
	
	if ($('nav') && Browser.Engine.trident4) {	
		var menuItems = $$('ul#nav li');
		menuItems.each(function(menuItem, i) {
			menuItem.addEvents({
				'mouseover': function() {
					menuItem.addClass('over');
				},
				'mouseleave': function() {
					menuItem.removeClass('over');
				}
			});
		});
	}
		
	
	if ($chk($('createDescription'))) {
		var descriptionRequest = new Request({
			url: '/_ajax/communities.ajax.php',
			method: 'post',
			onSuccess: function(responseText) {
				$('areasDescriptionAjax').innerHTML = responseText;
				submit_description();
			}
		});
		$('createDescription').addEvent('click', function(e) {
			e.stop();
			$('areasDescriptionAjax').innerHTML = '<img class="ajaxloader" src="/_images/ajax-loader-large.gif" />';
			descriptionRequest.post({
				action: 'createDescription'
			});
		});
		function submit_description() {
			if ($chk($('submitDescription'))) {
				$('submitDescription').addEvent('click', function(e) {
					descriptionRequest.post({
						action: 'submitDescription',
						community: $('area').innerHTML,
						description: $('description').value
					});
					$('areasDescriptionAjax').innerHTML = '<img class="ajaxloader" src="/_images/ajax-loader-large.gif" />';
				});
			}
		}
	}
	
	
});
