Template:POI: Difference between revisions

From ManyWays
No edit summary
No edit summary
 
(17 intermediate revisions by the same user not shown)
Line 1: Line 1:
<includeonly>
<noinclude>
Master POI template.
Stores schema data + renders public page.
</noinclude>


<!-- ===================== -->
<!-- ===================== -->
<!-- Semantic annotations -->
<!-- SEMANTIC DATA STORAGE -->
<!-- ===================== -->
<!-- ===================== -->


[[Has name::{{{name|}}}]]
{{#set:
| POI schema type = {{{poi_schema_type|}}}
 
| POI ID = {{{poi_id_txt|}}}
| POI Name = {{{poi_name_txt|}}}
| POI Slug = {{{poi_slug_txt|}}}
| POI Description = {{{poi_description_txt|}}}
 
| POI Latitude = {{{poi_latitude_num|}}}
| POI Longitude = {{{poi_longitude_num|}}}
| POI Region = {{{poi_region_txt|}}}
| POI Altitude (m) = {{{poi_altitude_m_num|}}}
| POI Distance from Start (m) = {{{poi_distance_from_start_m_num|}}}
 
| POI Images = {{{poi_images_arr|}}}
| POI Tags = {{{poi_tags_arr|}}}
| POI Route IDs = {{{poi_route_ids_arr|}}}
 
<!-- All other schema fields stored raw (no rendering) -->
 
| POI Population = {{{poi_population_num|}}}
| POI Has Albergue = {{{poi_has_albergue_bool|}}}
| POI Has Pharmacy = {{{poi_has_pharmacy_bool|}}}
| POI Has Supermarket = {{{poi_has_supermarket_bool|}}}
| POI Has Medical = {{{poi_has_medical_bool|}}}
| POI Quiet Level = {{{poi_quiet_level_num|}}}
| POI Services Available = {{{poi_services_available_arr|}}}


{{#if:{{{poi_type|}}}|[[Has POI type::{{{poi_type}}}]]}}
| POI From Town = {{{poi_from_town_txt|}}}
{{#if:{{{latitude|}}}|[[Has latitude::{{{latitude}}}]]}}
| POI To Town = {{{poi_to_town_txt|}}}
{{#if:{{{longitude|}}}|[[Has longitude::{{{longitude}}}]]}}
| POI Distance (km) = {{{poi_distance_km_num|}}}
{{#if:{{{elevation|}}}|[[Has elevation::{{{elevation}}}]]}}
| POI Elevation Gain (m) = {{{poi_elevation_gain_m_num|}}}
| POI Elevation Loss (m) = {{{poi_elevation_loss_m_num|}}}
| POI Difficulty = {{{poi_difficulty_txt|}}}
| POI Surface Type = {{{poi_surface_type_txt|}}}
| POI Waypoints = {{{poi_waypoints_arr|}}}
| POI Water Available = {{{poi_water_available_bool|}}}
| POI Shade Level = {{{poi_shade_level_num|}}}
| POI Notes = {{{poi_notes_txt|}}}


{{#arraymap:{{{route_ids|}}}|,|x|[[Is on route::x]]|,}}
| POI Accommodation Type = {{{poi_accommodation_type_txt|}}}
{{#arraymap:{{{tags|}}}|,|x|[[Has tag::x]]|,}}
| POI Price Min = {{{poi_price_min_num|}}}
| POI Price Max = {{{poi_price_max_num|}}}
| POI Currency = {{{poi_currency_txt|}}}
| POI Beds Total = {{{poi_beds_total_num|}}}
| POI Private Rooms = {{{poi_private_rooms_num|}}}
| POI Shared Rooms = {{{poi_shared_rooms_num|}}}
| POI Opening Months = {{{poi_opening_months_arr|}}}
| POI Check-in Time = {{{poi_check_in_time_txt|}}}
| POI Check-out Time = {{{poi_check_out_time_txt|}}}
| POI Booking Required = {{{poi_booking_required_bool|}}}
| POI Contact Phone = {{{poi_contact_phone_txt|}}}
| POI Website = {{{poi_website_txt|}}}
| POI Pet Friendly = {{{poi_pet_friendly_bool|}}}
| POI WiFi Available = {{{poi_wifi_available_bool|}}}


{{#if:{{{version|}}}|[[Has version::{{{version}}}]]}}
| POI Transport Type = {{{poi_transport_type_txt|}}}
{{#if:{{{language|}}}|[[Has language::{{{language}}}]]}}
| POI Bus Lines = {{{poi_bus_lines_arr|}}}
| POI Train Lines = {{{poi_train_lines_arr|}}}
| POI Taxi Available = {{{poi_taxi_available_bool|}}}
| POI Bike Transport = {{{poi_bike_transport_bool|}}}


[[Category:POI]]
| POI Medical Type = {{{poi_medical_type_txt|}}}
| POI Emergency Available = {{{poi_emergency_available_bool|}}}
| POI Languages Spoken = {{{poi_languages_spoken_arr|}}}
 
| POI Service Type = {{{poi_service_type_txt|}}}
| POI Opening Hours = {{{poi_opening_hours_txt|}}}
| POI Seasonal = {{{poi_seasonal_bool|}}}
 
| POI Food Type = {{{poi_food_type_txt|}}}
| POI Serves Breakfast = {{{poi_serves_breakfast_bool|}}}
| POI Serves Lunch = {{{poi_serves_lunch_bool|}}}
| POI Serves Dinner = {{{poi_serves_dinner_bool|}}}
| POI Serves Alcohol = {{{poi_serves_alcohol_bool|}}}
| POI Pilgrim Menu Available = {{{poi_pilgrim_menu_available_bool|}}}
| POI Price Range = {{{poi_price_range_txt|}}}
| POI Dietary Options = {{{poi_dietary_options_arr|}}}


<!-- ===================== -->
| POI Shop Type = {{{poi_shop_type_txt|}}}
<!-- Display -->
<!-- ===================== -->


<div class="poi-profile">
| POI Period = {{{poi_period_txt|}}}
| POI Year Built = {{{poi_year_built_num|}}}
| POI Year Abandoned = {{{poi_year_abandoned_num|}}}
| POI Historical Theme = {{{poi_historical_theme_txt|}}}
| POI UNESCO Status = {{{poi_unesco_status_bool|}}}
| POI Entry Required = {{{poi_entry_required_bool|}}}


<div class="poi-header">
| POI Religion = {{{poi_religion_txt|}}}
| POI Site Type = {{{poi_site_type_txt|}}}
| POI Mass Times = {{{poi_mass_times_txt|}}}
| POI Confession Available = {{{poi_confession_available_bool|}}}
| POI Relics Present = {{{poi_relics_present_bool|}}}
| POI Quiet Hours = {{{poi_quiet_hours_txt|}}}


<div class="poi-image">
| POI Culture Type = {{{poi_culture_type_txt|}}}
{{#if:{{{image|}}}|
| POI Events = {{{poi_events_arr|}}}
[[File:{{{image}}}|600px]]
}}
</div>


<div class="poi-header-text">
| POI Museum Type = {{{poi_museum_type_txt|}}}
<h1>{{{name|{{PAGENAME}}}}}</h1>
| POI Entry Price = {{{poi_entry_price_num|}}}
<p class="poi-type">{{{poi_type}}}</p>
| POI Free Days = {{{poi_free_days_arr|}}}


{{#if:{{{short_description|}}}|
| POI Nature Type = {{{poi_nature_type_txt|}}}
<p class="poi-short-description">{{{short_description}}}</p>
| POI Protected Area = {{{poi_protected_area_bool|}}}
}}
| POI Access Difficulty = {{{poi_access_difficulty_txt|}}}
| POI Best Season = {{{poi_best_season_txt|}}}


</div>
| POI Farm Type = {{{poi_farm_type_txt|}}}
| POI Visits Allowed = {{{poi_visits_allowed_bool|}}}
| POI Products = {{{poi_products_arr|}}}


</div>
| POI Workspace Type = {{{poi_workspace_type_txt|}}}
| POI WiFi Speed = {{{poi_wifi_speed_num|}}}
| POI Power Available = {{{poi_power_available_bool|}}}
| POI Day Pass Available = {{{poi_day_pass_available_bool|}}}
| POI Price = {{{poi_price_num|}}}
}}


<div class="poi-meta">
<!-- ===================== -->
<!-- HERO SECTION -->
<!-- ===================== -->


<ul>
<div class="poi-hero">
<li><strong>Coordinates:</strong> {{{latitude}}}, {{{longitude}}}</li>
{{#if:{{{elevation|}}}|<li><strong>Elevation:</strong> {{{elevation}}} m</li>}}
{{#if:{{{route_ids|}}}|<li><strong>Routes:</strong> {{{route_ids}}}</li>}}
{{#if:{{{tags|}}}|<li><strong>Tags:</strong> {{{tags}}}</li>}}
</ul>


<div class="poi-hero-image">
{{#if: {{{poi_images_arr|}}} |
[[File:{{#explode:{{{poi_images_arr}}}|,|0}}|400px]]
}}
</div>
</div>


{{#if:{{{description|}}}|
<div class="poi-hero-text">
<h1>{{{poi_name_txt}}}</h1>
<div class="poi-description">
<div class="poi-description">
<h2>Overview</h2>
{{{poi_description_txt}}}
{{{description}}}
</div>
</div>
}}
<div class="poi-way-sections">
{{{way_sections|}}}
</div>
</div>


</div>
</div>


</includeonly>
<hr/>


<noinclude>
<!-- ===================== -->
<!-- TYPE SPECIFIC RENDER -->
<!-- ===================== -->


Public POI profile template.
{{#switch: {{{poi_schema_type}}}


Parameters:
| food_place = {{POI_View_Food_Place}}
| accommodation = {{POI_View_Accommodation}}
| town = {{POI_View_Town}}
| transport_stop = {{POI_View_Transport}}
| medical_place = {{POI_View_Medical}}
| service_point = {{POI_View_Service}}
| shop = {{POI_View_Shop}}
| historical_site = {{POI_View_Historical}}
| religious_site = {{POI_View_Religious}}
| cultural_site = {{POI_View_Cultural}}
| museum = {{POI_View_Museum}}
| natural_site = {{POI_View_Natural}}
| agricultural_site = {{POI_View_Agricultural}}
| workspace = {{POI_View_Workspace}}
| animal_service = {{POI_View_AnimalService}}
| special_interest = {{POI_View_SpecialInterest}}


- name
| #default = <div class="poi-warning">Unknown POI schema type</div>
- poi_type
}}
- short_description
- description
- image (filename)
- latitude
- longitude
- elevation
- route_ids (comma separated)
- tags
- version
- language
- way_sections (raw template calls)


</noinclude>
[[Category:POI]]

Latest revision as of 17:09, 13 January 2026

Master POI template. Stores schema data + renders public page.




{{{poi_name_txt}}}

{{{poi_description_txt}}}



Unknown POI schema type