Template: Event

No edit summary
(only show icalendar link if page has ID)
 
(35 intermediate revisions by the same user not shown)
Line 6: Line 6:
  | location = Wikitext
  | location = Wikitext
  | coordinates = Coordinates
  | coordinates = Coordinates
| short_description = Wikitext
  | description = Wikitext
  | description = Wikitext
  | keywords = List (;) of String
  | keywords = List (,) of String
  | link = URL
  | link = URL
| image = File
  | attendee_count = Number
  | attendee_count = Number
  | wmau_cost = Number
  | wmau_cost = Number
Line 18: Line 20:
  | location = {{{location|}}}
  | location = {{{location|}}}
  | coordinates = {{{coordinates|}}}
  | coordinates = {{{coordinates|}}}
| short_description = {{{short_description|}}}
  | description = {{{description|}}}
  | description = {{{description|}}}
  | keywords = {{{keywords|}}}
  | keywords = {{{keywords|}}}
  | link = {{{link|}}}
  | link = {{{link|}}}
| image = {{{image|}}}
  | attendee_count = {{{attendee_count|}}}
  | attendee_count = {{{attendee_count|}}}
  | wmau_cost = {{{wmau_cost|}}}
  | wmau_cost = {{{wmau_cost|}}}
}}</includeonly>{{#default_form:event}}<!--
}}</includeonly>{{#default_form:event}}<!--
--><templatestyles src="Template:Event/style.css" /><!--


Supress the page title so we can redisplay it within the header box.
Suppress the page title so we can re-display it within the header box.
-->{{DISPLAYTITLE:<span style="font-size:12pt; font-weight:lighter">{{FULLPAGENAME}}</span>}}<!--
-->{{DISPLAYTITLE:<span style="display:none">{{FULLPAGENAME}}</span>}}<!--


Add region nav bar
Add page metadata (for sharing on Twitter etc.).
-->{{navigation header | title = {{{region|}}}
-->{{#seo:
|prev = {{#cargo_query:
| type        = event
  | tables            = events
| description = {{{short_description|{{{description|A Wikimedia Australia event.}}}}}}
  | fields            = CONCAT('[[',_pageName,']], ',DATE_FORMAT(start_date, '%e %M %Y'),'')=prev_event
| keywords    = {{{keywords|}}}
  | where            = _pageID != '{{PAGEID}}' AND region = '{{{region|{{{state|}}}}}}' AND start_date IS NOT NULL AND start_date < '{{{start_date}}}'
| image      = {{#if:{{{image|}}} | {{filepath:{{{image}}}|800}} }}
  | order by          = start_date DESC
}}<!--
  | limit            = 1
  | default          =
  | more results text =
}}
|next = {{#cargo_query:
  | tables            = events
  | fields            = CONCAT('[[',_pageName,']], ',DATE_FORMAT(start_date, '%e %M %Y'),'')=next_event
  | where            = _pageID != '{{PAGEID}}' AND region = '{{{region|{{{state|}}}}}}' AND start_date IS NOT NULL AND start_date > '{{{start_date}}}'
  | order by          = start_date ASC
  | limit            = 1
  | default          =
  | more results text =
}}
}}
<br />
<!--


Start the box.
Start the box.
--><div style="font-variant:small-caps; margin:0; border:1px solid #bbb; border-bottom:0; background-color:lightblue; padding:0 0.3em; display:flex">
--><div class="tpl-event-header"><!--
<div style="flex:1">'''Event'''</div>
  --><div class="tpl-event-header-left">'''Event'''</div><!--
<div style="flex:1; text-align:right">[[Events|View all events]]</div>
  --><div class="tpl-event-header-right">[[Events|View all events]]</div>
</div>
</div>
<div itemscope itemtype="http://schema.org/Event" style="border:1px solid #bbb; background-color:#efefef; padding:0.3em; text-align:center; margin:0"><!--
<div class="tpl-event-main" itemscope itemtype="http://schema.org/Event"><!--
 
  --><div class="tpl-event-top"><!--
 
    --><div class="tpl-event-name-etc"><!--
 
      Event title (page name):
      --><div class="tpl-event-name" itemprop="name">'''{{PAGENAME}}'''</div><!--
 
      Start time and date:
      --><div class="tpl-event-dates"><!--
        --><time itemprop="startDate" datetime="{{#time: c | {{{start_date|}}} }}"><!--
          -->{{#time: l j F Y, g:i a | @{{#expr: {{#time:U| {{{start_date|}}} }} + (60*60*{{{timezone}}}) }} }}<!--
        --></time> <!--
 
        End time (and date if on a different day):
        -->{{#if: {{{end_date|}}} | <!--
            -->{{#ifeq: {{#time: Y-m-d | {{{start_date}}} }} | {{#time: Y-m-d | {{{end_date}}} }} <!--


  Start time and state:
              --> | <!--
  --><time itemprop="startDate" datetime="{{#time: c | {{{start_date|}}} }}"><!--
              If same day:
    -->{{#time: l, j F Y, g:i a | @{{#expr: {{#time:U| {{{start_date|}}} }} + (60*60*{{{timezone}}}) }} }}<!--
              -->&#32;&ndash;&#32;<time itemprop="endDate" datetime="{{#time: c | {{{end_date|}}} }}"><!--
  --></time> <!--
                -->{{#time: g:i a | @{{#expr: {{#time:U| {{{end_date|}}} }} + (60*60*{{{timezone}}}) }} }}<!--
              --></time> <!--


  End time:
              --> | <!--
  -->{{#if: {{{end_date|}}}<!--
              If different day:
    -->| to <time itemprop="endDate" datetime="{{#time: c | {{{end_date|}}} }}">{{#time: g:i a | @{{#expr: {{#time:U| {{{end_date|}}} }} + (60*60*{{{timezone}}}) }} }}</time><!--
              --><br><em>to</em> <time itemprop="endDate" datetime="{{#time: c | {{{end_date|}}} }}"><!--
   -->}}<!--
                -->{{#time: l j F Y, g:i a | @{{#expr: {{#time:U| {{{end_date|}}} }} + (60*60*{{{timezone}}}) }} }}<!--
              --></time> <!--
 
            -->}}<!-- end ifeq
        -->}}<!--
 
      Timezone abbreviation:
      -->{{#if: {{{timezone|}}} |<!--
        -->&#32;<abbr title="Timezone: UTC+{{{timezone}}}"><!--
          -->{{#switch: {{{timezone}}}
            | 8    = AWST
            | 9.5  = ACST
            | 10  = AEST
            | 10.5 = ACST
            | 11   = AEDT
            | 12  = NZST
            | 13  = NZDT
            | UTC <!--
          -->}}<!--
        --></abbr><!--
      -->}}<!--
 
    --></div><!-- end .tpl-event-dates
 
    --></div><!-- end .tpl-event-name-etc
 
    --><div class="tpl-event-image">{{#if: {{{image|}}} |<!--
      -->[[File:{{{image}}}|right|frameless|600x400px]]<!--
    -->}}</div><!--
 
  --></div><!-- end .tpl-event-top


   Region (used to be called 'state'):
   Short description:
   --> ({{{region|{{{state|<span class="error">Please set 'region' parameter.</span>}}}}}})<!--
   --><div class="tpl-event-short-description" itemprop="description"><!--
    -->{{{short_description|{{{description|}}}}}}<!--
  --></div><!--


   Event title (page name):
   Description (long; only shown if short desc is given):
   --><div itemprop="name" style="font-size:2em">'''{{PAGENAME}}'''</div><!--
   -->{{#if: {{{short_description|}}} | <div class="tpl-event-description">{{{description|}}}</div> }}<!--


   Location:
   Location and region:
   -->{{#if: {{{location|}}} | <p class="event-venue" itemprop="location" itemscope itemtype="http://schema.org/Place"><!--
   -->{{#if: {{{location|}}}{{{region|{{{state|}}}}}} |<!--
    -->Location: <span itemprop="name">{{{location}}}</span><!--
    --><p class="event-venue" itemprop="location" itemscope itemtype="http://schema.org/Place"><!--
  --></p>}}<!--
      Region (used to be called 'state'):
   --><p>Share link: <span itemprop="url" class="plainlinks">{{#if: {{{link|}}} | {{{link}}} | {{canonicalurl:{{FULLPAGENAMEE}} }} }}</span></p><!--
      -->Region: {{{region|{{{state|<span class="error">Please set 'region' parameter.</span>}}}}}}<br><!--
  --><div itemprop="description">{{{description|}}}</div><!--
      -->{{#if: {{{location|}}} | Location: <span itemprop="name">{{{location}}}</span> }}<!--
    --></p><!--
  -->}}<!--
   --><p><!--
    -->Share link: <span itemprop="url" class="plainlinks">{{#if: {{{link|}}} | {{{link}}} | {{canonicalurl:{{FULLPAGENAMEE}} }} }}</span><!--
    --> {{#if: {{PAGEID}} | – or {{#cargo_query: tables=events |where=_pageId={{PAGEID}} |format=icalendar |link text=download calendar item (.ics) |fields=_pageID,_pageName,start_date=start,end_date=end,location,CONCAT('More information: https://wikimedia.org.au/wiki/Special:Redirect/page/',_pageID)=description |icalendar name={{FULLPAGENAME}} |filename=Wikimedia Australia event.ics }} }}<!--
  --></p><!--


   Keywords:
   Keywords:
   -->{{#if: {{{keywords|}}} | Keywords: <span style="font-variant:small-caps">{{#arraymap:{{{keywords|}}}|;|QQQ|[[QQQ]]| &middot; }} }}<!--
   -->{{#if: {{{keywords|}}} | <span class="tpl-event-keywords">Keywords: {{#arraymap:{{{keywords|}}}|,|QQQ|[[QQQ]][[Category:QQQ]]|&#32;&middot;&#32;}}</span> }}<!--


   Coordinates map:
   Coordinates map:
   -->{{#if: {{{coordinates|}}} <!--
   -->{{#if: {{{coordinates|}}} <!--
     --> | <div style="text-align:center; margin:1em;">{{#cargo_display_map: | point = {{{coordinates}}} | zoom = 14 | height = 200px | width = 100% }}</div> <!--
     --> | <div class="tpl-event-map">{{#cargo_display_map: | point = {{{coordinates}}} | zoom = 14 | height = 200px | width = 100% }}</div> <!--
   -->}}<!--
   -->}}<!--


--></div><!--
--></div><!-- end .tpl-event-main


Report:
Report:
Line 110: Line 155:


{{{event_metrics}}}
{{{event_metrics}}}
}}<!--
Add region navigation bar.
-->
<br/>
{{navigation header | title = {{{region|{{{state|}}}}}}
|prev = {{#cargo_query:
  | tables            = events
  | fields            = CONCAT('[[',_pageName,']]<br><small>',DATE_FORMAT(start_date, '%e %M %Y'),'</small>')=prev_event
  | where            = _pageID != '{{PAGEID}}' AND region = '{{{region|{{{state|}}}}}}' AND start_date IS NOT NULL AND start_date < '{{{start_date}}}'
  | order by          = start_date DESC
  | limit            = 1
  | default          =
  | more results text =
}}
|next = {{#cargo_query:
  | tables            = events
  | fields            = CONCAT('[[',_pageName,']]<br><small>',DATE_FORMAT(start_date, '%e %M %Y'),'</small>')=next_event
  | where            = _pageID != '{{PAGEID}}' AND region = '{{{region|{{{state|}}}}}}' AND start_date IS NOT NULL AND start_date > '{{{start_date}}}'
  | order by          = start_date ASC
  | limit            = 1
  | default          =
  | more results text =
}}
}}<!--
}}<!--



Latest revision as of 04:51, 13 March 2023

This template defines the table "events". View table.


[edit] Template documentation

Create a new event:

See also

Discuss this page