if (document.getElementById('base'))
  BASE_URL = document.getElementById('base').href;
else
  alert('Nieje nastavený BASE tag v hlavičke dokumentu!');

// uses in template: base
function is_email(email)
{
	var word = "[-!#-'*+/-9=?A-Z^-~\x80-\xFF]+";
 	var pattern = "^(" + word + "\.)*" + word + "@(" + word + "\.)+" + word + "$";
	var reg = new RegExp(pattern, '');
	return reg.test(email);
}

function clearSearchData()
{
  new Ajax.Request(BASE_URL+'ajax.php?action=clearSearchData',{
        parameters: {},
        method: 'post',
        onComplete: function(transport)
        {
        }
    });
}

function toogleNewsletter()
{
  object = document.getElementById('newsletterDiv');
  if (object.style.display == 'none')
  {
      var mail = document.getElementById('newsletter-input').value;
      if (!mail) mail = '';
      new Ajax.Request(BASE_URL+'ajax.php?action=newsletterCats',{
          parameters: {mail: mail},
          method: 'post',
          onComplete: function(transport)
          {
            object.innerHTML = transport.responseText;
            object.style.display = 'block';
            //alert(mail + object.style.display + object.innerHTML);
          }
      });
  }
  else
    object.style.display = 'none';
}

function addmail(mail)
{
  mail = document.getElementById('newsletter-input').value;

  if (!is_email(mail))
  {
    alert('Zadaný e-mail má nesprávny formát!'+"\n\n"+'príklad: email@domena.sk');
  }
  else
  {
    new Ajax.Request(BASE_URL+'ajax.php?action=newsletter',{
          parameters: {mail: mail},
          method: 'post',
          onComplete: function(transport)
          {
            switch(transport.responseText)
            {
              case '0':
                alert('E-mailová adresa bola úspešne pridaná na odber newsletteru!'+"\n"+'Deaktivovať si ho môžete pomocou odkazu na konci newsletteru.');
        			  document.getElementById('newsletter-input').value = '';
        			  break;
              default:
                alert('Pri pridávaní E-mailu sa vyskytla chyba!'+"\n"+'Zadaný e-mail sa už prvadepodobne v databáze nachádza!');
            }
          }
      });
  }
}

//uses in pages/header_search.tpl
function getSearchLocations(dest)
{
	new Ajax.Request(BASE_URL+'ajax.php?action=getSearchLocations',{
    	method: 'post',
      parameters: {id: dest},
    	onComplete: function(transport)
      {
        var content = '';
    		if(transport.responseText != '') {
    			content = transport.responseText;
    		}
    		document.getElementById('locations').innerHTML = '<select name="tourSearch[location]" id="locations-select"><option value="0">nezáleží</option>'+content+'</select>';
      }
    });
}

//uses in pages/review_add.tpl
function getDestinations()
{
	new Ajax.Request(BASE_URL+'ajax.php?action=getLocations',{
    	method: 'post',
      parameters: {id: '1'},
    	onComplete: function(transport)
      {
        var content = '';
    		if(transport.responseText != '') {
    			content = transport.responseText;
    		}
    		document.getElementById('pDestinationTd').innerHTML = '<select name="destination" id="pDestination" onchange="getLocations(this.value);"><option value="0">- vyberte destináciu -</option>'+content+'</select>';
        getLocations(document.getElementById('pDestination').value);
      }
    });
}

function getLocations(destination)
{
	new Ajax.Request(BASE_URL+'ajax.php?action=getLocations',{
    	method: 'post',
      parameters: {id: destination},
    	onComplete: function(transport)
      {
        var content = '';
    		if(transport.responseText != '') {
    			content = transport.responseText;
    		}
    		document.getElementById('pLocationTd').innerHTML = '<select name="location" id="pLocation" onchange="getHotels(this.value);"><option value="0">- vyberte lokalitu -</option>'+content+'</select>';
        getHotels(document.getElementById('pLocation').value);
        if (document.getElementById('pLocation').value == 0)
          getHotels(document.getElementById('pDestination').value);
      }
    });
}

function getHotels(destination)
{
	new Ajax.Request(BASE_URL+'ajax.php?action=getHotels',{
    	method: 'post',
      parameters: {id: destination},
    	onComplete: function(transport)
      {
        var content = '';
    		if(transport.responseText != '') {
    			content = transport.responseText;
    		}
    		//alert(content);
    		document.getElementById('pHotelTd').innerHTML = '<select name="hotel"><option value="0">- vyberte hotel -</option>'+content+'</select>';
      }
    });
}


function getReviewDestinations(id)
{
	new Ajax.Request(BASE_URL+'ajax.php?action=getReviewLocations',{
    	method: 'post',
      parameters: {id: '1'},
    	onComplete: function(transport)
      {
        var content = '';
    		if(transport.responseText != '') {
    			content = transport.responseText;
    		}
    		document.getElementById('pDestinationTd'+id).innerHTML = '<select name="destination" id="pDestination'+id+'" onchange="getReviewLocations(this.value,\''+id+'\');"><option value="0">- vyberte destináciu -</option>'+content+'</select>';
        getLocations(document.getElementById('pDestination'+id).value);
      }
    });
}

function getReviewLocations(destination,id)
{
	new Ajax.Request(BASE_URL+'ajax.php?action=getReviewLocations',{
    	method: 'post',
      parameters: {id: destination},
    	onComplete: function(transport)
      {
        var content = '';
    		if(transport.responseText != '') {
    			content = transport.responseText;
    		}
    		document.getElementById('pLocationTd'+id).innerHTML = '<select name="location" id="pLocation'+id+'" onchange="getReviewHotels(this.value,\''+id+'\');"><option value="0">- vyberte lokalitu -</option>'+content+'</select>';
        getReviewHotels(document.getElementById('pLocation'+id).value);
        if (document.getElementById('pLocation'+id).value == 0)
          getReviewHotels(document.getElementById('pDestination'+id).value);
      }
    });
}

function getReviewHotels(destination,id)
{
	new Ajax.Request(BASE_URL+'ajax.php?action=getReviewHotels',{
    	method: 'post',
      parameters: {id: destination},
    	onComplete: function(transport)
      {
        var content = '';
    		if(transport.responseText != '') {
    			content = transport.responseText;
    		}
    		//alert(content);
    		document.getElementById('pHotelTd'+id).innerHTML = '<select name="hotel"><option value="0">- vyberte hotel -</option>'+content+'</select>';
      }
    });
}
