

howManyHotelsToDisplay=15;

//Set_Cookie( 'mycookie', 'visited 9 times', 30, '/', '', '' );
function Set_Cookie( name, value, expires, path, domain, secure )
{
// set time, it's in milliseconds
var today = new Date();
today.setTime( today.getTime() );

/*
if the expires variable is set, make the correct
expires time, the current script below will set
it for x number of days, to make it for hours,
delete * 24, for minutes, delete * 60 * 24
*/
if ( expires )
{
expires = expires * 1000 * 60 * 60 * 24;
}
var expires_date = new Date( today.getTime() + (expires) );

document.cookie = name + "=" +escape( value ) +
( ( expires ) ? ";expires=" + expires_date.toGMTString() : "" ) +
( ( path ) ? ";path=" + path : "" ) +
( ( domain ) ? ";domain=" + domain : "" ) +
( ( secure ) ? ";secure" : "" );
}

function Get_Cookie( check_name ) {
	// first we'll split this cookie up into name/value pairs
	// note: document.cookie only returns name=value, not the other components
	var a_all_cookies = document.cookie.split( ';' );
	var a_temp_cookie = '';
	var cookie_name = '';
	var cookie_value = '';
	var b_cookie_found = false; // set boolean t/f default f

	for ( i = 0; i < a_all_cookies.length; i++ )
	{
		// now we'll split apart each name=value pair
		a_temp_cookie = a_all_cookies[i].split( '=' );


		// and trim left/right whitespace while we're at it
		cookie_name = a_temp_cookie[0].replace(/^\s+|\s+$/g, '');

		// if the extracted name matches passed check_name
		if ( cookie_name == check_name )
		{
			b_cookie_found = true;
			// we need to handle case where cookie has no value but exists (no = sign, that is):
			if ( a_temp_cookie.length > 1 )
			{
				cookie_value = unescape( a_temp_cookie[1].replace(/^\s+|\s+$/g, '') );
			}
			// note that in cases where cookie is initialized but no value, null is returned
			return cookie_value;
			break;
		}
		a_temp_cookie = null;
		cookie_name = '';
	}
	if ( !b_cookie_found )
	{
		return null;
	}
}  //end Get_Cookie


function unique_first(a){       //keeps first appearance of the element
   var r = new Array();
   o:for(var i = 0, n = a.length; i < n; i++)
   {
      for(var x = 0, y = r.length; x < y; x++)
      {
         if(r[x]==a[i]) continue o;
      }
      r[r.length] = a[i];
   }
   return r;
}
function unique_last(a)   //keeps LAST appearance of the element
{
   var r = new Array();
   o:for(var i = 0, n = a.length; i < n; i++) {
      for(var x = i + 1 ; x < n; x++)
      {
         if(a[x]==a[i]) continue o;
      }
      r[r.length] = a[i];
   }
   return r;
}





/*=====================================================================*/
/*=====================  START hotel stuff     ========================*/
/*=====================================================================*/

function displayVisitedHotels(){
    if( Get_Cookie('c_visitedHotels') ){
      var str_allVisitedHotels =  Get_Cookie('c_visitedHotels')
      var arr_allVisitedHotels =  str_allVisitedHotels.split(',')
      var arr_reverse_allVisitedHotels = arr_allVisitedHotels.reverse()
      var str_html_allVisitedHotels=''

      for(var i=0; i<arr_reverse_allVisitedHotels.length; i++){
        if(i<howManyHotelsToDisplay){
        str_html_allVisitedHotels+='<div>Hotel: ' + arr_reverse_allVisitedHotels[i] + ' <a class="fav" href="javascript:addFavouriteHotelToCookie('+ arr_reverse_allVisitedHotels[i] +')">Add as Favourite</a>       </div>'
        //alert(arr_reverse_allVisitedHotels[i])
        //------------- ajax
  /**/      ajax_allVisitedHotels(arr_reverse_allVisitedHotels[i],'visitedHotelsAjax','vis')

        }else{
          break
          }
      }
     //document.getElementById('visitedHotels').innerHTML=str_html_allVisitedHotels;
    }
    resetContainerHTML('visitedHotelsAjax')
     hideTitleFavVis()
}


function addFavouriteHotelToCookie(hotel_id){
  if( Get_Cookie('c_favouriteHotels') ){
      var str_allFavouriteHotels =  Get_Cookie('c_favouriteHotels')
      var arr_allFavouriteHotels =  str_allFavouriteHotels.split(',')
      arr_allFavouriteHotels.push(hotel_id)
      arr_unique_allFavouriteHotels = unique_last(arr_allFavouriteHotels)
      var str_new_allFavouriteHotels = arr_unique_allFavouriteHotels.join(',')
      Set_Cookie('c_favouriteHotels',str_new_allFavouriteHotels,30,'/','','')
  }else{
      Set_Cookie('c_favouriteHotels',hotel_id,30,'/','','')
  }
  displayFavouriteHotels()  //display the hotels
}  //end addFavouriteHotelToCookie


function displayFavouriteHotels(){
  var str_html_allFavouriteHotels=''
    if( Get_Cookie('c_favouriteHotels') ){
      var str_allFavouriteHotels =  Get_Cookie('c_favouriteHotels')
      var arr_allFavouriteHotels =  str_allFavouriteHotels.split(',')
      var arr_reverse_allFavouriteHotels = arr_allFavouriteHotels.reverse()
      /**/ resetContainerHTML('favouriteHotelsAjax')
      for(var i=0; i<arr_reverse_allFavouriteHotels.length; i++){
        str_html_allFavouriteHotels+='<div>Hotel: ' + arr_reverse_allFavouriteHotels[i] + ' <a class="fav" href="javascript:removeFavouriteHotel('+ arr_reverse_allFavouriteHotels[i] +')">Remove from Favourites</a>       </div>'
        //alert(arr_reverse_allVisitedHotels[i])
        //------------------- ajax -------------------

/**/        ajax_allVisitedHotels(arr_reverse_allFavouriteHotels[i],'favouriteHotelsAjax','fav')

      }
    }
    //document.getElementById('favouriteHotels').innerHTML=str_html_allFavouriteHotels;
    resetContainerHTML('favouriteHotelsAjax')
     hideTitleFavVis()
} //end displayFavouriteHotels


function arrayRemoveElement(arrayName,arrayElement) {
    for(var i=0; i<arrayName.length;i++ ){
        if(arrayName[i]==arrayElement){  arrayName.splice(i,1); }
      }
  }


function removeFavouriteHotel(hotel_id){
    if( Get_Cookie('c_favouriteHotels') ){
      var str_allFavouriteHotels =  Get_Cookie('c_favouriteHotels')
      var arr_allFavouriteHotels =  str_allFavouriteHotels.split(',')
      arrayRemoveElement(arr_allFavouriteHotels, hotel_id)
      arr_unique_allFavouriteHotels = unique_last(arr_allFavouriteHotels)
      var str_new_allFavouriteHotels = arr_unique_allFavouriteHotels.join(',')
      Set_Cookie('c_favouriteHotels',str_new_allFavouriteHotels,30,'/','','')
    }
    displayFavouriteHotels()  //display the hotels
}
/*************************************************************************/
/*************************************************************************/
/************************************************************************
*/


//loadingAjaxImg = '<img src="ajax-loader.gif" /> ';
function getAjaxData(hid){
   //$('#responseAjax').html(loadingAjaxImg);  //LOADING gif
   requestPage = 'hotel_details.php?hotelid=' + hid
        $.post(requestPage, function(data){
            $('#responseAjax').html(data);
          });
}

function resetContainerHTML(hcontainer){
 $('#' + hcontainer).empty();
 //$('#' + hcontainer).html(loadingAjaxImg);  //LOADING gif
}

function ajax_allVisitedHotels(hid,hcontainer,vis_fav){
/*vis_fav = 'vis' or 'fav'*/
   requestPage = 'hotel_details.php?hotelid=' + hid + '&visfav='+ vis_fav
   //alert(requestPage)
        $.post(requestPage, function(data){
            $('#' + hcontainer).append(data);
          });
}


function hideTitleFavVis(){
     $('#visitedHotelsAjax_title').css({'display': 'block'})
      $('#favouriteHotelsAjax_title').css({'display': 'block'})

      //VIS
      if( Get_Cookie('c_visitedHotels') ){
        var str_allVisitedHotels =  Get_Cookie('c_visitedHotels')
        if (str_allVisitedHotels.length>0){
        }else{
          $('#visitedHotelsAjax_title').css({'display': 'none'})
        }
      }else{
         $('#visitedHotelsAjax_title').css({'display': 'none'})
      }

      //FAV
      if( Get_Cookie('c_favouriteHotels') ){
        var str_allVisitedHotels =  Get_Cookie('c_favouriteHotels')
        if (str_allVisitedHotels.length>0){

        }else{
          $('#favouriteHotelsAjax_title').css({'display': 'none'})
        }
      }else{
         $('#favouriteHotelsAjax_title').css({'display': 'none'})
      }
}


   $(document).ready(function() {

   });


