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/';
				}
			}
		});*/
		
			var crossName = new Element('img', {src: '/_images/cross.png'});
			crossName.addClass('cross');
			var crossEmail = new Element('img', {src: '/_images/cross.png'});
			crossEmail.addClass('cross');
			var crossPassword = new Element('img', {src: '/_images/cross.png'});
			crossPassword.addClass('cross');
			
			var tickName = new Element('img', {src: '/_images/tick.png'});
			tickName.addClass('tick');
			var tickEmail = new Element('img', {src: '/_images/tick.png'});
			tickEmail.addClass('tick');
			var tickPassword = new Element('img', {src: '/_images/tick.png'});
			tickPassword.addClass('tick');
	
		function addErrorName() {
			if ($('nameRow').getElement('img.tick')) { tickName.dispose(); }
			if ($('username').hasClass('success')) { $('username').removeClass('success'); }
			crossName.injectInside($('nameRow'));
			$('username').addClass('error');
		}

		function addSuccessName() {
			if ($('nameRow').getElement('img.cross')) { crossName.dispose(); }
			if ($('username').hasClass('error')) { $('username').removeClass('error'); }
			tickName.injectInside($('nameRow'));
			$('username').addClass('success');
		}

		function addErrorEmail() {
			if ($('emailRow').getElement('img.tick')) { tickEmail.dispose(); }
			if ($('email').hasClass('success')) { $('email').removeClass('success'); }
			crossEmail.injectInside($('emailRow'));
			$('email').addClass('error');
		}

		function addSuccessEmail() {
			if ($('emailRow').getElement('img.cross')) { crossEmail.dispose(); }
			if ($('email').hasClass('error')) { $('email').removeClass('error'); }
			tickEmail.injectInside($('emailRow'));
			$('email').addClass('success');
		}
		
		function addErrorPassword() {
			if ($('passwordRow').getElement('img.tick')) { tickPassword.dispose(); }
			if ($('password').hasClass('success')) { $('password').removeClass('success'); }
			crossPassword.injectInside($('passwordRow'));
			$('password').addClass('error');
		}

		function addSuccessPassword() {
			if ($('passwordRow').getElement('img.cross')) { crossPassword.dispose(); }
			if ($('password').hasClass('error')) { $('password').removeClass('error'); }
			tickPassword.injectInside($('passwordRow'));
			$('password').addClass('success');
		}
		
		$('signup').addEvent('click', function(e) {
			e.stop();
			$('signup').setStyle('display', 'none');
			$('ajaxloader').setStyle('display', 'block');
			/*signUp.post({
				username: $('username').value,
				email: $('email').value,
				password: $('password').value
			});*/

			var jsonRequest = new Request.JSON({url: "/_ajax/signup.ajax.php", onSuccess: function(response){
				$('signup').setStyle('display', 'block');
				$('ajaxloader').setStyle('display', 'none');
				if (response.errorName == 'true') { addErrorName(); } else { addSuccessName(); }
				if (response.errorEmail == 'true') { addErrorEmail(); } else { addSuccessEmail(); }
				if (response.errorPassword == 'true') { addErrorPassword(); } else { addSuccessPassword(); }
				if (response.output) { $('signupAjaxResponse').innerHTML = response.output; }
				//response.slideIn();
				/*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/';
				}*/
				if (response.status == 'true') { $('signupform').fade('out'); }
			}}).post({'ajax': true, 'username': $('username').value, 'email': $('email').value, 'password': $('password').value});
	
		});
	}
	
	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" />';
				});
			}
		}
	}
	
	
});
