jQuery.fn.extend({
getUrlParam: function(strParamName){
	  strParamName = escape(unescape(strParamName));
	  
	  var returnVal = new Array();
	  var qString = null;
	  
	  if ($(this).attr("nodeName")=="#document") {
	  	//document-handler
		
		if (window.location.search.search(strParamName) > -1 ){
			
			qString = window.location.search.substr(1,window.location.search.length).split("&");
		}
			
	  } else if ($(this).attr("src")!="undefined") {
	  	
	  	var strHref = $(this).attr("src")
	  	if ( strHref.indexOf("?") > -1 ){
	    	var strQueryString = strHref.substr(strHref.indexOf("?")+1);
	  		qString = strQueryString.split("&");
	  	}
	  } else if ($(this).attr("href")!="undefined") {
	  	
	  	var strHref = $(this).attr("href")
	  	if ( strHref.indexOf("?") > -1 ){
	    	var strQueryString = strHref.substr(strHref.indexOf("?")+1);
	  		qString = strQueryString.split("&");
	  	}
	  } else {
	  	return null;
	  }
	  	
	  
	  if (qString==null) return null;
	  
	  
	  for (var i=0;i<qString.length; i++){
			if (escape(unescape(qString[i].split("=")[0])) == strParamName){
				
				returnVal.push(qString[i].split("=")[1]);
			}
			
	  }
	  
	  
	  if (returnVal.length==0) return null;
	  else if (returnVal.length==1) return returnVal[0].split('%20').join(' ');//remove any possible url %20 spaces;
	  else return returnVal;
	}
});

/* Start the ball rolling */
$(function(){
	adjustBasicCruiseline();
	adjustBasicShip();
});

/* Basic form select cruiselines based on region */
$(function(){
	$('form.cruise-search select.region ')
	.change(function(){					 
		adjustBasicCruiseline();
		adjustBasicShip();
	});
});

function adjustBasicCruiseline() {
	var regionValue = $('form.cruise-search select.region ').val();
	var cruiselineValue = $('form.cruise-search select.cruiseline ').val();
	var dropdownSet = $('form.cruise-search select.cruiseline ');

	if (regionValue.length == 0) {
		dropdownSet.emptySelect();
	}
	else {
		$.getJSON(
			'/traveltek/json/get_cruiselines.php',
			{region:regionValue, cruiseline:cruiselineValue},
			function(data){
				dropdownSet.loadSelect(data);
			}
		);
	}
}

$(function(){
	$('form.cruise-search select.cruiseline ')
	.change(function(){
		adjustBasicShip();
	});
});

function adjustBasicShip() {
	var regionValue = $('form.cruise-search select.region ').val();
	var cruiseLineValue = $('form.cruise-search select.cruiseline ').val();
	var shipValue = $('form.cruise-search select.ship ').val();
	var dropdownSet = $('form.cruise-search select.ship ');

	if (cruiseLineValue.length == 0) {
		dropdownSet.emptySelect();
	}
	else {	
		$.getJSON(
			'/traveltek/json/get_ships.php',
			{region:regionValue, cruiseline:cruiseLineValue, ship:shipValue},
			function(data){
				dropdownSet.loadSelect(data);
			}
		);
	}
}

$(function(){
		   
	$('#advance-inputs').addClass('hide');
	
	$('a.switch').click(function() {
		$('#advance-inputs').toggleClass('hide');
		if ($(this).html() == 'Show') {
			$(this).html('Hide');
		} else {
			$(this).html('Show');
		}
		return false;
  	})
});