Module:Performances/doc

From Angelina Jordan Wiki

This is the documentation page for Module:Performances

Work in Progress!!

This module is supposed to provide access to the list of performances Angelina did. At the heart of it is a very generic, configurable table-generator, that could also be used in different contexts.

Usage

Overview

{{#invoke: Performances | createTable                                 -- createTable is the generic table generator
  |page=Data:Performances.json                                        -- link to page with JSON data
  |headers=Song,Date,Type,With,Video                                  -- List of titles used in the group section headers
  |keys=[[<song>]],{{d|<date>},<type>,<with>,[<url> <song> - <event>] -- computed data items corresponding to those titles
  |sort=<date>                                                        -- computed sort keys for sorting outer table
  |sort1=<date>                                                       -- (optional): outer sortkey, same as inner if omitted
  |filters=date:2018,event:Kongsberg                                  -- filters to select what items are displayed
  |char_limit=7                                                       -- The amount of characters of the sort key considered for grouping the sections
  |char_limit1=4                                                      -- (optional): outer char limit, no outer grouping if ommited 
  |caption=Kongsberg 2018 by Month                                    -- Title displayed in Header of outer Table
  |group_sort=<date> ! <type> ! <pos>                                 -- how the group section sub-tables are sorted
  |id=1                                                               -- Id needed if multiple tables are generated within a page
}}

Options

page: Provides page that contains JSON formated input data.

headers: Comma seperated list of titles used in the group section headers.

keys: Comma seperated list of computed fields used for the colums in group sections defined by the corrosponding headers. Number of entries should match the number of headers.

Key names representing data are enclosed in "<",">" brackets. Each field can reference multiple keys. Other text will be still interpreted e.g. as templates.

sort: Computed sort fields for sorting outer table, and for labeling of section names. Same syntax as for keys.

char_limit (optional): The amount of characters of the sort key considered for grouping the sections. This will also affect the displayed section name.

filters: Comma seperated list of filters to select what items are displayed. A filter is described by "keyname:values". Alternatives within an filter value item can be described with "/". Negations can be described with "!( . )".

sort1 (optional): Outer sortkey. If ommited, the inner sort key will be used.

char_limit1 (optional): The amount of characters of the sort key considered for the outer grouping. This will also affect the displayed section name.

If ommited, no outer grouping will be performed.

id: A unique Id for each table is needed if multiple tables are generated within a page, to provide a basis for unique section ids.

caption (optional): Title displayed in the header of the outer table

group_sort: Computed field. that determines how the group section sub-tables are sorted. Same syntax as for keys.

Features

The generated table may have one or two levels of grouping, and up to three levels of sorting. It has the follwing structure, with the outer grouping being optional (click on the [n Items] buttons to reveal the inner collapsed tables):

Caption (provided as parameter)
1 (outer grouping level seperator)
A (inner grouping level header) [2 Items]
B (inner grouping level header) [1 Item]
2 (outer grouping level seperator)
C (inner grouping level header) [1 Item]

The inner tables are enclosed in

<div youtube-player-placeholder> ... </div> 

tags, which can optionally be used by Javascript code in the user common.js to attach an embedded YouTube player to each section, that is loaded with a playlist of any YouTube video link contained in that section. Clicking on those links will then also load and start the linked video in that player. You can get that code currently at my User:most2dot0/common.js.

Each grouping separator/header will set an anchor id, so that the table rows can be jumped at with internal references, e.g. C.

There is also code available, that will expand the inner table of a jump target when jumped to.

ToDo

  • Add data from supplemental lists, like (Video)MetaData, SongsToVideos, etc., by merging their data into the provided base list, e.g. as "url-title", "url-uploadDate" fields. This should be done generically, e.g. by providing the field to match with the supplumentals list page name.
  • Make sorting more flexible, e.g. by applying regex substitutions to data values before being sorted.
  • Have an option, to not start collapsed (usefull for small tables)

Examples

Multiple Filters, combined as AND

{{#invoke: Performances | createTable
  |page=Data:Performances.json
  |headers=Song,Date,Type,With,Video
  |keys=[[<song>]],{{d|<date>}},<type>,<with>,[<url> <song> - <event>]
  |sort=<date>
  |filters=date:2018,event:Kongsberg
  |char_limit=7
  |caption=Kongsberg 2018 by Month
  |group_sort=<date> ! <type> ! <pos>
  |id=1
}}
Kongsberg 2018 by Month
2018-06 [12 Items]
2018-07 [22 Items]


Single Event

{{#invoke: Performances | createTable
  |page=Data:Performances.json
  |headers=Song,Date,Type,Video
  |keys=[[<song>]],{{d|<date>}},<type>,[<url> <song> - <event>]
  |sort=<event>
  |group_sort=<date> ! <type> ! <pos>
  |filters=event:Allsang
  |id=2
}}

Alternatives in Filters, combinded as OR

{{#invoke: Performances | createTable
  |page=Data:Performances.json
  |headers=Song,Date,Type,Comment
  |keys=[[#<song>|<song>]],{{d|<date>}}: <pos>,<type> <duration> [<url> play],<comment>; <with>
  |sort=[[<event>]]
  |caption=Repetitive Events
  |group_sort=<date> ! <type> ! <pos> ! <song>
  |filters=event:Allsang på Grensen/TV 2's Artist Gala/New Year Concert/Bjerke Lydstudio
  |id=3
}}
Repetitive Events
Allsang på Grensen [7 Items]
Bjerke Lydstudio [8 Items]
TV 2's Artist Gala [2 Items]

Demonstrating Different Outer Sorting/Grouping and Negation in Filters

In the following example, the highest level (sort1) is sorted by year, then the middle one (sort) by date, as well as the inner table one, which also features secondary sorting keys (type, pos, song). The seperator "!" that was chosen for these has no special meaning, but it is the lowest character encoding value above a space, which should ensure that the correct sorting is applied.

"duration:!(fragment)" is used for filtering for those videos, that are not fragments.

{{#invoke: Performances | createTable
  |page=Data:Performances.json
  |headers=Song,Date,Type,Comment,Video
  |keys=[[#<song>|<song>]],{{d|<date>}}; <pos>,<type> <duration>, <comment>; <with>,[<url> play]
  |sort=[[<event>]]
  |sort1=<date>
  |char_limit1=4
  |filters=type:live,duration:!(fragment)
  |caption=Live Events by Year, excluding fragments
  |group_sort=<date> ! <type> ! <pos> ! <song>
  |id=4
}}
Jump to… 2013 – 2014 – 2015 – 2016 – 2017 – 2018 – 2019 – 2020 – 2021 – 2022 – 2023 – 2024
Live Events by Year, excluding fragments
2013
VAD Festival 1 Dec 2013 [1 Item]
2014
Allsang på Grensen [1 Item]
Christmas 2014 NRK TV [1 Item]
Concert for UN summit 2014 [1 Item]
Ein Herz für Kinder [1 Item]
FMC Technology (Kongsberg Jazz Festival) 2014 [3 Items]
Good Morning Norway [1 Item]
Kongsberg Jazz Festival 2014 [2 Items]
New Year's celebration 2014/15 [1 Item]
Norway's Got Talent [5 Items]
Nyhetsmorgon [1 Item]
Orkla Growth Awards [1 Item]
Prime Minister [3 Items]
Save the Children Peace Prize Party [2 Items]
Schwedish Heros [2 Items]
Senkveld [1 Item]
Shopping center, Norway 2014 [1 Item]
Sommerkveld Med Redningsskøyta [1 Item]
The View [1 Item]
TV 2's Artist Gala [1 Item]
Unknown concert [3 Items]
2015
Encontro com Fátima Bernardes [1 Item]
Hagekonsert på Aksept [1 Item]
Hemnes Båt & Fjord Festival [10 Items]
Jotun Plant Opening [3 Items]
Lindmo [1 Item]
Mediacorps Campus Opening [1 Item]
Victoria Scene, Oslo [1 Item]
2016
100k Follower Facebook live [1 Item]
Alan Walker Is Heading Home [2 Items]
Allsang på Grensen [1 Item]
Clarion Hotel [1 Item]
God Sommer Norge [1 Item]
Instagram Live Stream [2 Items]
Kongsberg Jazz Festival 2016 [10 Items]
Lille Julaften [1 Item]
Little Big Shots [1 Item]
Little Big Shots UK [1 Item]
Rotary Club Convention 2016, Seoul [3 Items]
Salvation Army's Christmas Pot [2 Items]
The Stream Gir Tilbake [1 Item]
TV 2's Artist Gala [1 Item]
Wish Concert [1 Item]
2017
Allsang på Grensen [2 Items]
Christmas concert tour 2017 [32 Items]
Dojima River Forum [1 Item]
Little Big Stars [1 Item]
Muse in City [8 Items]
New Year's concert 2017 [3 Items]
Nor Shipping Conference, Oslo [2 Items]
NRK Radio Interview 2017 [3 Items]
Summer concert tour 2017 – Larkollen [16 Items]
Summer concert tour 2017 – Prøysenfestivalen [13 Items]
Summer concert tour 2017 – Sandefjord [12 Items]
2018
Christmas concerts 2018 [19 Items]
Concert in LA [2 Items]
It's Magic concert [14 Items]
Jake and Rachel's Wedding [2 Items]
Kongsberg Jazz Festival 2018 [13 Items]
Lyden av Norge, P4 Radio [1 Item]
Quincy Jones 85th birthday concert [2 Items]
Skavlan [1 Item]
TechnipFMC Jazzfest (Kongsberg Jazz Festival 2018) [3 Items]
2019
America's Got Talent, The Champions 2 [3 Items]
ÅrsteinØYA 2019 [1 Item]
Summer concert tour 2019 – Prøysenhuset [14 Items]
2022
20th Unforgettable Gala [2 Items]
Allsang på Grensen [2 Items]
Kongsberg Jazz Festival 2022 [15 Items]
Kurbadhagen, Sandefjord [31 Items]
2023
A tribute to Narges Mohammadi (Noble Peace Price 2023) [2 Items]
Germany's Next Top Model 2023 [1 Item]
Le Bal Paris 2023 [1 Item]
Mathias Sorum's birthday party [2 Items]
PM International's President's Gala, Mannheim Germany [1 Item]
Portsmouth 2023 [4 Items]
The Best FIFA Football Awards™ 2022 [1 Item]
2024
Christmas Special 2024 [19 Items]
Glendale 2024 [21 Items]
IVARS Awards Backstage [1 Item]
Jesse & Friends @ The Hotel Cafe [2 Items]
Las Vegas 2024 [38 Items]
Sofar London, The Hoxton Hotel Shoreditch [1 Item]
St. Pancras station, London [4 Items]
The Other Songs, London Palladium [1 Item]
Wish Bus USA [2 Items]
Jump to… 2013 – 2014 – 2015 – 2016 – 2017 – 2018 – 2019 – 2020 – 2021 – 2022 – 2023 – 2024

Demonstrating Same Type Sorting, with Different Grouping Levels

Here, the different char_limits on the sorting of song lead to two different grouping levels, by 1st character and by unique title.

{{#invoke: Performances | createTable
  |page=Data:Performances.json
  |headers=Event,Date,Type,Video,Pos,With,Comment
  |keys=[[#<event>|<event>]],{{d|<date>}},<type> <duration>,[<url> play],<pos>,<with>,<comment>
  |sort=[[<song>]]
  |char_limit1=1
  |caption=Live Songs, excluding fragments
  |group_sort=<date> ! <type> ! <pos>
  |filters=duration:!(fragment),type:live
  |id=5
}}

A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z

Live Songs, excluding fragments
7
7th Heaven [3 Items]
A
All I Ask [2 Items]
All I Want for Christmas Is You [6 Items]
All of Me (jazz standard) [5 Items]
All of Me (John Legend song) [1 Item]
At Last [4 Items]
B
Back to Black [4 Items]
Bad Valentine [5 Items]
Bang Bang (My Baby Shot Me Down) [15 Items]
Bohemian Rhapsody [11 Items]
Born to Die [1 Item]
C
Can't Help Falling in Love [9 Items]
Careless Whisper [1 Item]
Cheek to Cheek [1 Item]
Crazy (Willie Nelson song) [12 Items]
Cry Me a River [5 Items]
D
Diamond [2 Items]
Diamonds Are Forever [5 Items]
Dream a Little Dream of Me [3 Items]
Driving Home for Christmas [1 Item]
E
Ev'ry Time We Say Goodbye [4 Items]
F
Faded [5 Items]
Feeling Good [12 Items]
Fly Me to the Moon [30 Items]
G
Gloomy Sunday [1 Item]
Goodbye Yellow Brick Road [4 Items]
H
Have Yourself a Merry Little Christmas [2 Items]
Here Comes the Sun [1 Item]
Hero [2 Items]
Hurt [1 Item]
I
I'd Rather Go Blind [1 Item]
If I Were a Boy [5 Items]
I Got You (I Feel Good) [1 Item]
I Have Nothing [5 Items]
I Just Want to Make Love to You [4 Items]
I'll Be There [6 Items]
I'm a Fool to Want You [2 Items]
I'm Not the Only One [1 Item]
I Put a Spell on You [9 Items]
I Saw Mommy Kissing Santa Claus [6 Items]
It's a Man's Man's Man's World [3 Items]
It's Magic [2 Items]
It's Now or Never [2 Items]
It's the Most Wonderful Time of the Year [2 Items]
I Will Always Love You [1 Item]
J
Jingle Bell Rock [1 Item]
K
Killing Me Softly with His Song [3 Items]
L
La Bohème [1 Item]
Last Christmas [1 Item]
La Vie en rose [1 Item]
Let It Snow! Let It Snow! Let It Snow! [3 Items]
Let Me Entertain You [1 Item]
Love Don't Let Me Go [6 Items]
Love in the Dark [1 Item]
Love on the Brain [2 Items]
M
Mary's Boy Child [5 Items]
Mercy [5 Items]
Million Miles [5 Items]
Million Years Ago [1 Item]
Moon River [1 Item]
Mount Everest [3 Items]
Mr. Lonely [1 Item]
My Funny Valentine [3 Items]
My Way [2 Items]
N
Now I'm the Fool [4 Items]
O
One Moment in Time [2 Items]
Oslo [3 Items]
Our Day Will Come [6 Items]
Over the Rainbow [1 Item]
P
Princess of Ruins [4 Items]
R
Rehab [1 Item]
Right Here Waiting [1 Item]
S
Santa Claus Is Comin' to Town [1 Item]
Set Fire to the Rain [1 Item]
Shield [4 Items]
Silent Night [6 Items]
Sing Me to Sleep [1 Item]
Someone You Loved [1 Item]
Something's Got a Hold on Me [4 Items]
Speak Softly, Love [2 Items]
Stay [3 Items]
Strangers in the Night [2 Items]
Summertime [10 Items]
Suspicious Minds [6 Items]
T
Tears Dry on Their Own [3 Items]
Thank You [2 Items]
The Christmas Song [5 Items]
The House of the Rising Sun [3 Items]
These Boots Are Made for Walkin' [1 Item]
U
Unchained Melody [6 Items]
Unchain My Heart [1 Item]
V
Valerie [8 Items]
W
We're the Best [1 Item]
What a Diff'rence a Day Made [14 Items]
What Am I to You [1 Item]
What a Wonderful World [6 Items]
What Is Life [5 Items]
When We Were Young [6 Items]
When You're Smiling [3 Items]
When You Wish Upon a Star [4 Items]
Where Do Broken Hearts Go [2 Items]
White Christmas [9 Items]
Y
You Don't Own Me [2 Items]
You Raise Me Up [1 Item]

A · B · C · D · E · F · G · H · I · J · K · L · M · N · O · P · Q · R · S · T · U · V · W · X · Y · Z

Code

Edit Code