function redirect(location){
	window.location.href = location;
}
function reloadPage(){
	var sURL = unescape(window.location.pathname);
	window.location.href = sURL;
}
function submitSearch(form){
    form.action += form.search.value + "/";
    form.submit();
}

//AJAX WRAPPER FUCNTIONS//////////////////////////////////////////////////////
function setFilter(section,name,id,location) {
	var url    = '/include/_ajax/functions/setFilter.php';
	var pars   = 'section=' + section + '&name=' + name + '&id=' + id;
	
	if(location == 'false'){
        var myAjax = new Ajax.Request( url, {
			method: 'get', 
			parameters: pars, 
			onSuccess: reloadPage
		});
	}else{
        var myAjax = new Ajax.Request( url, {
			method: 'get', 
			parameters: pars, 
			onSuccess: function (){ redirect(location); }
		});
	}
}

function setMainFilter(section,name,id){
    var url    = '/include/_ajax/functions/setFilter.php';
	var pars   = 'section=' + section + '&name=' + name + '&id=' + id;
    var myAjax = new Ajax.Request( url, {
        method: 'get', 
        parameters: pars
    });
}

function unSetFilter(section,name,location) {
	var url    = '/include/_ajax/functions/unSetFilter.php';
	var pars   = 'section=' + section + '&name=' + name;
	
	if(location == 'false'){
		var myAjax = new Ajax.Request( url, {
			method: 'get',
			parameters: pars, 
			onSuccess: reloadPage
		});
	}else{
		var myAjax = new Ajax.Request( url, {
			method: 'get',
			parameters: pars,
			onSuccess: function() { redirect(location); } 
		});			
	}
}

function setLocation(section,currentSection,redirectURL){
	var url    = '/include/_ajax/functions/setLocation.php';
	var pars   = 'section=' + section + '&currentSection=' + currentSection;
	if(redirectURL != ''){
        var myAjax = new Ajax.Request( url, {
			method: 'post', 
			parameters: pars, 
			onSuccess: 	function() { redirect(redirectURL); } 
		});
	}
}
function alertResponse(originalRequest){
	alert(originalRequest.responseText);
}

/////////////////////////////////////////////////////////////////////////////

// master function for updating the details on the map page//////////////////
function setLocationId(location){
    setMapName(location);
    setMapDescription(location);
	
    setStuffToDo('map',location);
	setThingsToSee('map',location);
    setPlacesToStay('map',location);
}

//stuff to do/////////////
function setStuffToDo(section,location){
	var url    = '/include/_ajax/functions/setStuffToDo.php';
	var pars   = 'section=' + section + '&location=' + location;
	var myAjax = new Ajax.Request( url, {
		method: 'get', 
		parameters: pars, 
		onComplete: updateStuffToDo
	});
}
function updateStuffToDo(originalRequest){
	$('stuffToDo').innerHTML = originalRequest.responseText;
}
//////////////////////////

//things to see/////////////
function setThingsToSee(section,location){
	var url    = '/include/_ajax/functions/setThingsToSee.php';
	var pars   = 'section=' + section + '&location=' + location;
	var myAjax = new Ajax.Request( url, {
		method: 'get', 
		parameters: pars, 
		onComplete: updateThingsToSee
	});
}
function updateThingsToSee(originalRequest){
	$('thingsToSee').innerHTML = originalRequest.responseText;
}
/////////////////////////////

//places to stay/////////////
function setPlacesToStay(section,location){
	var url    = '/include/_ajax/functions/setPlacesToStay.php';
	var pars   = 'section=' + section + '&location=' + location;
	var myAjax = new Ajax.Request( url, {
		method: 'get', 
		parameters: pars, 
		onComplete: updatePlacesToStay
	});
}
function updatePlacesToStay(originalRequest){
	$('placesToStay').innerHTML = originalRequest.responseText;
}
/////////////////////////////

//set short description//////
function setMapDescription(location){
	var url    = '/include/_ajax/functions/setMapShortDescription.php';
	var pars   = 'location=' + location;
	var myAjax = new Ajax.Request( url, {
		method: 'get', 
		parameters: pars, 
		onComplete: updateMapDescription
	});    
}
function updateMapDescription(originalRequest){
	$('mapDescription').innerHTML = originalRequest.responseText;
}
/////////////////////////////

//set short description//////
function setMapName(location){
	var url    = '/include/_ajax/functions/setMapName.php';
	var pars   = 'location=' + location;
	var myAjax = new Ajax.Request( url, {
		method: 'get', 
		parameters: pars, 
		onComplete: updateMapName
	});    
}
function updateMapName(originalRequest){
    document.title = ' Map » '+originalRequest.responseText+' »  Beach & Bush';
	$('mapName').innerHTML = originalRequest.responseText;
}
/////////////////////////////

//enqirey form///////////////
function validateEnquiry(form){
	var name	= 	form.enq_name.value;
	var email	=	form.enq_email.value;
    var num	    =	form.enq_num.value;
    var query	=	form.enq_query.value;
	
	if(name != ''){
		Effect.Fade('enquireMsg',{duration:0});
		if(checkEmail(email)){
            if(query != ''){
                Effect.Fade('enquireMsg',{duration:0}); 
                setEnquiry(name,email,num,query);
            }else{
                $('enquireMsg').innerHTML = "<div id='enquireMsgImg'><img src='/images/icons/grey_alert_small.jpg' /></div><div id='enquireMsgTxt'>Please supply us with your query.</div>";
                Effect.Appear('enquireMsg',{duration:.3});
                form.enq_query.focus();	
            }
		}else{
			$('enquireMsg').innerHTML = "<div id='enquireMsgImg'><img src='/images/icons/grey_alert_small.jpg' /></div><div id='enquireMsgTxt'>Please supply a valid email address.</div>";
			Effect.Appear('enquireMsg',{duration:.3});
			form.enq_email.focus();	
		}
	}else{
		$('enquireMsg').innerHTML = "<div id='enquireMsgImg'><img src='/images/icons/grey_alert_small.jpg' /></div><div id='enquireMsgTxt'>Please supply your name.</div>";
		Effect.Appear('enquireMsg',{duration:.3});
        form.enq_name.focus();	
	}
}

function setEnquiry(name,email,num,query){
	var url    = '/include/_ajax/functions/setEnquiry.php';
	var pars   = 'name=' + name + '&num=' + num + '&email=' + email + '&query=' + query + '&href=' + window.location.href;
	var myAjax = new Ajax.Request( url, {
		method: 'post', 
		parameters: pars,
        onLoading: function(){ 
          $('enquireMsg').innerHTML = "<div id='enquireMsgImg'><img src='/images/icons/grey_alert_small.jpg' /></div><div id='enquireMsgTxt'>Your Enquiry is being processed.</div>";
		  Effect.Appear('enquireMsg',{duration:.3});  
        },
		onSuccess: updateEnquiry
	});
}
function updateEnquiry(originalRequest){
	$('enq_name').value = '';
	$('enq_email').value = '';
    $('enq_query').value = '';
    $('enq_num').value = '';
	$('enquireMsg').innerHTML = "<div id='enquireMsgImg'><img src='/images/icons/grey_alert_small.jpg' /></div><div id='enquireMsgTxt'>"+originalRequest.responseText+"</div>";
	Effect.Appear('enquireMsg',{duration:.3});
}

function checkEmail(x){
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (!(filter.test(x))) {
		return false;
	}else{
		return true;
	}
}
/////////////////////////////

//LIGHT BOX GALLERY MANAGER///////
function fetchPicture(direction){
	var url    = '/include/_ajax/functions/fetchPic.php';
	var pars   = 'direction=' + direction + '&guid=' + $('guid').value;
	var myAjax = new Ajax.Request( url, {
		method: 'post', 
		parameters: pars,
        onLoading: loadingMainPic,
		onComplete: updateMainPic
	});
}

function updateMainPic(originalRequest){
    var guid  = originalRequest.responseText; 
    $('guid').value = guid;

    Effect.Fade('spinner',{duration:.5,queue:'end'});
    Effect.Appear('mainImage',{
        duration:.2,
        queue:'end',
        beforeUpdate: function(){      
            if(typeof($('mainImage')) != "undefined"){
                $('mainImage').innerHTML = "<img src='/uploads/galleries/resized/"+ guid +"'/>"; 
            }else{
                var queue = Effect.Queues.get('global');
                queue.each(function(e) { e.cancel() });
            }
        }
    });
}

function loadingMainPic(){        
        Effect.Fade('mainImage',{
            duration:.2,
            queue:'front',
            afterFinish: function(){      
                $('spinner').style.display = "block";
            }
        });   
}
//////////////////////////////////