It is the main page shown to users after coming from the HotelStart page. It displays hotel offers received from providers defined for the current using Contract. The number of hotels displayed on one page is configured as well by the NumberOfOfferGroups setting in the Hotel/List/Customize section.

HotelList page in R3Hotel_3 doesn’t contain ASP Postbacks – all functionalities are based on params taken from url and list of hotels stored in memory as JSON object. In R3Hotel_3 sorting and filtering time is much shorter (comparing to R3Hotel_2) - it’s because all operations are executed on client (browser) side.

JSON hotel list object

Example of JSON hotel list object (please notice that all chars are url encoded)

var allHotelCollection = [{"PID":250855,"Prov":"VALADIS","Name":"Apart (schoenefeld)","Cat":3,"Recom":0,"RecomProv":0,"RecomText":null,"ProvDisc":null,"PromoText":"Test Yield2 promotion.","Desc":"Das Hotel liegt nahe zum Flughafen Sch\u00F6nefeld und in leichter Fuweite zu einer S-Bahn Station, die sie direkt ins Zentrum von Berlin bringt.. Die Zimmer sind","AC":0,"Parking":0,"PoolIn":0,"PoolOut":0,"Spa":0,"WLAN":0,"Rooms":[{"RTC":"DR","room":"Doppel","MLC":"BB","meal":"Fr\u00FChst\u00FCck","cnt":"1"}],"Price":"63","CUC":"EUR","Geo":{"lat":"52.398","lon":"13.537"},"Loc":"Berlin - Flughafen Sch\u00F6nefeld","Thumb":""},{"PID":250829,"Prov":"VALADIS","Name":"Quality Hotel Berlin Tegel","Cat":3,"Recom":0,"RecomProv":0,"RecomText":null,"ProvDisc":null,"PromoText":"Test Yield2 promotion.","Desc":"Stadt.\n","AC":0,"Parking":0,"PoolIn":0,"PoolOut":0,"Spa":0,"WLAN":0,"Rooms":[{"RTC":"DR","room":"Doppel","MLC":"BB","meal":"Fr\u00FChst\u00FCck","cnt":"1"}],"Price":"77","CUC":"EUR","Geo":{"lat":"52.562000000000000","lon":"13.355000000000000"},"Loc":"Berlin - Flughafen Tegel","Thumb":"”}]


unique hotel ID in our system


provider name


Hotel name


hotel category


indicates if hotel is recommended by our client (1) or not (0) (configurable through R3Admin


indicates if hotel is recommended by provider (1) or not (0)


if hotel is recommended by provider this property may contain recommendation text


this property may contain provider discount text (i.e. “Book 4 nights pay for 3”)


promo text from our client (configurable through R3Admin)


short hotel description


indicates if hotel has Air Condition (1) or not (0)


indicates if hotel has parking (1) or not (0)


indicates if hotel has indoor pool (1) or not (0)


indicates if hotel has outdoor pool (1) or not (0)


indicates if hotel has Spa (1) or not (0)


indicates if hotel has access to Wireless LAN (1) or not (0)


owest room price in hotel


price currency


location description


URI to thumbnail


contains hotel geo location a) lat – geo latitude b) lon – geo longitude


JSON object with rooms description a) RTC - room type code b) room - decoded room type code c) MLC - meal code d) meal - decoded meal code e) cnt - number of rooms

– –



Displaying of the google map control is configured in the R3Admin by the GoogleMapControl setting in the Hotel/List/Customize section. All hotels on list (with valid geolocation) are displayed on map. Number of hotels on map may vary depends on filtering level. Map may contain both hotel and cluster icons. Cluster contains more than one hotel and is displayed when zoom level is to small to show hotels with similar locations. It’s necessary to avoid situation where one hotel is covered by another. Map will be zoomed in when cluster clicked. Cloud with hotel details will be displayed when user clicks on hotel icon. Cloud contains hotel information like: hotel name, category , short description, lowest available price and link to HotelRoomSelection page.

Icons on google map are divided into 3 price groups and price legend is shown below the map if:

Otherwise all hotels will be shown with default price group (cheap) and without price legend.

There are two methods how price group diversion is made.

1. At the beginning we make a diversion basing on statistical median function as shown on picture. Hotel price grouping.png.

2. If first and third price group range is greater than MinimumPriceGroupRange value (default 1) generated price groups are returned. (Dynamic price group range), otherwise returned price groups have exactly the same price range (Static price group range)

For example: We have three hotels with prices - 1 EUR, 5 EUR and 10 EUR

Statistical median function (Dynamic price group range) will generate three price groups:

Because cheap (and expensive) group range is lower than MinimumPriceGroupRange we are going to return price groups with static price group range

Three groups with same price range (3 EUR) will be generated:

Destination info cities

An additional information (e.g. regarding city tax) for currently searched location (TLC) starting from HotelList up to HotelConfirm pages. This information is also appended to ‘Please Note’ list during booking to make it available in Castor.

A list of locations (TLC's) that require additional information to be presented on IBE can be set in R3Admin application (Options.Settings.Hotel.General.Customize.DestinationInfoCities)

An information text can be customize by editing text code: ‘destination_info_TLC’ where TLC is the TLC code of location listed in the setting.

Filtering hotels by name

User can filter up hotels on the HotelList by typing the hotel name in the "Refine your search" box. After typing 3 first letters user see a dropdown list of the hotels which names contains typed sequence of the letters. Than user can choose one of the hotels he or she want.

The HotelList supports Deeplinks


When sorting changes, the ibe always jumps back to page one, in order to show e.g. the cheapest offers.

Info from debug

-- [Warning] Hotel description not found. Check database procedure: PGetHotelsV3, cid = 2344, LID = -4821, TLC = LON, PRC = 1217098, provider: TOURICO [at] HotelContent: If hotel is not active – only sddl changes or manually database changes - can resolve problem If hotel i s active - must be added to zone structure in Region editor:

Products/Hotel/HotelList (last edited 2014-01-23 11:15:22 by TomaszDrozdzik)