Difference between revisions of "Template:StreamLinkTable"
(created fancy readme, set stages to generic name) |
m (fixed variable substitution. using template inside itself to show its inner workings) |
||
| Line 35: | Line 35: | ||
Note that for the best results, this table needs extra CSS in [[MediaWiki:Common.css]]: | Note that for the best results, this table needs extra CSS in [[MediaWiki:Common.css]]: | ||
<pre> | <pre> | ||
| − | /* CSS span table rowspan only showing the first header */ | + | /* CSS span table rowspan only showing the first row header (assuming there are 2 column headers stacked, hence +3) */ |
table.span tr>th.span2, | table.span tr>th.span2, | ||
table.span tr>th.span3, | table.span tr>th.span3, | ||
| Line 44: | Line 44: | ||
} | } | ||
| − | table.span tr:nth-of-type(2n+ | + | table.span tr:nth-of-type(2n+3)>th.span2, |
| − | table.span tr:nth-of-type(3n+ | + | table.span tr:nth-of-type(3n+3)>th.span3, |
| − | table.span tr:nth-of-type(4n+ | + | table.span tr:nth-of-type(4n+3)>th.span4, |
| − | table.span tr:nth-of-type(5n+ | + | table.span tr:nth-of-type(5n+3)>th.span5 |
{ | { | ||
display: table-cell; | display: table-cell; | ||
| Line 53: | Line 53: | ||
</pre> | </pre> | ||
| − | If it is not possible to have this CSS added, make sure to set <code>languageCount = 1</code> | + | If it is not possible to have this CSS added, or you want to repeat every row header, make sure to set <code>languageCount = 1</code> (or the table layout will break without the added CSS). |
=== example === | === example === | ||
Edit the page to see how the following table is generated: | Edit the page to see how the following table is generated: | ||
| + | |||
| + | {{ {{PAGENAME}} }} | ||
</noinclude> | </noinclude> | ||
| + | <includeonly> | ||
<table class="wikitable span"> | <table class="wikitable span"> | ||
<tr> | <tr> | ||
| Line 70: | Line 73: | ||
{{#arraymap:{{{stages|Stage 1;s1, Stage 2;s2,Stage 3;s3}}}|,|stage| | {{#arraymap:{{{stages|Stage 1;s1, Stage 2;s2,Stage 3;s3}}}|,|stage| | ||
| − | {{#arraymap:{{{languages|Native;_native_,Translated;_translated_}}}|,| | + | {{#arraymap:{{{languages|Native;_native_,Translated;_translated_}}}|,|languageVar| |
<tr> | <tr> | ||
<th class="span{{{languageCount|2}}}" rowspan="{{{languageCount|2}}}">{{#explode:stage|;|0}}</th> | <th class="span{{{languageCount|2}}}" rowspan="{{{languageCount|2}}}">{{#explode:stage|;|0}}</th> | ||
| − | <th>{{#explode: | + | <th>{{#explode:languageVar|;|0}}</th> |
{{#arraymap:{{{formats|WebM;.webm,HLS;.m3u8}}}|,|format| | {{#arraymap:{{{formats|WebM;.webm,HLS;.m3u8}}}|,|format| | ||
| − | {{#arraymap:{{{types|HD;hd,SD;sd,Slides;slides}}}|,|type|<td>[{{{baseURL|http://cdn.c3voc.de/}}}{{#explode:stage|;|1}}{{#explode: | + | {{#arraymap:{{{types|HD;hd,SD;sd,Slides;slides}}}|,|type|<td>[{{{baseURL|http://cdn.c3voc.de/}}}{{#explode:stage|;|1}}{{#explode:languageVar|;|1}}{{#explode:type|;|1}}{{#explode:format|;|1}} link]</td>|}} |
|}} | |}} | ||
| Line 83: | Line 86: | ||
|}} | |}} | ||
</table> | </table> | ||
| + | </includeonly> | ||
Revision as of 11:24, 7 December 2017
Contents
synopsis
This is the "StreamLinkTable" template.
It will generate a table with various links derived from the stages, languages, formats and types.
It should be called in the following format (all parameters are optional):
{{StreamLinkTable
|baseURL=
|stages=
|languages=
|languageCount=
|formats=
|types=
|typeCount=
}}
parameters
The parameters all default to something useful for CCC and each has a specific syntax: baseURL
baseURL: first common part of the link, defaults to http://cdn.c3voc.de/stages: comma separated (,) list ofStage Label;urlPart(note the semicolon ;), defaults to 3 × Stage n;snlanguages: comma separated (,) list ofLanguage Label;urlPart(note the semicolon ;), defaults to Native;_native_,Translated;_translated_languageCount: number used for setting the correct table header span, set to reflect the amount of languages, defaults to 2formats: comma separated (,) list ofFormat Label;urlPart(note the semicolon ;), defaults to WebM;.webm,HLS;.m3u8types: comma separated (,) list ofType Label;urlPart(note the semicolon ;), defaults to HD;hd,SD;sd,Slides;slidestypeCount: number used for setting the correct table header span, set to reflect the amount of types, defaults to 3
The links are generated as followed (always using the item part after the semicolon:
baseURL+stage(outer row)+language(inner row)+type(inner column)+format(outer column), for example Stage 3 Native Slides as HLS will have the link: http://cdn.c3voc.de/s3_native_slides.m3u8
css
Note that for the best results, this table needs extra CSS in MediaWiki:Common.css:
/* CSS span table rowspan only showing the first row header (assuming there are 2 column headers stacked, hence +3) */
table.span tr>th.span2,
table.span tr>th.span3,
table.span tr>th.span4,
table.span tr>th.span5
{
display: none;
}
table.span tr:nth-of-type(2n+3)>th.span2,
table.span tr:nth-of-type(3n+3)>th.span3,
table.span tr:nth-of-type(4n+3)>th.span4,
table.span tr:nth-of-type(5n+3)>th.span5
{
display: table-cell;
}
If it is not possible to have this CSS added, or you want to repeat every row header, make sure to set languageCount = 1 (or the table layout will break without the added CSS).
example
Edit the page to see how the following table is generated:
| WebM | HLS | ||||||
|---|---|---|---|---|---|---|---|
| HD | SD | Slides | HD | SD | Slides | ||
| Stage 1 | Native | link | link | link | link | link | link |
| Stage 1 | Translated | link | link | link | link | link | link |
| Stage 2 | Native | link | link | link | link | link | link |
| Stage 2 | Translated | link | link | link | link | link | link |
| Stage 3 | Native | link | link | link | link | link | link |
| Stage 3 | Translated | link | link | link | link | link | link |