/**
* DOM ready actions any page
*/

window.addEvent('domready', function() {
	var language = window.location.pathname.split('/')[1];
	var joinEmailValue = '';
	var joinNicknameValue = '';
	
	var joinForm = $$('#sz_quickJoinForm');
	if(joinForm.length) {
		// Management of the quick label the join email
		joinEmailValue = $('sz_joinEmail').value;
		$('sz_joinEmail').addEvents({
			'focus' : function(e) {
				if($('sz_joinEmail').value == joinEmailValue) {
					$('sz_joinEmail').value = '';
				}
			},
			'blur' : function(e) {
				if($('sz_joinEmail').value == '') {
					$('sz_joinEmail').value = joinEmailValue;
				}
			}
		});
		// Management of the quick label the join nickname
		joinNicknameValue = $('sz_joinNickname').value;
		 $('sz_joinNickname').addEvents({
			'focus' : function(e) {
				if($('sz_joinNickname').value == joinNicknameValue) {
					$('sz_joinNickname').value = '';
				}
			},
			'blur' : function(e) {
				if($('sz_joinNickname').value == '') {
					$('sz_joinNickname').value = joinNicknameValue;
				}
			}
		});
		 // Management of the quick label the join password
		$('sz_joinPassword').addClass('hidden');
		$('sz_displayJoinPassword').removeClass('hidden');
		$('sz_displayJoinPassword').addEvent('focus', function(e) {
			$('sz_displayJoinPassword').addClass('hidden');
			$('sz_joinPassword').removeClass('hidden');
			$('sz_joinPassword').focus();
		});
		$('sz_joinPassword').addEvent('blur', function(e) {
			if($('sz_joinPassword').value == '') {
				$('sz_displayJoinPassword').removeClass('hidden');
				$('sz_joinPassword').addClass('hidden');
			}
		});
	}
	
	function sendRequest(action, data, destination) {
		var req = new Request.HTML({
			method: 'get',
			url:'/'+language+'/ajax/'+action,
			data: data, 
			onSuccess: function(html, elements, text) {
				$(destination).getParent().set('html', text);
				if(action == 'searchform') {
					loadEvents();
				}
			},
			//Our request will most likely succeed, but just in case, we'll add an
			//onFailure method which will let the user know what happened.
			onFailure: function() {
				alert('The request failed. Try again later');
			}
		});
		req.send();
	}
/**
* Loads all the event for each time the content is reloaded in ajax
*/
	function loadEvents() {
		var hide = true;
		$$('#sz_advancedValues input').each(function(elem) {
			switch(elem.get('type')) {
				case 'text':
					if(elem.value != '') {
						hide = false;
						break;
					}	
				break;
				case 'checkbox':
					if(elem.checked) {
						hide = false;
						break;
					}
				break;
				case 'radio':
					if(elem.checked) {
						hide = false;
						break;
					}
				break;
			}
		});

		if(hide) {
			$('sz_searchLess').setStyle('display', 'none');
		}
		
		$('sz_searchOptions').addEvent('click', function(e) {
			e.stop();
		});
		
		var advancedAccordion = new Fx.Accordion($$('#sz_searchOptions'), $$('#sz_advancedValues'), {
			display: 1,
			show: hide ? -1 : 0,
			alwaysHide: true,

			onActive: function(toggler, element) {
				$('sz_searchMore').setStyle('display', 'none');
				$('sz_searchLess').setStyle('display', 'inline');
			},
			onBackground: function(toggler, element) {
				$('sz_searchMore').setStyle('display', 'inline');
				$('sz_searchLess').setStyle('display', 'none');
			}
		});
		
		var categories = $('sz_searchCategories').getElements('a');
		categories.each(function(elem) {
			elem.addEvent('click', function(e) {
				e.stop();
				$('idCategory').value = elem.get('id').split('-')[1];
				sendRequest('searchform', {idCategory: $('idCategory').value}, 'sz_searchPlacesForm');
			});
		});
		
		$('idCity').addEvent('change', function(e) {
			sendRequest('searchareas', {
					idCity: $('idCity').value,
					idCategory: $('idCategory').value
				},
				'idArea'
			);
		});
		
		var rssOpacity = 0;
		$('sz_rssToggle').addEvent('click', function(e) { 
			e.stop();
			rssOpacity = rssOpacity ? 0 : 1;
			$('sz_rssBox').fade(rssOpacity);
		});
	}
	
	loadEvents();
	
});