var CACHE_HOTELES_COMPARAR = {}; function getIdComparar(ID, tipo){ if( typeof(tipo)=='undefined' )tipo='dispo'; return 'comparar_' +tipo +'_'+ ID; } function getHotelId(ID, tipo){ // Creamos un identificador unívoco para todos los hoteles var IDBuscar = getIdComparar(ID,tipo); // Buscamos en las caches var datosHotel = CACHE_HOTELES_COMPARAR[IDBuscar]; if( datosHotel )return CACHE_HOTELES_COMPARAR[IDBuscar]; var datosHotel = sessionStorage.getItem(IDBuscar); if( datosHotel ){ if( datosHotel=='ajax' )return datosHotel; return JSON.parse(datosHotel); } var hotelEncontrado = null; switch( tipo ){ case 'ajax': var urlPeticion = 'detallesConDispo.php?IDE='+ ID +'&aj=json'; CACHE_HOTELES_COMPARAR[IDBuscar] = 'ajax'; sessionStorage.setItem(IDBuscar, 'ajax'); $.ajax({ type: 'POST', url: urlPeticion, dataType: "json", success: function(data){ if( data && data.ID ){ var IDBuscar = getIdComparar(data.ID,'ajax'); CACHE_HOTELES_COMPARAR[IDBuscar] = data sessionStorage.setItem(IDBuscar, JSON.stringify(data)); } } }); return null; break; case 'dispo': default: $.each( DISPO_ORIG_HOTEL, function(iHotel, hotel){ if( hotel.ID==ID ){ hotelEncontrado = hotel; hotelEncontrado.IDConsulta=enlaceDetallesConDispo; } }); break; } CACHE_HOTELES_COMPARAR[IDBuscar] = hotelEncontrado; sessionStorage.setItem(IDBuscar, JSON.stringify(hotelEncontrado)); return hotelEncontrado; } function delHotelId(ID, tipo){ // Creamos un identificador unívoco para todos los hoteles var IDBorrar = getIdComparar(ID,tipo) delete( CACHE_HOTELES_COMPARAR[IDBorrar] ); sessionStorage.removeItem(IDBorrar); } /***** LISTADO DE HOTELES SELECCIONADOS *****/ function getElementsComparar(){ var strComparar = sessionStorage.getItem("hoteles-comparar"); if( !strComparar )vComparar = []; else vComparar = JSON.parse(strComparar); return vComparar; } function isElementComparar(ID){ var vComparar = getElementsComparar(); for(var i=0; i