.. include:: ../../Includes.txt .. _frontend-output-meeting-venues: ============== Meeting venues ============== Conference hotels and meeting and congress locations are tourist attractions of the record type ``meeting_venue``. They appear in every attraction list, render through the attraction templates, and carry the meeting data and meeting rooms on top. .. contents:: On this page :local: .. _frontend-output-meeting-venues-record-type: Record type =========== Every attraction carries :fluid:`{attraction.recordType}`: ``attraction`` or ``meeting_venue``. A meeting venue is a ``MeetingVenue`` model, a subclass of ``TouristAttraction``, so every getter of an attraction works for it too. Lists can be restricted to record types, see :ref:`frontend-output-plugin-settings-record-types`. .. _frontend-output-meeting-venues-templates: Templates ========= There is no template of its own. The attraction templates render venue output inside a record type condition, through partials: .. code-block:: html :caption: EXT:my_extension/Resources/Private/Templates/TouristAttraction/Show.fluid.html The stub :file:`TouristAttraction/Show` calls every venue partial under :file:`Partials/TouristAttraction/Venue/`; :file:`TouristAttraction/ListItem` calls :file:`TouristAttraction/MeetingVenueListItem`. A template override that lacks the condition renders a venue like any other attraction. .. _frontend-output-meeting-venues-model: Venue data ========== The venue fields come in groups, one partial each: meeting, lodging, gastronomy, visit, building, links, texts, relations, media and inline parking facilities. Some getters prepare the stored value: ``getMeetingFacilityMembers()`` and the other ``get…Members()`` getters The stored list as an array. An enum member is its ontology name, translated by the key ``content..`` in :file:`locallang.xlf`; see :file:`Venue/Fact/Members`. ``getDistances()`` The distances that are set, keyed ``airport``, ``cityCenter``, ``fair``, ``freeway`` and ``iceStation``. Each is an array of ``value`` and ``unit``: kilometres from 1000 metres on, metres below. ``getAdditionalType()`` The ThueCat type URI of the venue, for structured data. .. _frontend-output-meeting-venues-rooms: Meeting rooms ============= ``getMeetingRooms()`` returns the rooms the venue names, in upstream order. ``getMeetingRoomTable()`` returns every room once: each room of the venue, followed by the rooms reached only through it, such as the parts of a divisible hall. Render the room table and the room details from it; templates need no graph work. Meeting rooms have no detail page. The stub room table links each room to its details further down the page, at the anchor ``#meeting-room-``. The detail page cache is tagged with the rooms it rendered, so an import changing a room refreshes the venue page.