Wikipidiya
bolwiki
https://bol.wikipedia.org/wiki/Peji_In_Siri
MediaWiki 1.47.0-wmf.16
first-letter
Media
Inmusamman
Mossa
Ruta
Rutta mossa
Wikipidiya
Wikipidiya mossa
Fayil
Fayil mossa
MediaWiki
MediaWiki mossa
Tempilet
Tempilet mossa
Taimako
Taimako mossa
Panni
Panni mossa
TimedText
TimedText talk
Module
Module talk
Event
Event talk
Peji In Siri
0
1
10399
9294
2026-08-24T13:06:44Z
RAPTOR7762
18
10399
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
<div style="text-align:center;">
<!--{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}-->
</div>
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group/footer}}
afmj67rpptsylw6fxmuq6tefyqq3h0y
10402
10399
2026-08-24T13:08:09Z
RAPTOR7762
18
10402
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
<div style="text-align:center;">
<!--{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}-->
</div>
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Grou}}
nq4nh08ohqaur9wivx4mz2kkvvez33s
10403
10402
2026-08-24T13:08:23Z
RAPTOR7762
18
10403
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
<div style="text-align:center;">
<!--{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}-->
</div>
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
h48sxljal4svxm21oo1zyn543tj2a7y
10441
10403
2026-08-24T13:28:38Z
RAPTOR7762
18
10441
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
9wecaysm4wiz8ye3qt4k2mauiulok5q
10460
10441
2026-08-24T14:47:05Z
RAPTOR7762
18
10460
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
{{Bole Wikimedians User Group/mobile}}
hiujr1t7gr9ms7p88cn35752b7kpzpz
10499
10460
2026-08-25T06:32:47Z
RAPTOR7762
18
10499
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
<div class="mobile-only">
{{Bole Wikimedians User Group/mobile}}
</div>
61px6ebnx2wu4vcsao2iiibfbf1fmzj
10505
10499
2026-08-25T10:15:44Z
RAPTOR7762
18
10505
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
<div class="mobile-only">
[[File:Wikimedia Community Logo.svg|20px|center|link=m:Bole Wikimedians User Group]][[File:2023 Facebook icon.svg|20px|center|link=https://www.facebook.com/61590521903033/]]
</div>
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
<div class="mobile-only">
{{Bole Wikimedians User Group/mobile}}
</div>
hl7mkyl7pg5gnc7kzvluvuaz3a7qhd7
10506
10505
2026-08-25T10:17:41Z
RAPTOR7762
18
10506
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
<div class="mobile-only" style="text-align:center;">
[[File:Wikimedia Community Logo.svg|20px|link=m:Bole Wikimedians User Group]][[File:2023 Facebook icon.svg|20px|link=https://www.facebook.com/61590521903033/]]
</div>
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
<div class="mobile-only">
{{Bole Wikimedians User Group/mobile}}
</div>
0n6j9zv1r67p3qwmvypj13ht639z707
10507
10506
2026-08-25T10:18:58Z
RAPTOR7762
18
10507
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
<div class="mobile-only" style="text-align:center;">
[[File:Wikimedia Community Logo.svg|30px|link=m:Bole Wikimedians User Group]] [[File:2023 Facebook icon.svg|30px|link=https://www.facebook.com/61590521903033/]]
</div>
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
<div class="mobile-only">
{{Bole Wikimedians User Group/mobile}}
</div>
rra1ew21qcxj6808rjqrjd1sasuqcod
10508
10507
2026-08-25T10:58:12Z
RAPTOR7762
18
10508
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<div class="mobile-only" style="text-align:center; width:100%; ">
[[File:Wikimedia Community Logo.svg|40px|link=m:Bole Wikimedians User Group]] [[File:2023 Facebook icon.svg|40px|link=https://www.facebook.com/61590521903033/]]
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
<div class="mobile-only">
{{Bole Wikimedians User Group/mobile}}
</div>
d3rbjp6filljj3nm3cafmfbjmeavsyb
10509
10508
2026-08-25T11:09:39Z
RAPTOR7762
18
10509
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
<div class="mobile-only" style="text-align:center; width:100%; ">
[[File:Wikimedia Community Logo.svg|40px|link=m:Bole Wikimedians User Group]] [[File:2023 Facebook icon.svg|40px|link=https://www.facebook.com/61590521903033/]]
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
<div class="mobile-only">
{{Bole Wikimedians User Group/mobile}}
</div>
ruc7031z1rblaqj762jcca7tvir2sed
10510
10509
2026-08-25T11:10:57Z
RAPTOR7762
18
10510
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
<div style="text-align:center;">
[[File:Wikimedia Community Logo.svg|40px|link=m:Bole Wikimedians User Group]] [[File:2023 Facebook icon.svg|40px|link=https://www.facebook.com/61590521903033/]]
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
<div class="mobile-only">
{{Bole Wikimedians User Group/mobile}}
</div>
ivteotm0ls9mnbkmymuei5de44anp07
10511
10510
2026-08-25T11:12:34Z
RAPTOR7762
18
10511
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
<div class="mobile-only">
{{Bole Wikimedians User Group/mobile}}
</div>
drlmnzx1f30mypf5n8gci425ajiz3ig
10512
10511
2026-08-25T11:26:00Z
RAPTOR7762
18
10512
wikitext
text/x-wiki
__NOTOC__ __NOEDITSECTION__
<!--{{Protection padlock|small=yes}}-->
{{Top icon|image=Wikimedia Community Logo.svg|link=m:Bole Wikimedians User Group}}
{{Top icon|image=2023 Facebook icon.svg|link=https://www.facebook.com/61590521903033/}}
<div style="text-align:center;">
{{Clickable button|Special:Purge/Peji In Siri|Purge this page|class=mw-ui-progressive}}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="position:relative; text-align:center; padding:3em 1em; background:#fff; overflow:hidden;">
<div style="position:absolute; top:-50px; left:0; right:0; text-align:center; opacity:0.1; z-index:0;">
[[File:Wikipedia-logo-v2.svg|600px|center|class=notpageimage|link=]]
</div>
<div style="position:relative; z-index:1;">
<div style="font-variant:small-caps; font-family:'Linux Libertine','Georgia',serif;"><div style="font-size:180%;">U'se ga nako</div>
<div style="font-size:270%; line-height:1;">[[Wikipidiya|<span style="display: inline-block; letter-spacing: -0.35em; margin-right: 0.2em; font-family: serif;">V<span style="margin-left: -0.1em;">V</span></span>ikipidiya]] in bòo pìkkà</div>
</div>
<div style="font-size:120%; line-height:1.2;"> Wikipidiya ensakulopidiya in lelo in [[Harshe Bole]] la lemalo agita ina ramayi.</div>
<div style="font-size:120%; line-height:1.2;"> Honsene Andi makaloli '''[[Special:AllPages|{{NUMBEROFARTICLES}}]]''' ga harshe Bole</div>
</div>
</div>
<div style="margin:10px 0px 10px 0px; -moz-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); -webkit-box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); box-shadow:0 1px 1px rgba(0, 0, 0, 0.1); background-color:#FFFFFF;">
{| style="border-spacing: 1px; border-collapse: separate; width:100%; text-align:center; font-size:0.85em; padding:2px 3px 2px 3px;" class="hp-portalen"
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Atiimala|<span style="color:#000000;">Atiimala</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Annoba|<span style="color:#000000;">Annoba</span>]]
| style="background-color:#F0F4F9; border-top:5px solid; border-color:#336699; padding:3px 0.15em; width:6.6%;" | [[:Category:Fasaha|<span style="color:#000000;">Fasaha</span>]]
| style="background-color:#F9F0F0; border-top:5px solid; border-color:#993333; padding:3px 0.15em; width:6.6%;" | [[:Category:Ilimi|<span style="color:#000000;">Ilimi</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Lamba|<span style="color:#000000;">Lamba</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Miyya|<span style="color:#000000;">Miyya</span>]]
| style="background-color:#F9F9F0; border-top:5px solid; border-color:#999933; padding:3px 0.15em; width:6.6%;" | [[:Category:Makami|<span style="color:#000000;">Makami</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Malunwa|<span style="color:#000000;">Malunwa</span>]]
| style="background-color:#F0F9F0; border-top:5px solid; border-color:#339933; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii|<span style="color:#000000;">Olii</span>]]
| style="background-color:#F9F0F4; border-top:5px solid; border-color:#993366; padding:3px 0.15em; width:6.6%;" | [[:Category:Olii pewe|<span style="color:#000000;">Olii pewe</span>]]
| style="background-color:#F0F0F9; border-top:5px solid; border-color:#333399; padding:3px 0.15em; width:6.6%;" | [[:Category:Tarihi|<span style="color:#000000;">Tarihi</span>]]
| style="background-color:#F0F9F9; border-top:5px solid; border-color:#339999; padding:3px 0.15em; width:6.6%;" | [[:Category:Goma|<span style="color:#000000;">Goma</span>]]
| style="background-color:#F9F0F9; border-top:5px solid; border-color:#993399; padding:3px 0.15em; width:6.6%;" | [[:Category:Kimiyya|<span style="color:#000000;">Kimiyya</span>]]
| style="background-color:#F4F9F0; border-top:5px solid; border-color:#669933; padding:3px 0.15em; width:6.6%;" | [[:Category:Zane|<span style="color:#000000;">Zane</span>]]
|}
</div>
<templatestyles src="Main page/Styles.css" />
<div style="flex:1; min-width:300px; overflow:hidden; border-radius:4px; margin:8px 4px 4px 4px; box-shadow:0 0 8px rgba(0,0,0,0.15);">
<div class="image-carousel">
<ul>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Star-alt-icon.png|20px|link=]] Featured Article</div>
</div>
<div class="carousel-image">
[[File:The City Gate of Abuja.jpg|center|class=carousel-image-wrapper|link=Nijeriya|Nijeriya]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Nijeriya ko Nijeriya da (turanci: Nigeria): A Gwamanatance Tarayyar Najeriya, woli la ga take ga Africa ko zoni ita ji tetteke woli niger koga Arewa. Ga Chadi koga zoni koga aushi jam aji dar ga teku Atlantika.</div>
<div class="carousel-slide-title">[[Nijeriya]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat sign-question.svg|20px|link=]] Kamontuwo?</div>
</div>
<div class="carousel-image">
[[File:Gooya mountain.jpg|center|class=carousel-image-wrapper|link=Gooya mountain]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Gooya kam zoi wuro la tudu ga arewa [[Nijeriya]], inda Bòo pikka ye kam la yare miyya aji magana da yawa ga yankin da ke kewaye.
</div>
<div class="carousel-slide-title">[[Potiskum]]</div>
</div>
</div>
</li>
<li>
<div style="background:#FFF; padding:5px; font-size:150%; font-family:'Arial',sans-serif; position: relative; z-index: 2;">
<div style="padding:5px 10px; color:#333333;">[[File:Paomedia small-n-flat file-picture.svg|20px|link=]] Featured Picture</div>
</div>
<div class="carousel-image">
[[File:Daniski Festival 04.jpg|center|class=carousel-image-wrapper|link=File:Daniski Festival 04.jpg]]
</div>
<div class="carousel-slide-content-wrapper">
<div class="carousel-slide-content">
<div class="carousel-slide-description">Daniski Hills Annual Festival kam zoi tarayya la al’ada, ba Bòo pikka ga Fika Emirate ga Yobe State, [[Nijeriya]].
</div>
<div class="carousel-slide-title">[[:File:Daniski Festival 04.jpg|Daniski Festival Picture]]</div>
</div>
</div>
</li>
</ul>
</div>
</div>
<div style="display:flex; flex-wrap:wrap;">
{{Box
|header=[[File:Paomedia small-n-flat sign-info.svg|20px|link=]] Elle Wikipidiya?
|content=<span style="float: left; margin: 6px 12px 6px 0px; display: inline-block;">[[File:Wikipedia-logo-v2-bol.svg|100px]]</span>Wikipidiya shafi ji in Yana gizonla ona gudumawa inko rubutu mukalai kala aji gidan ga goggo gozi ilmi do ramu-ramu ga messesu. Gabo turanci ga unda shap Maddi la ramu ramu do gede ga ilmi ga shafuka Wikipedia ga sun Wikipedia, wikipidiya aji tattira ga harsuna GA duniya ga godon shafuka lemalo aji kirkira do ramu mukalai gabo kyauta inko taimako beyi wena ilmi bo kyauta, emeyye aji Wikipedia ga zarrar a shap ga duniya beyi wena ilmi koga asali beyi ilmi fetengo.
}}
{{Box
|header=[[File:Paomedia small-n-flat pencil.svg|20px|link=]] Kirkiru Foyo Article
|content=Kaji kume Harshe Bole? Kagita ina taimako beyi Bunƙasa kunsu eme Mona (ensakulopidiya) ko goggo kirkire foyo makaloli do fadada la aji Andi ga fatan aji doffa ka'idoji Al'umma lokaci ona ga gundumawa.<br><small><i></i></small>
<div style="margin-top:1em;">
<inputbox>
type=create
width=30
default=
buttonlabel=Kirkiru Foyo Makala
</inputbox>
</div>
}}
</div>
{{Box
|header=English speakers
|content=If you speak English, but you don't know anything about the Bole Language, you are also welcome to edit and assist in technical support, such as maintaining Templates or Modules. Your role is vital to the smooth running of the Bole Wikipedia!
}}
{{Box
|header=[[File:Wikimedia-logo.svg|20px|link=]] Project Modi
|content={{SisterProjects}}
}}
{{Bole Wikimedians User Group}}
<div class="mobile-only">
{{Bole Wikimedians User Group/mobile}}
</div>
61px6ebnx2wu4vcsao2iiibfbf1fmzj
Tempilet:Main page/Styles.css
10
130
10500
9210
2026-08-25T06:33:25Z
RAPTOR7762
18
10500
sanitized-css
text/css
/* {{pp-protected|small=yes}}
Derived from https://ay.wikipedia.org/wiki/Plantilla:Portada/styles.css (2025-06-06) */
.image-carousel {
overflow: hidden;
width: 100%;
height: 210px;
min-width: 280px;
}
.image-carousel ul {
width: 100%;
margin: 0;
padding: 0;
display: table;
table-layout: fixed;
height: 100%;
}
.image-carousel ul li {
display: table-cell;
vertical-align: top;
position: relative;
height: 100%;
min-height: 210px;
width: 33.33333%;
transition: all 1000ms ease;
}
.carousel-image {
width: 100%;
height: 100%;
display: block;
position: relative;
overflow: hidden;
}
.carousel-image-wrapper {
position: absolute;
display: block;
width: 100%;
height: 100%;
z-index: 1;
}
.carousel-image-wrapper img {
width: 100%;
height: 100%;
min-height: 170px;
object-fit: cover;
position: absolute;
top: 0;
left: 0;
}
.carousel-slide-content-wrapper {
overflow: hidden;
width: 100%;
height: calc(100% - 40px);
position: absolute;
top: 40px;
}
.carousel-slide-content {
display: flex;
flex-direction: column;
justify-content: flex-end;
height: 100%;
width: 100%;
position: relative;
padding: 15px 20px;
box-sizing: border-box;
color: #fff;
z-index: 3;
}
.carousel-slide-content .carousel-slide-title,
.carousel-slide-content .carousel-slide-description {
opacity: 0;
width: 100%;
position: relative;
}
.carousel-slide-title {
font-size: 135%;
font-weight: bold;
text-align: right;
}
.carousel-slide-description {
text-align: left;
}
@media (min-width: 800px) {
.image-carousel ul:hover li {
width: 10%;
}
.image-carousel ul:hover li:hover {
width: 60%;
}
.image-carousel ul:hover li:hover .carousel-slide-content {
background: rgba(0, 0, 0, 0.7);
}
.image-carousel ul:hover li:hover .carousel-slide-title,
.image-carousel ul:hover li:hover .carousel-slide-description {
opacity: 1;
}
}
.carousel-slide-title a {
font-weight: bold;
}
.carousel-slide-title a,
.carousel-slide-description a {
color: white;
}
.carousel-slide-title a:link,
.carousel-slide-title a:visited,
.carousel-slide-title a:hover,
.carousel-slide-title a:active,
.carousel-slide-description a:link,
.carousel-slide-description a:visited,
.carousel-slide-description a:hover,
.carousel-slide-description a:active {
color: white;
}
@media (max-width: 800px) {
.image-carousel {
height: auto;
min-height: unset;
}
.image-carousel ul {
display: block;
height: auto;
}
.image-carousel ul li {
display: block;
width: 100%;
height: auto;
min-height: unset;
transition: none;
}
.carousel-image {
height: auto;
}
.carousel-image-wrapper {
position: relative;
height: auto;
}
.carousel-image-wrapper img {
position: relative;
width: 100%;
height: auto;
min-height: unset;
object-fit: cover;
}
.carousel-slide-content-wrapper {
position: relative;
height: auto;
top: auto;
}
.carousel-slide-content {
position: relative;
background: rgba(0, 0, 0, 0.6);
padding: 10px;
color: white;
}
/* Override opacity on mobile */
.carousel-slide-content-wrapper .carousel-slide-title,
.carousel-slide-content-wrapper .carousel-slide-description {
opacity: 1;
}
/* Disable hover effect for mobile */
.image-carousel ul:hover li {
width: 100%;
}
.image-carousel ul:hover li:hover {
width: 100%;
}
.image-carousel ul:hover li:hover .carousel-slide-content {
background: rgba(0, 0, 0, 0.6);
}
}
.mobile-only {
display: none;
}
/* Display on mobile views (Minerva Neue skin / MobileFrontend) */
@media screen and (max-width: 768px) {
.mobile-only {
display: block;
}
}
t3ygn5txfjp8g1opf5a5ns8lw48ogjy
10501
10500
2026-08-25T07:39:02Z
RAPTOR7762
18
10501
sanitized-css
text/css
/* {{pp-protected|small=yes}}
Derived from https://ay.wikipedia.org/wiki/Plantilla:Portada/styles.css (2025-06-06) */
.image-carousel {
overflow: hidden;
width: 100%;
height: 210px;
min-width: 280px;
}
.image-carousel ul {
width: 100%;
margin: 0;
padding: 0;
display: table;
table-layout: fixed;
height: 100%;
}
.image-carousel ul li {
display: table-cell;
vertical-align: top;
position: relative;
height: 100%;
min-height: 210px;
width: 33.33333%;
transition: all 1000ms ease;
}
.carousel-image {
width: 100%;
height: 100%;
display: block;
position: relative;
overflow: hidden;
}
.carousel-image-wrapper {
position: absolute;
display: block;
width: 100%;
height: 100%;
z-index: 1;
}
.carousel-image-wrapper img {
width: 100%;
height: 100%;
min-height: 170px;
object-fit: cover;
position: absolute;
top: 0;
left: 0;
}
.carousel-slide-content-wrapper {
overflow: hidden;
width: 100%;
height: calc(100% - 40px);
position: absolute;
top: 40px;
}
.carousel-slide-content {
display: flex;
flex-direction: column;
justify-content: flex-end;
height: 100%;
width: 100%;
position: relative;
padding: 15px 20px;
box-sizing: border-box;
color: #fff;
z-index: 3;
}
.carousel-slide-content .carousel-slide-title,
.carousel-slide-content .carousel-slide-description {
opacity: 0;
width: 100%;
position: relative;
}
.carousel-slide-title {
font-size: 135%;
font-weight: bold;
text-align: right;
}
.carousel-slide-description {
text-align: left;
}
@media (min-width: 800px) {
.image-carousel ul:hover li {
width: 10%;
}
.image-carousel ul:hover li:hover {
width: 60%;
}
.image-carousel ul:hover li:hover .carousel-slide-content {
background: rgba(0, 0, 0, 0.7);
}
.image-carousel ul:hover li:hover .carousel-slide-title,
.image-carousel ul:hover li:hover .carousel-slide-description {
opacity: 1;
}
}
.carousel-slide-title a {
font-weight: bold;
}
.carousel-slide-title a,
.carousel-slide-description a {
color: white;
}
.carousel-slide-title a:link,
.carousel-slide-title a:visited,
.carousel-slide-title a:hover,
.carousel-slide-title a:active,
.carousel-slide-description a:link,
.carousel-slide-description a:visited,
.carousel-slide-description a:hover,
.carousel-slide-description a:active {
color: white;
}
@media (max-width: 800px) {
.image-carousel {
height: auto;
min-height: unset;
}
.image-carousel ul {
display: block;
height: auto;
}
.image-carousel ul li {
display: block;
width: 100%;
height: auto;
min-height: unset;
transition: none;
}
.carousel-image {
height: auto;
}
.carousel-image-wrapper {
position: relative;
height: auto;
}
.carousel-image-wrapper img {
position: relative;
width: 100%;
height: auto;
min-height: unset;
object-fit: cover;
}
.carousel-slide-content-wrapper {
position: relative;
height: auto;
top: auto;
}
.carousel-slide-content {
position: relative;
background: rgba(0, 0, 0, 0.6);
padding: 10px;
color: white;
}
/* Override opacity on mobile */
.carousel-slide-content-wrapper .carousel-slide-title,
.carousel-slide-content-wrapper .carousel-slide-description {
opacity: 1;
}
/* Disable hover effect for mobile */
.image-carousel ul:hover li {
width: 100%;
}
.image-carousel ul:hover li:hover {
width: 100%;
}
.image-carousel ul:hover li:hover .carousel-slide-content {
background: rgba(0, 0, 0, 0.6);
}
}
.mobile-only {
display: none;
}
/* Display on mobile views (Minerva Neue skin / MobileFrontend) */
@media screen and (max-width: 640px) {
.mobile-only {
display: block;
}
}
j2tnulyblaxgv6ppx19dne9p96kzcy7
Tempilet:SisterProjects
10
164
10502
8996
2026-08-25T07:41:36Z
RAPTOR7762
18
10502
wikitext
text/x-wiki
<table class="layout plainlinks" style="width:100%; margin:auto; text-align:left; background:transparent;">
<tr>
<td style="text-align:center; padding:4px;"> [[Fayil:Commons-logo.svg|31px|link=commons:|Wikimedia Commons]] </td>
<td style="width:33%; padding:4px;"> '''[[:c:|Commons]]''' <br><span style="font-size:85%; color:#777;">Beyi zena ya modi ga media la aji bissayi kyauta</span></td>
<td style="text-align:center; padding:4px;"> [[Fayil:Wikimedia Community Logo.svg|35px|link=m:|Meta-Wiki]] </td>
<td style="width:33%; padding:4px;"> '''[[:m:|Meta-Wiki]]''' <br><span style="font-size:85%; color:#777;">Gonnta koyi ga ruta wikimedia</span></td>
</tr><tr>
<td style="text-align:center; padding:4px;"> [[Fayil:Wikibooks-logo.svg|35px|link=b:en:|Wikibooks]] </td>
<td style="padding:4px;"> '''[[:b:en:|Wikibooks]]''' <br><span style="font-size:85%; color:#777;">Litattafai ga jagorori in gozi kyauta</span></td>
<td style="text-align:center; padding:3px;"> [[Fayil:Wikidata-logo.svg|47px|link=d:|Wikidata]] </td>
<td style="padding:4px;"> '''[[:d:|Wikidata]]''' <br><span style="font-size:85%; color:#777;">Beyi zena ya modi bo kyauta</span></td>
<td style="text-align:center; padding:3px;"> [[Fayil:Wikifunctions-logo.svg|47px|link=f:|Wikifunctions]] </td>
<td style="padding:4px;"> '''[[:f:|Wikifunctions]]''' <br><span style="font-size:85%; color:#777;">Gabin ruta (function)</span></td>
</tr><tr>
<td style="text-align:center; padding:4px;"> [[Fayil:Wiktionary-logo-v2.svg|35px|link=wikt:|Wiktionary]] </td>
<td style="width:33%; padding:4px;"> '''[[:wikt:|Wiktionary]]''' <br><span style="font-size:85%; color:#777;"> Kamus kyauta</span></td>
<td style="text-align:center; padding:4px;"> [[Fayil:Wikiquote-logo.svg|51px|link=q:|Wikiquote]] </td>
<td style="padding:4px;"> '''[[:q:en:|Wikiquote]]''' <br><span style="font-size:85%; color:#777;">Fetila zantuka (kauli)</span></td>
<td style="text-align:center; padding:4px;"> [[Fayil:Wikispecies-logo.svg|35px|link=species:|Wikispecies]] </td>
<td style="padding:4px;"> '''[[:species:|Wikispecies]]''' <br><span style="font-size:85%; color:#777;">Jeri nau'o'in halitta</span></td>
</tr><tr>
<td style="text-align:center; padding:4px;"> [[Fayil:Wikisource-logo.svg|35px|link=s:|Wikisource]] </td>
<td style="padding:4px;"> '''[[:s:en:|Wikisource]]''' <br><span style="font-size:85%; color:#777;">Gabin Zena Yan gawa kyauta</span></td>
<td style="text-align:center; padding:4px;"> [[Fayil:Wikiversity-logo.svg|41px|link=v:|Wikiversity]] </td>
<td style="padding:4px;"> '''[[:v:en:|Wikiversity]]''' <br><span style="font-size:85%; color:#777;">Karai gozi karatu kyauta</span></td>
<td style="text-align:center; padding:4px;"> [[Fayil:Wikivoyage-Logo-v3-icon.svg|35px|link=voy:|Wikivoyage]] </td>
<td style="padding:4px;"> '''[[:voy:|Wikivoyage]]''' <br><span style="font-size:85%; color:#777;">Jagora mecce mecce kyauta</span></td>
</tr></table>
d6svogo1so4b8209nza9bfy6m7g1z8m
Tempilet:Template display
10
175
10429
2025-02-08T19:00:50Z
en>Jonesey95
0
link to better explanatino
10429
wikitext
text/x-wiki
<includeonly>{{#invoke:Message box|ombox|type=notice
|image={{#switch:{{{1}}}|adaptive=[[File:Different devices simple.svg|65x65px|link=|alt=]]|nomobile=[[File:Handheld devices no.svg|55px|link=|alt=]]|nodesktop=[[File:Desktop devices no.svg|55px|link=|alt=]]}}
|text={{#switch:{{{1}}}
| adaptive = This template is [[Adaptive web design|responsive]] and <strong>displays differently in mobile and desktop view</strong>. Read the documentation for an explanation of the differences and why they exist.
| nomobile = This template does ''not'' display in the mobile view of Wikipedia; it is <strong>desktop only</strong>. See [[Template:Navbox visibility]] for a brief explanation.
| nomobile720 = This template does ''not'' display in the mobile view of Wikipedia when the window is less than 720 pixels wide. Read the documentation for an explanation.
| nodesktop = This template does ''not'' display in the desktop view of Wikipedia; it is <strong>mobile only</strong>. Read the documentation for an explanation.
| nomobilesidebar = This template does ''not'' display in the mobile view of Wikipedia; it is <strong>desktop only</strong>. Read the [[Template:Sidebar/doc|parent documentation]] for an explanation.
| badmobile = This template contains coding that is not compatible with [[Help:Mobile access|mobile versions of Wikipedia]], causing display and [[Wikipedia:Manual of Style/Accessibility|accessibility problems]]. Read the documentation for an explanation.
| vector2022 = This template does not work properly in the [[Wikipedia:Vector 2022|Vector 2022]] skin. Read the documentation for an explanation.
| #default = {{{1}}}
}}}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
egx1w755hd3mso4m0o760gw2scpmk9c
10430
868
2026-08-24T13:15:13Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Template_display]]
866
wikitext
text/x-wiki
<includeonly>{{#invoke:Message box|ombox|type=notice
|image={{#switch:{{{1}}}|adaptive=[[Fayil:Different devices simple.svg|65x65px|link=|alt=]]|nomobile=[[Fayil:Handheld devices no.svg|55px|link=|alt=]]|nodesktop=[[Fayil:Desktop devices no.svg|55px|link=|alt=]]}}
|text={{#switch:{{{1}}}
| adaptive = This template is [[Adaptive web design|responsive]] and <strong>displays differently in mobile and desktop view</strong>. Read the documentation for an explanation of the differences and why they exist.
| nomobile = This template does ''not'' display in the mobile view of Wikipedia; it is <strong>desktop only</strong>. See [[Tempilet:Navbox visibility]] for a brief explanation.
| nomobile720 = This template does ''not'' display in the mobile view of Wikipedia when the window is less than 720 pixels wide. Read the documentation for an explanation.
| nodesktop = This template does ''not'' display in the desktop view of Wikipedia; it is <strong>mobile only</strong>. Read the documentation for an explanation.
| nomobilesidebar = This template does ''not'' display in the mobile view of Wikipedia; it is <strong>desktop only</strong>. Read the [[Tempilet:Sidebar/doc|parent documentation]] for an explanation.
| badmobile = This template contains coding that is not compatible with [[Taimako:Mobile access|mobile versions of Wikipedia]], causing display and [[Wikipidiya:Manual of Style/Accessibility|accessibility problems]]. Read the documentation for an explanation.
| vector2022 = This template does not work properly in the [[Wikipidiya:Vector 2022|Vector 2022]] skin. Read the documentation for an explanation.
| #default = {{{1}}}
}}}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
sjbj2f3235eag0cyf7gnue524ivu209
Module:Arguments
828
215
9559
2014-01-19T07:43:51Z
meta>Mxn
0
Copied from [[w:Module:Arguments]] (590466411)
9559
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
local nilArg = {} -- Used for memoizing nil arguments in metaArgs.
-- Generate four different tidyVal functions, so that we don't have to check the options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so assign the args to a new variable so we can differentiate them.
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
pargs = frame:getParent().args
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
-- Generate the tidyVal function. If it has been specified by the user, we use that; if not, we choose one of four functions
-- depending on the options chosen. This is so that we don't have to call the options table every time the function is called.
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error("bad value assigned to option 'valueFunc' (function expected, got " .. type(tidyVal) .. ')', 2)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precedence.
-- We are also memoizing nil values, but those values can be overwritten.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
local metaArgsVal = metaArgs[key]
if metaArgsVal == nil or metaArgsVal == nilArg then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = tidiedVal
end
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table, and are only fetched from the
-- argument tables once. Nil arguments are also memoized using the nilArg variable in order to increase
-- performance. Also, we keep a record in the metatable of when pairs and ipairs have been called, so we
-- do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs and
-- pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
if val == nilArg then
return nil
else
return val
end
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = argTableVal
return argTableVal
end
end
return nil
end
metatable.__newindex = function (t, key, val)
if options.readOnly then
error('could not write to argument table key "' .. tostring(key) .. '"; the table is read-only', 2)
elseif options.noOverwrite and args[key] ~= nil then
error('could not write to argument table key "' .. tostring(key) .. '"; overwriting existing arguments is not permitted', 2)
elseif val == nil then
metaArgs[key] = nilArg -- Memoize nils.
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return function (t, k)
local nk, val = next(metaArgs, k)
if val == nilArg then
val = nil
end
return nk, val
end
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return function (t, i)
local val = metaArgs[i + 1]
if val == nil then
return nil
elseif val == nilArg then
val = nil
end
return i + 1, val
end, nil, 0
end
return args
end
return arguments
shj2fpwayer5zfm1tiuj45e19ovlmf1
9560
2013-12-07T16:01:15Z
meta>Mr. Stradivarius
0
create argument-processing module
9560
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
local function getArguments(frame, options)
options = type(options) == 'table' and options or {}
local fargs, pargs
if frame == mw.getCurrentFrame() then
fargs = frame.args
pargs = frame:getParent().args
else
fargs = type(frame) == 'table' and frame or {}
pargs = {}
end
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
local function tidyVal(key, val)
-- Processes a value according to the options given to getArguments. Can trim whitespace and remove blanks.
-- Keys are not used here, but they can be used by user-generated functions, so defining it here to avoid breakage.
if type(val) == 'string' then
if options.trim ~= false then
val = mw.text.trim(val)
end
if options.removeBlanks == false or mw.ustring.find(val, '%S') then
return val
end
else
return val
end
end
local valueFunc = options.valueFunc
if valueFunc then
local valueFuncType = type(valueFunc)
if valueFuncType == 'function' then
tidyVal = valueFunc
else
error('type error in option "valueFunc": expected function, got ' .. valueFuncType, 2)
end
end
local function mergeArgs(iterator, ...)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
local tables = {...}
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
metaArgs[key] = tidyVal(key, val)
end
end
end
end
local firstArgs, secondArgs = fargs, pargs
if options.parentFirst then
firstArgs, secondArgs = pargs, fargs
end
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
return val
else
local firstVal = tidyVal(key, firstArgs[key])
if firstVal ~= nil then
return firstVal
else
return tidyVal(key, secondArgs[key])
end
end
end
metatable.__newindex = function (t, key, val)
if not options.readOnly and (not options.noOverwrite or metaArgs[key] == nil) then
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, firstArgs, secondArgs)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, firstArgs, secondArgs)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return getArguments
6x9zvqrejfxd0fvgcavm9s545cz0kzl
9561
9560
2013-12-09T02:19:53Z
meta>Mr. Stradivarius
0
return a table rather than a function, improve the comments
9561
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local arguments = {}
function arguments.getArgs(frame, options)
options = type(options) == 'table' and options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so assume arguments are passed directly in.
local fargs, pargs
if frame == mw.getCurrentFrame() then
fargs = frame.args
pargs = frame:getParent().args
else
fargs = type(frame) == 'table' and frame or {}
pargs = {}
end
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
local function tidyVal(key, val)
-- Processes a value according to the options given to getArguments. Can trim whitespace and remove blanks.
-- Keys are not used here, but they can be used by user-generated functions, so defining it here to avoid breakage.
if type(val) == 'string' then
if options.trim ~= false then
val = mw.text.trim(val)
end
if options.removeBlanks == false or mw.ustring.find(val, '%S') then
return val
end
else
return val
end
end
-- Use a user-generated functions to tidy the values if specified.
local valueFunc = options.valueFunc
if valueFunc then
local valueFuncType = type(valueFunc)
if valueFuncType == 'function' then
tidyVal = valueFunc
else
error('type error in option "valueFunc": expected function, got ' .. valueFuncType, 2)
end
end
local function mergeArgs(iterator, ...)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
local tables = {...}
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
metaArgs[key] = tidyVal(key, val)
end
end
end
end
-- Set the order of precedence of frame args and parent args.
local firstArgs, secondArgs = fargs, pargs
if options.parentFirst then
firstArgs, secondArgs = pargs, fargs
end
-- Define metatable behaviour.
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
return val
else
local firstVal = tidyVal(key, firstArgs[key])
if firstVal ~= nil then
return firstVal
else
return tidyVal(key, secondArgs[key])
end
end
end
metatable.__newindex = function (t, key, val)
if not options.readOnly and (not options.noOverwrite or metaArgs[key] == nil) then
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, firstArgs, secondArgs)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, firstArgs, secondArgs)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
55c6pl9vlnywo2arm8v7jmlyq04size
9562
9561
2013-12-09T02:25:52Z
meta>Mr. Stradivarius
0
add a more detailed comment about metatable behaviour
9562
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local arguments = {}
function arguments.getArgs(frame, options)
options = type(options) == 'table' and options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so assume arguments are passed directly in.
local fargs, pargs
if frame == mw.getCurrentFrame() then
fargs = frame.args
pargs = frame:getParent().args
else
fargs = type(frame) == 'table' and frame or {}
pargs = {}
end
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
local function tidyVal(key, val)
-- Processes a value according to the options given to getArguments. Can trim whitespace and remove blanks.
-- Keys are not used here, but they can be used by user-generated functions, so defining it here to avoid breakage.
if type(val) == 'string' then
if options.trim ~= false then
val = mw.text.trim(val)
end
if options.removeBlanks == false or mw.ustring.find(val, '%S') then
return val
end
else
return val
end
end
-- Use a user-generated functions to tidy the values if specified.
local valueFunc = options.valueFunc
if valueFunc then
local valueFuncType = type(valueFunc)
if valueFuncType == 'function' then
tidyVal = valueFunc
else
error('type error in option "valueFunc": expected function, got ' .. valueFuncType, 2)
end
end
local function mergeArgs(iterator, ...)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
local tables = {...}
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
metaArgs[key] = tidyVal(key, val)
end
end
end
end
-- Set the order of precedence of frame args and parent args.
local firstArgs, secondArgs = fargs, pargs
if options.parentFirst then
firstArgs, secondArgs = pargs, fargs
end
--[[
-- Define metatable behaviour. Arguments are stored in the metaArgs table, and are only fetched from the
-- fargs and pargs tables once. Also, we keep a record in the metatable of when pairs and ipairs have
-- been called, so we do not run pairs and ipairs on fargs and pargs more than once. We also do not run
-- ipairs on fargs and pargs if pairs has already been run, as all the arguments will already have been
-- copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
return val
else
local firstVal = tidyVal(key, firstArgs[key])
if firstVal ~= nil then
return firstVal
else
return tidyVal(key, secondArgs[key])
end
end
end
metatable.__newindex = function (t, key, val)
if not options.readOnly and (not options.noOverwrite or metaArgs[key] == nil) then
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, firstArgs, secondArgs)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, firstArgs, secondArgs)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
respdbh675shrwq9c2xt0zddq92jln1
9563
9562
2013-12-09T07:17:32Z
meta>Mr. Stradivarius
0
check fargs and pargs before writing new values to args if options.noOverwrite is set
9563
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local arguments = {}
function arguments.getArgs(frame, options)
options = type(options) == 'table' and options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so assume arguments are passed directly in.
local fargs, pargs
if frame == mw.getCurrentFrame() then
fargs = frame.args
pargs = frame:getParent().args
else
fargs = type(frame) == 'table' and frame or {}
pargs = {}
end
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
local function tidyVal(key, val)
-- Processes a value according to the options given to getArguments. Can trim whitespace and remove blanks.
-- Keys are not used here, but they can be used by user-generated functions, so defining it here to avoid breakage.
if type(val) == 'string' then
if options.trim ~= false then
val = mw.text.trim(val)
end
if options.removeBlanks == false or mw.ustring.find(val, '%S') then
return val
end
else
return val
end
end
-- Use a user-generated functions to tidy the values if specified.
local valueFunc = options.valueFunc
if valueFunc then
local valueFuncType = type(valueFunc)
if valueFuncType == 'function' then
tidyVal = valueFunc
else
error('type error in option "valueFunc": expected function, got ' .. valueFuncType, 2)
end
end
local function mergeArgs(iterator, ...)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
local tables = {...}
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
metaArgs[key] = tidyVal(key, val)
end
end
end
end
-- Set the order of precedence of frame args and parent args.
local firstArgs, secondArgs = fargs, pargs
if options.parentFirst then
firstArgs, secondArgs = pargs, fargs
end
--[[
-- Define metatable behaviour. Arguments are stored in the metaArgs table, and are only fetched from the
-- fargs and pargs tables once. Also, we keep a record in the metatable of when pairs and ipairs have
-- been called, so we do not run pairs and ipairs on fargs and pargs more than once. We also do not run
-- ipairs on fargs and pargs if pairs has already been run, as all the arguments will already have been
-- copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
return val
else
local firstVal = tidyVal(key, firstArgs[key])
if firstVal ~= nil then
return firstVal
else
return tidyVal(key, secondArgs[key])
end
end
end
metatable.__newindex = function (t, key, val)
if not options.readOnly and (not options.noOverwrite or args[key] == nil) then
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, firstArgs, secondArgs)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, firstArgs, secondArgs)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
mlbkhbrepjlkuvulpiqimx2quqj08o3
9564
9563
2013-12-09T12:03:39Z
meta>Mr. Stradivarius
0
use an array to hold argument tables rather than firstArgs and secondArgs variables
9564
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local arguments = {}
function arguments.getArgs(frame, options)
options = type(options) == 'table' and options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so put the args in a special table so we can differentiate them.
local fargs, pargs, luaArgs
if frame == mw.getCurrentFrame() then
fargs = frame.args
pargs = frame:getParent().args
else
luaArgs = type(frame) == 'table' and frame or {}
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
local function tidyVal(key, val)
-- Processes a value according to the options given to getArguments. Can trim whitespace and remove blanks.
-- Keys are not used here, but they can be used by user-generated functions, so defining it here to avoid breakage.
if type(val) == 'string' then
if options.trim ~= false then
val = mw.text.trim(val)
end
if options.removeBlanks == false or mw.ustring.find(val, '%S') then
return val
end
else
return val
end
end
-- Use a user-generated function to tidy the values if specified.
local valueFunc = options.valueFunc
if valueFunc then
local valueFuncType = type(valueFunc)
if valueFuncType == 'function' then
tidyVal = valueFunc
else
error('type error in option "valueFunc": expected function, got ' .. valueFuncType, 2)
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
metaArgs[key] = tidyVal(key, val)
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {}
if options.parentFirst then
table.insert(argTables, pargs)
table.insert(argTables, fargs)
else
table.insert(argTables, fargs)
table.insert(argTables, pargs)
end
table.insert(argTables, luaArgs)
--[[
-- Define metatable behaviour. Arguments are stored in the metaArgs table, and are only fetched from the
-- argument tables once. Also, we keep a record in the metatable of when pairs and ipairs have been called,
-- so we do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs
-- and pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
return val
else
for i, argTable in ipairs(argTables) do
local argTableVal = tidyVal(argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
end
end
metatable.__newindex = function (t, key, val)
if not options.readOnly and (not options.noOverwrite or args[key] == nil) then
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
cnggoay1of5ctunrvq2ork858rst6b1
9565
9564
2013-12-09T12:08:10Z
meta>Mr. Stradivarius
0
add options.frameOnly and options.parentOnly
9565
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local arguments = {}
function arguments.getArgs(frame, options)
options = type(options) == 'table' and options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so put the args in a special table so we can differentiate them.
local fargs, pargs, luaArgs
if frame == mw.getCurrentFrame() then
fargs = frame.args
pargs = frame:getParent().args
else
luaArgs = type(frame) == 'table' and frame or {}
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
local function tidyVal(key, val)
-- Processes a value according to the options given to getArguments. Can trim whitespace and remove blanks.
-- Keys are not used here, but they can be used by user-generated functions, so defining it here to avoid breakage.
if type(val) == 'string' then
if options.trim ~= false then
val = mw.text.trim(val)
end
if options.removeBlanks == false or mw.ustring.find(val, '%S') then
return val
end
else
return val
end
end
-- Use a user-generated function to tidy the values if specified.
local valueFunc = options.valueFunc
if valueFunc then
local valueFuncType = type(valueFunc)
if valueFuncType == 'function' then
tidyVal = valueFunc
else
error('type error in option "valueFunc": expected function, got ' .. valueFuncType, 2)
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
metaArgs[key] = tidyVal(key, val)
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {}
if options.frameOnly then
table.insert(argTables, fargs)
elseif options.parentOnly then
table.insert(argTables, pargs)
elseif options.parentFirst then
table.insert(argTables, pargs)
table.insert(argTables, fargs)
else
table.insert(argTables, fargs)
table.insert(argTables, pargs)
end
table.insert(argTables, luaArgs)
--[[
-- Define metatable behaviour. Arguments are stored in the metaArgs table, and are only fetched from the
-- argument tables once. Also, we keep a record in the metatable of when pairs and ipairs have been called,
-- so we do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs
-- and pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
return val
else
for i, argTable in ipairs(argTables) do
local argTableVal = tidyVal(argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
end
end
metatable.__newindex = function (t, key, val)
if not options.readOnly and (not options.noOverwrite or args[key] == nil) then
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
i1cd8xjfl8l64tw0sc5540tcdcl9uf9
9566
9565
2013-12-09T13:22:16Z
meta>Mr. Stradivarius
0
oops, forgot the first parameter to tidyVal
9566
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local arguments = {}
function arguments.getArgs(frame, options)
options = type(options) == 'table' and options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so put the args in a special table so we can differentiate them.
local fargs, pargs, luaArgs
if frame == mw.getCurrentFrame() then
fargs = frame.args
pargs = frame:getParent().args
else
luaArgs = type(frame) == 'table' and frame or {}
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
local function tidyVal(key, val)
-- Processes a value according to the options given to getArguments. Can trim whitespace and remove blanks.
-- Keys are not used here, but they can be used by user-generated functions, so defining it here to avoid breakage.
if type(val) == 'string' then
if options.trim ~= false then
val = mw.text.trim(val)
end
if options.removeBlanks == false or mw.ustring.find(val, '%S') then
return val
end
else
return val
end
end
-- Use a user-generated function to tidy the values if specified.
local valueFunc = options.valueFunc
if valueFunc then
local valueFuncType = type(valueFunc)
if valueFuncType == 'function' then
tidyVal = valueFunc
else
error('type error in option "valueFunc": expected function, got ' .. valueFuncType, 2)
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
metaArgs[key] = tidyVal(key, val)
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {}
if options.frameOnly then
table.insert(argTables, fargs)
elseif options.parentOnly then
table.insert(argTables, pargs)
elseif options.parentFirst then
table.insert(argTables, pargs)
table.insert(argTables, fargs)
else
table.insert(argTables, fargs)
table.insert(argTables, pargs)
end
table.insert(argTables, luaArgs)
--[[
-- Define metatable behaviour. Arguments are stored in the metaArgs table, and are only fetched from the
-- argument tables once. Also, we keep a record in the metatable of when pairs and ipairs have been called,
-- so we do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs
-- and pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
return val
else
for i, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
end
end
metatable.__newindex = function (t, key, val)
if not options.readOnly and (not options.noOverwrite or args[key] == nil) then
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
juo949t1gclno1ik4ozv58xgea5ctdc
9567
9566
2013-12-09T13:51:00Z
meta>Mr. Stradivarius
0
Protected Module:Arguments: [[Wikipedia:Lua/Modules|High-risk Lua module]] ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
9566
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local arguments = {}
function arguments.getArgs(frame, options)
options = type(options) == 'table' and options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so put the args in a special table so we can differentiate them.
local fargs, pargs, luaArgs
if frame == mw.getCurrentFrame() then
fargs = frame.args
pargs = frame:getParent().args
else
luaArgs = type(frame) == 'table' and frame or {}
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
local function tidyVal(key, val)
-- Processes a value according to the options given to getArguments. Can trim whitespace and remove blanks.
-- Keys are not used here, but they can be used by user-generated functions, so defining it here to avoid breakage.
if type(val) == 'string' then
if options.trim ~= false then
val = mw.text.trim(val)
end
if options.removeBlanks == false or mw.ustring.find(val, '%S') then
return val
end
else
return val
end
end
-- Use a user-generated function to tidy the values if specified.
local valueFunc = options.valueFunc
if valueFunc then
local valueFuncType = type(valueFunc)
if valueFuncType == 'function' then
tidyVal = valueFunc
else
error('type error in option "valueFunc": expected function, got ' .. valueFuncType, 2)
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
metaArgs[key] = tidyVal(key, val)
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {}
if options.frameOnly then
table.insert(argTables, fargs)
elseif options.parentOnly then
table.insert(argTables, pargs)
elseif options.parentFirst then
table.insert(argTables, pargs)
table.insert(argTables, fargs)
else
table.insert(argTables, fargs)
table.insert(argTables, pargs)
end
table.insert(argTables, luaArgs)
--[[
-- Define metatable behaviour. Arguments are stored in the metaArgs table, and are only fetched from the
-- argument tables once. Also, we keep a record in the metatable of when pairs and ipairs have been called,
-- so we do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs
-- and pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
return val
else
for i, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
end
end
metatable.__newindex = function (t, key, val)
if not options.readOnly and (not options.noOverwrite or args[key] == nil) then
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
juo949t1gclno1ik4ozv58xgea5ctdc
9568
9567
2013-12-10T21:50:32Z
meta>Mr. Stradivarius
0
don't use "if frame == mw.getCurrentFrame()"
9568
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local arguments = {}
function arguments.getArgs(frame, options)
options = type(options) == 'table' and options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so put the args in a special table so we can differentiate them.
local fargs, pargs, luaArgs
if type(frame) == 'table' and type(frame.args) == 'table' and type(frame.getParent) == 'function' then
fargs = frame.args
pargs = frame:getParent().args
else
luaArgs = type(frame) == 'table' and frame or {}
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
local function tidyVal(key, val)
-- Processes a value according to the options given to getArguments. Can trim whitespace and remove blanks.
-- Keys are not used here, but they can be used by user-generated functions, so defining it here to avoid breakage.
if type(val) == 'string' then
if options.trim ~= false then
val = mw.text.trim(val)
end
if options.removeBlanks == false or mw.ustring.find(val, '%S') then
return val
end
else
return val
end
end
-- Use a user-generated function to tidy the values if specified.
local valueFunc = options.valueFunc
if valueFunc then
local valueFuncType = type(valueFunc)
if valueFuncType == 'function' then
tidyVal = valueFunc
else
error('type error in option "valueFunc": expected function, got ' .. valueFuncType, 2)
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
metaArgs[key] = tidyVal(key, val)
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {}
if options.frameOnly then
table.insert(argTables, fargs)
elseif options.parentOnly then
table.insert(argTables, pargs)
elseif options.parentFirst then
table.insert(argTables, pargs)
table.insert(argTables, fargs)
else
table.insert(argTables, fargs)
table.insert(argTables, pargs)
end
table.insert(argTables, luaArgs)
--[[
-- Define metatable behaviour. Arguments are stored in the metaArgs table, and are only fetched from the
-- argument tables once. Also, we keep a record in the metatable of when pairs and ipairs have been called,
-- so we do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs
-- and pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
return val
else
for i, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
end
end
metatable.__newindex = function (t, key, val)
if not options.readOnly and (not options.noOverwrite or args[key] == nil) then
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
fw8whdaiq5sne5u1uphpdb6t72sag4p
9569
9568
2013-12-11T13:06:02Z
meta>Mr. Stradivarius
0
memoize nils, add type checks for frame and options, use string library functions instead of mw.text.trim and mw.ustring.find, define four different tidyVal functions to avoid checking options every time
9569
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
local nilArg = {} -- Used for memoizing nil arguments in metaArgs.
-- Generate four different tidyVal functions, so that we don't have to check the options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so put the args in a special table so we can differentiate them.
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
pargs = frame:getParent().args
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
-- Generate the tidyVal function. If it has been specified by the user, we use that; if not, we choose one of four functions
-- depending on the options chosen. This is so that we don't have to call the options table every time the function is called.
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error("bad value assigned to option 'valueFunc' (function expected, got " .. type(tidyVal) .. ')', 2)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
-- We are also memoizing nil values, but those values can be overwritten.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
local metaArgsVal = metaArgs[key]
if metaArgsVal == nil or metaArgsVal == nilArg then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = tidiedVal
end
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table, and are only fetched from the
-- argument tables once. Nil arguments are also memoized using the nilArg variable in order to increase
-- performance. Also, we keep a record in the metatable of when pairs and ipairs have been called, so we
-- do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs and
-- pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
if val == nilArg then
return nil
else
return val
end
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = argTableVal
return argTableVal
end
end
return nil
end
metatable.__newindex = function (t, key, val)
if options.readOnly then
error('could not write to argument table key "' .. tostring(key) .. '"; the table is read-only', 2)
elseif options.noOverwrite and args[key] ~= nil then
error('could not write to argument table key "' .. tostring(key) .. '"; overwriting existing arguments is not permitted', 2)
elseif val == nil then
metaArgs[key] = nilArg -- Memoize nils.
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
c3vibkvz3pzg88rx3hmibeiaqgwytil
9570
9569
2013-12-12T03:13:28Z
meta>Mr. Stradivarius
0
tweak comment
9570
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
local nilArg = {} -- Used for memoizing nil arguments in metaArgs.
-- Generate four different tidyVal functions, so that we don't have to check the options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so assign the args to a new variable so we can differentiate them.
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
pargs = frame:getParent().args
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
-- Generate the tidyVal function. If it has been specified by the user, we use that; if not, we choose one of four functions
-- depending on the options chosen. This is so that we don't have to call the options table every time the function is called.
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error("bad value assigned to option 'valueFunc' (function expected, got " .. type(tidyVal) .. ')', 2)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
-- We are also memoizing nil values, but those values can be overwritten.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
local metaArgsVal = metaArgs[key]
if metaArgsVal == nil or metaArgsVal == nilArg then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = tidiedVal
end
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table, and are only fetched from the
-- argument tables once. Nil arguments are also memoized using the nilArg variable in order to increase
-- performance. Also, we keep a record in the metatable of when pairs and ipairs have been called, so we
-- do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs and
-- pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
if val == nilArg then
return nil
else
return val
end
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = argTableVal
return argTableVal
end
end
return nil
end
metatable.__newindex = function (t, key, val)
if options.readOnly then
error('could not write to argument table key "' .. tostring(key) .. '"; the table is read-only', 2)
elseif options.noOverwrite and args[key] ~= nil then
error('could not write to argument table key "' .. tostring(key) .. '"; overwriting existing arguments is not permitted', 2)
elseif val == nil then
metaArgs[key] = nilArg -- Memoize nils.
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
qyssoh3qk5jvu52bhgb0wo1r75pg59j
9571
9570
2013-12-18T00:51:27Z
meta>Mr. Stradivarius
0
Changed protection level of Module:Arguments: [[Wikipedia:Lua/Modules|High-risk Lua module]] ([Edit=Allow only template editors and admins] (indefinite) [Move=Allow only template editors and admins] (indefinite))
9570
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
local nilArg = {} -- Used for memoizing nil arguments in metaArgs.
-- Generate four different tidyVal functions, so that we don't have to check the options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so assign the args to a new variable so we can differentiate them.
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
pargs = frame:getParent().args
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
-- Generate the tidyVal function. If it has been specified by the user, we use that; if not, we choose one of four functions
-- depending on the options chosen. This is so that we don't have to call the options table every time the function is called.
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error("bad value assigned to option 'valueFunc' (function expected, got " .. type(tidyVal) .. ')', 2)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
-- We are also memoizing nil values, but those values can be overwritten.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
local metaArgsVal = metaArgs[key]
if metaArgsVal == nil or metaArgsVal == nilArg then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = tidiedVal
end
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table, and are only fetched from the
-- argument tables once. Nil arguments are also memoized using the nilArg variable in order to increase
-- performance. Also, we keep a record in the metatable of when pairs and ipairs have been called, so we
-- do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs and
-- pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
if val == nilArg then
return nil
else
return val
end
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = argTableVal
return argTableVal
end
end
return nil
end
metatable.__newindex = function (t, key, val)
if options.readOnly then
error('could not write to argument table key "' .. tostring(key) .. '"; the table is read-only', 2)
elseif options.noOverwrite and args[key] ~= nil then
error('could not write to argument table key "' .. tostring(key) .. '"; overwriting existing arguments is not permitted', 2)
elseif val == nil then
metaArgs[key] = nilArg -- Memoize nils.
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
qyssoh3qk5jvu52bhgb0wo1r75pg59j
9572
9571
2014-01-12T21:00:02Z
meta>Anomie
0
Fix __pairs and __ipairs functions to handle the nil marker
9572
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
local nilArg = {} -- Used for memoizing nil arguments in metaArgs.
-- Generate four different tidyVal functions, so that we don't have to check the options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so assign the args to a new variable so we can differentiate them.
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
pargs = frame:getParent().args
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
-- Generate the tidyVal function. If it has been specified by the user, we use that; if not, we choose one of four functions
-- depending on the options chosen. This is so that we don't have to call the options table every time the function is called.
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error("bad value assigned to option 'valueFunc' (function expected, got " .. type(tidyVal) .. ')', 2)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precendence.
-- We are also memoizing nil values, but those values can be overwritten.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
local metaArgsVal = metaArgs[key]
if metaArgsVal == nil or metaArgsVal == nilArg then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = tidiedVal
end
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table, and are only fetched from the
-- argument tables once. Nil arguments are also memoized using the nilArg variable in order to increase
-- performance. Also, we keep a record in the metatable of when pairs and ipairs have been called, so we
-- do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs and
-- pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
if val == nilArg then
return nil
else
return val
end
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = argTableVal
return argTableVal
end
end
return nil
end
metatable.__newindex = function (t, key, val)
if options.readOnly then
error('could not write to argument table key "' .. tostring(key) .. '"; the table is read-only', 2)
elseif options.noOverwrite and args[key] ~= nil then
error('could not write to argument table key "' .. tostring(key) .. '"; overwriting existing arguments is not permitted', 2)
elseif val == nil then
metaArgs[key] = nilArg -- Memoize nils.
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return function ( t, k )
local nk, val = next( metaArgs, k )
if val == nilArg then
val = nil
end
return nk, val
end
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return function ( t, i )
local val = metaArgs[i + 1]
if val == nil then
return nil
elseif val == nilArg then
val = nil
end
return i + 1, val
end, nil, 0
end
return args
end
return arguments
bq1j7mnfqj0aq4x4e8z2c46c5onxyh8
9573
9572
2014-01-13T05:40:58Z
meta>Mr. Stradivarius
0
tweak one of the comments and make some beautification fixes, now that this is in the job queue
9573
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from #invoke.
-- It is intended for use by other Lua modules, and should not be called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
local nilArg = {} -- Used for memoizing nil arguments in metaArgs.
-- Generate four different tidyVal functions, so that we don't have to check the options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
-- Get the arguments from the frame object if available. If the frame object is not available, we are being called
-- from another Lua module or from the debug console, so assign the args to a new variable so we can differentiate them.
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
pargs = frame:getParent().args
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set up the args and metaArgs tables. args will be the one accessed from functions, and metaArgs will hold the actual arguments.
-- The metatable connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
-- Generate the tidyVal function. If it has been specified by the user, we use that; if not, we choose one of four functions
-- depending on the options chosen. This is so that we don't have to call the options table every time the function is called.
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error("bad value assigned to option 'valueFunc' (function expected, got " .. type(tidyVal) .. ')', 2)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
local function mergeArgs(iterator, tables)
-- Accepts multiple tables as input and merges their keys and values into one table using the specified iterator.
-- If a value is already present it is not overwritten; tables listed earlier have precedence.
-- We are also memoizing nil values, but those values can be overwritten.
for _, t in ipairs(tables) do
for key, val in iterator(t) do
local metaArgsVal = metaArgs[key]
if metaArgsVal == nil or metaArgsVal == nilArg then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = tidiedVal
end
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are nil, nothing will be added to the table,
-- which is how we avoid clashes between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table, and are only fetched from the
-- argument tables once. Nil arguments are also memoized using the nilArg variable in order to increase
-- performance. Also, we keep a record in the metatable of when pairs and ipairs have been called, so we
-- do not run pairs and ipairs on fargs and pargs more than once. We also do not run ipairs on fargs and
-- pargs if pairs has already been run, as all the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if val ~= nil then
if val == nilArg then
return nil
else
return val
end
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = argTableVal
return argTableVal
end
end
return nil
end
metatable.__newindex = function (t, key, val)
if options.readOnly then
error('could not write to argument table key "' .. tostring(key) .. '"; the table is read-only', 2)
elseif options.noOverwrite and args[key] ~= nil then
error('could not write to argument table key "' .. tostring(key) .. '"; overwriting existing arguments is not permitted', 2)
elseif val == nil then
metaArgs[key] = nilArg -- Memoize nils.
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return function (t, k)
local nk, val = next(metaArgs, k)
if val == nilArg then
val = nil
end
return nk, val
end
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return function (t, i)
local val = metaArgs[i + 1]
if val == nil then
return nil
elseif val == nilArg then
val = nil
end
return i + 1, val
end, nil, 0
end
return args
end
return arguments
shj2fpwayer5zfm1tiuj45e19ovlmf1
9574
9559
2014-04-15T08:10:43Z
meta>Mr. Stradivarius
0
fix undefined next() behaviour bug by checking for metatable.donePairs in the __index metamethod; also, format the module so it fits into 80 characters
9574
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
local nilArg = {} -- Used for memoizing nil arguments in metaArgs.
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Get the arguments from the frame object if available. If the frame object
-- is not available, we are being called from another Lua module or from the
-- debug console, so assign the args to a new variable so we can
-- differentiate them.
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
pargs = frame:getParent().args
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set up the args and metaArgs tables. args will be the one accessed from
-- functions, and metaArgs will hold the actual arguments. The metatable
-- connects the two together.
local args, metaArgs, metatable = {}, {}, {}
setmetatable(args, metatable)
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
local function mergeArgs(iterator, tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table using the specified iterator. If a value is already
-- present it is not overwritten; tables listed earlier have precedence.
-- We are also memoizing nil values, but those values can be
-- overwritten.
--]]
for _, t in ipairs(tables) do
for key, val in iterator(t) do
local metaArgsVal = metaArgs[key]
if metaArgsVal == nil or metaArgsVal == nilArg then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = tidiedVal
end
end
end
end
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Nil arguments are
-- also memoized using the nilArg variable in order to increase performance.
-- Also, we keep a record in the metatable of when pairs and ipairs have
-- been called, so we do not run pairs and ipairs on fargs and pargs more
-- than once. We also do not run ipairs on fargs and pargs if pairs has
-- already been run, as all the arguments will already have been copied
-- over.
--]]
metatable.__index = function (t, key)
local val = metaArgs[key]
if metatable.donePairs or val ~= nil then
--[[
-- We have either memoized the argument already, or pairs has been
-- called, meaning that mergeArgs has already copied all of the
-- available arguments into the metaArgs table. We need to check for
-- pairs as we can't memoize nils to the metaArgs table while pairs
-- is iterating. Adding new instances of nilArg to the metaArgs
-- table while pairs is iterating over it produces undefined
-- behaviour in the next() function.
--]]
if val == nilArg then
return nil
else
return val
end
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal == nil then
metaArgs[key] = nilArg
else
metaArgs[key] = argTableVal
return argTableVal
end
end
return nil
end
metatable.__newindex = function (t, key, val)
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
metaArgs[key] = nilArg -- Memoize nils.
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return function (t, k)
local nk, val = next(metaArgs, k)
if val == nilArg then
val = nil
end
return nk, val
end
end
metatable.__ipairs = function ()
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return function (t, i)
local val = metaArgs[i + 1]
if val == nil then
return nil
elseif val == nilArg then
val = nil
end
return i + 1, val
end, nil, 0
end
return args
end
return arguments
soz7ckaiuuxtgprig23ayjvzn2s9sun
9575
9574
2014-04-18T10:30:10Z
meta>Mr. Stradivarius
0
memoize nils using a separate nilArgs table; this fixes a bug where nil values were being iterated over with pairs()
9575
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Get the arguments from the frame object if available. If the frame object
-- is not available, we are being called from another Lua module or from the
-- debug console, so assign the args to a new variable so we can
-- differentiate them.
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
pargs = frame:getParent().args
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(iterator, tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table using the specified iterator. If a value is already
-- present it is not overwritten; tables listed earlier have precedence.
-- We are also memoizing nil values, but those values can be
-- overwritten.
--]]
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = true
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal == nil then
nilArgs[key] = true
else
metaArgs[key] = argTableVal
return argTableVal
end
end
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = true -- Memoize nils.
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
-- Called when ipairs is run on the args table.
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
40uxhi8w4ka6how2vsohizy8ehdfiej
9576
9575
2014-06-06T14:24:47Z
meta>Mr. Stradivarius
0
add a "wrappers" option and fix bug when frame:getParent() returns nil, per protected edit request by [[User:Jackmcbarn]]
9576
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if v == title then
found = true
break
end
end
elseif options.wrappers == title then
found = true
end
if found then
pargs = parent.args
else
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(iterator, tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table using the specified iterator. If a value is already
-- present it is not overwritten; tables listed earlier have precedence.
-- We are also memoizing nil values, but those values can be
-- overwritten.
--]]
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = true
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal == nil then
nilArgs[key] = true
else
metaArgs[key] = argTableVal
return argTableVal
end
end
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = true
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
-- Called when ipairs is run on the args table.
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
30w8m8aul6mthv759io7vhd4e3tq5t8
9577
9576
2014-07-05T03:52:56Z
meta>Mr. Stradivarius
0
allow using both the frame and parent frame arguments with the wrappers option if specifically requested, per protected edit request by [[User:Jackmcbarn]]
9577
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if v == title then
found = true
break
end
end
elseif options.wrappers == title then
found = true
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(iterator, tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table using the specified iterator. If a value is already
-- present it is not overwritten; tables listed earlier have precedence.
-- We are also memoizing nil values, but those values can be
-- overwritten.
--]]
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = true
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal == nil then
nilArgs[key] = true
else
metaArgs[key] = argTableVal
return argTableVal
end
end
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = true
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
-- Called when ipairs is run on the args table.
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
m9ddo769dkkvlkz48buir34035j4qhc
9578
9577
2014-12-11T04:32:27Z
meta>Mr. Stradivarius
0
fix bug where explicitly deleted args were still appearing when iterated over with pairs or ipairs - code courtesy of [[User:Jackmcbarn]]
9578
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if v == title then
found = true
break
end
end
elseif options.wrappers == title then
found = true
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(iterator, tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table using the specified iterator. If a value is already
-- present it is not overwritten; tables listed earlier have precedence.
-- We are also memoizing nil values, which can be overwritten if they
-- are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in iterator(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(pairs, argTables)
metatable.donePairs = true
metatable.doneIpairs = true
end
return pairs(metaArgs)
end
metatable.__ipairs = function ()
-- Called when ipairs is run on the args table.
if not metatable.doneIpairs then
mergeArgs(ipairs, argTables)
metatable.doneIpairs = true
end
return ipairs(metaArgs)
end
return args
end
return arguments
7d4ocur2hyywy6ph59tc89jv97up2wi
9579
9578
2015-01-31T22:31:40Z
meta>Jackmcbarn
0
apply changes from sandbox - all tests pass
9579
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return pairs(metaArgs)
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
t970zub1k7inh2aeu97r09x0r0tku4d
9580
9579
2015-02-19T20:51:16Z
meta>Peteforsyth
0
20 revisions imported from [[:w:Module:Arguments]]: Attempting, per request from [[User:Titodutta]]. I'm not sure if "w" is the right source wiki (only a few options in drop-down menu)
9579
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return pairs(metaArgs)
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
t970zub1k7inh2aeu97r09x0r0tku4d
9581
9580
2015-06-26T22:53:15Z
meta>Jackmcbarn
0
add argument translation from sandbox - all tests pass
9581
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
9582
9581
2015-12-23T16:07:27Z
meta>Xaosflux
0
Changed protection level of Module:Arguments: used in the mediawiki interface ex: [[MediaWiki:Watchlist-details]] ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9581
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
9583
9582
2017-07-17T00:04:38Z
meta>Pharos
0
2 revisions imported from [[:w:Module:Arguments]]
9581
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
9584
9583
2019-02-14T01:32:53Z
meta>MusikAnimal
0
Protected "[[Module:Arguments]]": High-risk template ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9581
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
9585
8822
2021-10-29T20:02:22Z
meta>GeneralNotability
0
1 revision imported from [[:w:Module:Arguments]]: blame [[User:Barkeep49]]
8822
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
9586
9585
2025-04-17T05:49:28Z
meta>Veritas Sapientiae
0
5 revisions imported from [[:commons:Module:Arguments]]
8822
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
9587
9586
2025-04-27T20:14:11Z
meta>Pppery
0
Protected "[[Module:Arguments]]" ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
8822
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
9588
8823
2026-08-24T13:00:36Z
RAPTOR7762
18
29 revisions imported from [[:meta:Module:Arguments]]
998
Scribunto
text/plain
-- This module provides easy processing of arguments passed to Scribunto from
-- #invoke. It is intended for use by other Lua modules, and should not be
-- called from #invoke directly.
local libraryUtil = require('libraryUtil')
local checkType = libraryUtil.checkType
local arguments = {}
-- Generate four different tidyVal functions, so that we don't have to check the
-- options every time we call it.
local function tidyValDefault(key, val)
if type(val) == 'string' then
val = val:match('^%s*(.-)%s*$')
if val == '' then
return nil
else
return val
end
else
return val
end
end
local function tidyValTrimOnly(key, val)
if type(val) == 'string' then
return val:match('^%s*(.-)%s*$')
else
return val
end
end
local function tidyValRemoveBlanksOnly(key, val)
if type(val) == 'string' then
if val:find('%S') then
return val
else
return nil
end
else
return val
end
end
local function tidyValNoChange(key, val)
return val
end
local function matchesTitle(given, title)
local tp = type( given )
return (tp == 'string' or tp == 'number') and mw.title.new( given ).prefixedText == title
end
local translate_mt = { __index = function(t, k) return k end }
function arguments.getArgs(frame, options)
checkType('getArgs', 1, frame, 'table', true)
checkType('getArgs', 2, options, 'table', true)
frame = frame or {}
options = options or {}
--[[
-- Set up argument translation.
--]]
options.translate = options.translate or {}
if getmetatable(options.translate) == nil then
setmetatable(options.translate, translate_mt)
end
if options.backtranslate == nil then
options.backtranslate = {}
for k,v in pairs(options.translate) do
options.backtranslate[v] = k
end
end
if options.backtranslate and getmetatable(options.backtranslate) == nil then
setmetatable(options.backtranslate, {
__index = function(t, k)
if options.translate[k] ~= k then
return nil
else
return k
end
end
})
end
--[[
-- Get the argument tables. If we were passed a valid frame object, get the
-- frame arguments (fargs) and the parent frame arguments (pargs), depending
-- on the options set and on the parent frame's availability. If we weren't
-- passed a valid frame object, we are being called from another Lua module
-- or from the debug console, so assume that we were passed a table of args
-- directly, and assign it to a new variable (luaArgs).
--]]
local fargs, pargs, luaArgs
if type(frame.args) == 'table' and type(frame.getParent) == 'function' then
if options.wrappers then
--[[
-- The wrappers option makes Module:Arguments look up arguments in
-- either the frame argument table or the parent argument table, but
-- not both. This means that users can use either the #invoke syntax
-- or a wrapper template without the loss of performance associated
-- with looking arguments up in both the frame and the parent frame.
-- Module:Arguments will look up arguments in the parent frame
-- if it finds the parent frame's title in options.wrapper;
-- otherwise it will look up arguments in the frame object passed
-- to getArgs.
--]]
local parent = frame:getParent()
if not parent then
fargs = frame.args
else
local title = parent:getTitle():gsub('/sandbox$', '')
local found = false
if matchesTitle(options.wrappers, title) then
found = true
elseif type(options.wrappers) == 'table' then
for _,v in pairs(options.wrappers) do
if matchesTitle(v, title) then
found = true
break
end
end
end
-- We test for false specifically here so that nil (the default) acts like true.
if found or options.frameOnly == false then
pargs = parent.args
end
if not found or options.parentOnly == false then
fargs = frame.args
end
end
else
-- options.wrapper isn't set, so check the other options.
if not options.parentOnly then
fargs = frame.args
end
if not options.frameOnly then
local parent = frame:getParent()
pargs = parent and parent.args or nil
end
end
if options.parentFirst then
fargs, pargs = pargs, fargs
end
else
luaArgs = frame
end
-- Set the order of precedence of the argument tables. If the variables are
-- nil, nothing will be added to the table, which is how we avoid clashes
-- between the frame/parent args and the Lua args.
local argTables = {fargs}
argTables[#argTables + 1] = pargs
argTables[#argTables + 1] = luaArgs
--[[
-- Generate the tidyVal function. If it has been specified by the user, we
-- use that; if not, we choose one of four functions depending on the
-- options chosen. This is so that we don't have to call the options table
-- every time the function is called.
--]]
local tidyVal = options.valueFunc
if tidyVal then
if type(tidyVal) ~= 'function' then
error(
"bad value assigned to option 'valueFunc'"
.. '(function expected, got '
.. type(tidyVal)
.. ')',
2
)
end
elseif options.trim ~= false then
if options.removeBlanks ~= false then
tidyVal = tidyValDefault
else
tidyVal = tidyValTrimOnly
end
else
if options.removeBlanks ~= false then
tidyVal = tidyValRemoveBlanksOnly
else
tidyVal = tidyValNoChange
end
end
--[[
-- Set up the args, metaArgs and nilArgs tables. args will be the one
-- accessed from functions, and metaArgs will hold the actual arguments. Nil
-- arguments are memoized in nilArgs, and the metatable connects all of them
-- together.
--]]
local args, metaArgs, nilArgs, metatable = {}, {}, {}, {}
setmetatable(args, metatable)
local function mergeArgs(tables)
--[[
-- Accepts multiple tables as input and merges their keys and values
-- into one table. If a value is already present it is not overwritten;
-- tables listed earlier have precedence. We are also memoizing nil
-- values, which can be overwritten if they are 's' (soft).
--]]
for _, t in ipairs(tables) do
for key, val in pairs(t) do
if metaArgs[key] == nil and nilArgs[key] ~= 'h' then
local tidiedVal = tidyVal(key, val)
if tidiedVal == nil then
nilArgs[key] = 's'
else
metaArgs[key] = tidiedVal
end
end
end
end
end
--[[
-- Define metatable behaviour. Arguments are memoized in the metaArgs table,
-- and are only fetched from the argument tables once. Fetching arguments
-- from the argument tables is the most resource-intensive step in this
-- module, so we try and avoid it where possible. For this reason, nil
-- arguments are also memoized, in the nilArgs table. Also, we keep a record
-- in the metatable of when pairs and ipairs have been called, so we do not
-- run pairs and ipairs on the argument tables more than once. We also do
-- not run ipairs on fargs and pargs if pairs has already been run, as all
-- the arguments will already have been copied over.
--]]
metatable.__index = function (t, key)
--[[
-- Fetches an argument when the args table is indexed. First we check
-- to see if the value is memoized, and if not we try and fetch it from
-- the argument tables. When we check memoization, we need to check
-- metaArgs before nilArgs, as both can be non-nil at the same time.
-- If the argument is not present in metaArgs, we also check whether
-- pairs has been run yet. If pairs has already been run, we return nil.
-- This is because all the arguments will have already been copied into
-- metaArgs by the mergeArgs function, meaning that any other arguments
-- must be nil.
--]]
if type(key) == 'string' then
key = options.translate[key]
end
local val = metaArgs[key]
if val ~= nil then
return val
elseif metatable.donePairs or nilArgs[key] then
return nil
end
for _, argTable in ipairs(argTables) do
local argTableVal = tidyVal(key, argTable[key])
if argTableVal ~= nil then
metaArgs[key] = argTableVal
return argTableVal
end
end
nilArgs[key] = 'h'
return nil
end
metatable.__newindex = function (t, key, val)
-- This function is called when a module tries to add a new value to the
-- args table, or tries to change an existing value.
if type(key) == 'string' then
key = options.translate[key]
end
if options.readOnly then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; the table is read-only',
2
)
elseif options.noOverwrite and args[key] ~= nil then
error(
'could not write to argument table key "'
.. tostring(key)
.. '"; overwriting existing arguments is not permitted',
2
)
elseif val == nil then
--[[
-- If the argument is to be overwritten with nil, we need to erase
-- the value in metaArgs, so that __index, __pairs and __ipairs do
-- not use a previous existing value, if present; and we also need
-- to memoize the nil in nilArgs, so that the value isn't looked
-- up in the argument tables if it is accessed again.
--]]
metaArgs[key] = nil
nilArgs[key] = 'h'
else
metaArgs[key] = val
end
end
local function translatenext(invariant)
local k, v = next(invariant.t, invariant.k)
invariant.k = k
if k == nil then
return nil
elseif type(k) ~= 'string' or not options.backtranslate then
return k, v
else
local backtranslate = options.backtranslate[k]
if backtranslate == nil then
-- Skip this one. This is a tail call, so this won't cause stack overflow
return translatenext(invariant)
else
return backtranslate, v
end
end
end
metatable.__pairs = function ()
-- Called when pairs is run on the args table.
if not metatable.donePairs then
mergeArgs(argTables)
metatable.donePairs = true
end
return translatenext, { t = metaArgs }
end
local function inext(t, i)
-- This uses our __index metamethod
local v = t[i + 1]
if v ~= nil then
return i + 1, v
end
end
metatable.__ipairs = function (t)
-- Called when ipairs is run on the args table.
return inext, t, 0
end
return args
end
return arguments
5qx9tzlul9ser30uxj9nbasjt92cevn
Module:Navbar
828
263
9632
2013-05-13T16:34:16Z
meta>Frietjes
0
imported from [[:en:Module:Navbar]]
9632
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
function error(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
function getTitle( pageName )
pageName = trim( pageName );
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
page_title = mw.title.new( pageName, 'Template' );
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
function _navbar( args )
if not args[1] then
return error('No name provided')
end
local good, title, talk_title;
good, title, talk_title = pcall( getTitle, args[1] );
if not good then
return error('Expensive parser function limit exceeded');
end
if not title then
return error('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
h390uttz2d0kwp727rhi82zswybbf85
9633
9632
2015-06-24T02:39:56Z
meta>Jackmcbarn
0
update from enwiki
9633
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag('span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag('span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag('span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
p4k4w6fpxrech8gjz80ymsvfxebg9dz
9634
9633
2017-02-27T18:17:16Z
meta>Plagiat
0
update by [[w:User:MSGJ]|User:MSGJ]] to [[w:Special:Permalink/686648736|w:revision 686648736]]: changes requested by User:Matt Fitzpatrick to improve accessibility
9634
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
apzmy7cmwji35s1wt6iwhb6nnl1k3ni
9635
9634
2019-11-07T01:08:05Z
meta>MusikAnimal
0
Protected "[[Module:Navbar]]": High-risk Lua module ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
9634
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
apzmy7cmwji35s1wt6iwhb6nnl1k3ni
9636
9635
2021-07-05T15:24:12Z
meta>ExE Boss
0
Use [[mw:Special:MyLanguage/Help:TemplateStyles|TemplateStyles]] ([[Template:Flatlist/styles.css]])
9636
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
-- DELIBERATE DELTA FROM EN.WP THAT INTEGRATES HLIST TSTYLES
-- CARE WHEN SYNCING
return mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Template:Flatlist/styles.css' }
} .. tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
rs6qh1i12jz3xljz1xc0788xvce6u07
9637
9636
2021-07-06T14:21:10Z
meta>ExE Boss
0
Use [[mw:Special:MyLanguage/Help:TemplateStyles|TemplateStyles]] ([[Module:Navbar/styles.css]])
9637
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
-- DELIBERATE DELTA FROM EN.WP THAT INTEGRATES HLIST TSTYLES
-- CARE WHEN SYNCING
local frame = mw.getCurrentFrame()
return frame:extensionTag{
name = 'templatestyles', args = { src = 'Template:Flatlist/styles.css' }
} .. frame:extensionTag{
name = 'templatestyles', args = { src = 'Module:Navbar/styles.css' }
} .. tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
0vb5ikq5ojf76e04h3gazkvct05vfwg
9638
9637
2021-08-23T18:01:08Z
meta>MusikBot II
0
Changed protection settings for "[[Module:Navbar]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9637
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
-- DELIBERATE DELTA FROM EN.WP THAT INTEGRATES HLIST TSTYLES
-- CARE WHEN SYNCING
local frame = mw.getCurrentFrame()
return frame:extensionTag{
name = 'templatestyles', args = { src = 'Template:Flatlist/styles.css' }
} .. frame:extensionTag{
name = 'templatestyles', args = { src = 'Module:Navbar/styles.css' }
} .. tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
0vb5ikq5ojf76e04h3gazkvct05vfwg
9639
2013-03-16T02:45:49Z
w>Toohool
0
navbar code split from [[Module:Navbox]]
9639
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function _navbar( args )
if not args[1] then
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
return span
end
local title;
local pageName = trim(args[1])
if mw.ustring.sub(pageName, 1, 1) == ':' then
title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
title = mw.title.new( pageName );
if title.namespace == 0 then
title = mw.title.makeTitle( 'Template', pageName );
end
end
local mainpage = title.fullText;
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return div
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
p8f59aki3ul556y3hm0lifkdeiteckl
9640
9639
2013-03-16T02:47:20Z
w>Toohool
0
return an html string instead of an htmlbuilder
9640
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function _navbar( args )
if not args[1] then
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
return span
end
local title;
local pageName = trim(args[1])
if mw.ustring.sub(pageName, 1, 1) == ':' then
title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
title = mw.title.new( pageName );
if title.namespace == 0 then
title = mw.title.makeTitle( 'Template', pageName );
end
end
local mainpage = title.fullText;
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
ojkgfh903wn439eqdlu0m1j6tw3h3g1
9641
9640
2013-03-16T03:08:18Z
w>Dragons flight
0
If the documentation is accurate, this will use the namespace part of pageName first and fallback to Template if one isn't present, which is what we want.
9641
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function _navbar( args )
if not args[1] then
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
return span
end
local title;
local pageName = trim(args[1])
if mw.ustring.sub(pageName, 1, 1) == ':' then
title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
title = mw.title.new( pageName, 'Template' );
end
local mainpage = title.fullText;
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
cfm4luynmd3zcowp0107dw03pzfjmxt
9642
9641
2013-03-16T03:19:29Z
w>Dragons flight
0
match ought to be marginally faster
9642
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
function _navbar( args )
if not args[1] then
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
return span
end
local title;
local pageName = trim(args[1])
if mw.ustring.sub(pageName, 1, 1) == ':' then
title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
title = mw.title.new( pageName, 'Template' );
end
local mainpage = title.fullText;
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
h00ref819az8yv5gpz0sykriedjq65e
9643
9642
2013-03-19T00:58:05Z
w>Dragons flight
0
Protected Module:Navbar: [[WP:High-risk templates|Highly visible template]]: Used on a significant number of pages, but also still in testing. ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
9642
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
function _navbar( args )
if not args[1] then
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
return span
end
local title;
local pageName = trim(args[1])
if mw.ustring.sub(pageName, 1, 1) == ':' then
title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
title = mw.title.new( pageName, 'Template' );
end
local mainpage = title.fullText;
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
h00ref819az8yv5gpz0sykriedjq65e
9644
9643
2013-03-23T05:13:17Z
w>Toohool
0
return error for non-existent page
9644
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
function error(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
function _navbar( args )
if not args[1] then
return error('No name provided')
end
local title;
local pageName = trim(args[1])
if mw.ustring.sub(pageName, 1, 1) == ':' then
title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
title = mw.title.new( pageName, 'Template' );
end
if not title then
return error('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
oygybbs6gc1gqoev46537r7a0za6l7k
9645
9644
2013-03-26T02:45:52Z
w>Dragons flight
0
Changed protection level of Module:Navbar: [[WP:High-risk templates|Highly visible template or Lua module]] ([Edit=Block all non-admin users] (indefinite) [Move=Block all non-admin users] (indefinite))
9644
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
function error(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
function _navbar( args )
if not args[1] then
return error('No name provided')
end
local title;
local pageName = trim(args[1])
if mw.ustring.sub(pageName, 1, 1) == ':' then
title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
title = mw.title.new( pageName, 'Template' );
end
if not title then
return error('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
oygybbs6gc1gqoev46537r7a0za6l7k
9646
9645
2013-03-31T20:07:29Z
w>Dragons flight
0
handle expensive parser function limit without killing the box
9646
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
function error(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
function getTitle( pageName )
pageName = trim( pageName );
if mw.ustring.sub(pageName, 1, 1) == ':' then
return mw.title.new( mw.ustring.sub(pageName, 2) );
else
return mw.title.new( pageName, 'Template' );
end
end
function _navbar( args )
if not args[1] then
return error('No name provided')
end
local good, title;
good, title = pcall( getTitle, args[1] );
if not good then
return error('Expensive parser function limit exceeded');
end
if not title then
return error('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
j91n8ccxbxrx9b29oy9cpfor8v12422
9647
9646
2013-04-02T05:53:01Z
w>Dragons flight
0
also trap talk title
9647
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
function error(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
function getTitle( pageName )
pageName = trim( pageName );
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
page_title = mw.title.new( pageName, 'Template' );
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
function _navbar( args )
if not args[1] then
return error('No name provided')
end
local good, title, talk_title;
good, title, talk_title = pcall( getTitle, args[1] );
if not good then
return error('Expensive parser function limit exceeded');
end
if not title then
return error('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
h390uttz2d0kwp727rhi82zswybbf85
9648
9632
2013-09-03T13:47:09Z
w>Anomie
0
Let's not assume the error is because of the expensive function limit, it could be something else. Especially for people who import this module into MW 1.21 installations.
9648
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
function error(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
function getTitle( pageName )
pageName = trim( pageName );
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
page_title = mw.title.new( pageName, 'Template' );
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
function _navbar( args )
if not args[1] then
return error('No name provided')
end
local good, title, talk_title;
good, title, talk_title = pcall( getTitle, args[1] );
if not good then
return error(title);
end
if not title then
return error('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
sqtcbevb9kfapo50olhe1m7kv0f33q4
9649
9648
2013-12-03T17:17:17Z
w>Edokter
0
Does not work, now hidden in [[MediaWiki:Print.css]]
9649
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
function error(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
function getTitle( pageName )
pageName = trim( pageName );
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
page_title = mw.title.new( pageName, 'Template' );
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
function _navbar( args )
if not args[1] then
return error('No name provided')
end
local good, title, talk_title;
good, title, talk_title = pcall( getTitle, args[1] );
if not good then
return error(title);
end
if not title then
return error('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
39r5xaapswj46h9e1e5bjumm1znpf6n
9650
9649
2014-05-07T03:39:52Z
w>Plastikspork
0
Per edit request
9650
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
local function htmlError(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
local function getTitle( pageName )
pageName = trim( pageName );
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
page_title = mw.title.new( pageName, 'Template' );
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
local function _navbar( args )
if not args[1] then
return htmlError('No name provided')
end
local good, title, talk_title;
good, title, talk_title = pcall( getTitle, args[1] );
if not good then
return htmlError(title);
end
if not title then
return htmlError('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
pgfenjg9lfv7lom32qqeuqqbm3jnyxx
9651
9650
2014-05-23T20:04:37Z
w>Ymblanter
0
Changed protection level of Module:Navbar: RFPP request ([Edit=Allow only template editors and admins] (indefinite) [Move=Allow only template editors and admins] (indefinite))
9650
Scribunto
text/plain
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local function trim(s)
return mw.ustring.match( s, "^%s*(.-)%s*$" )
end
local function htmlError(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
local function getTitle( pageName )
pageName = trim( pageName );
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2) );
else
page_title = mw.title.new( pageName, 'Template' );
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
local function _navbar( args )
if not args[1] then
return htmlError('No name provided')
end
local good, title, talk_title;
good, title, talk_title = pcall( getTitle, args[1] );
if not good then
return htmlError(title);
end
if not title then
return htmlError('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return tostring(div)
end
function p.navbar(frame)
local origArgs
-- If called via #invoke, use the args passed into the invoking template.
-- Otherwise, for testing purposes, assume args are being passed directly in.
if frame == mw.getCurrentFrame() then
origArgs = frame:getParent().args
else
origArgs = frame
end
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbar}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(origArgs) do
if v ~= '' then
args[k] = v
end
end
return _navbar(args)
end
return p
pgfenjg9lfv7lom32qqeuqqbm3jnyxx
9652
9651
2014-05-23T21:09:40Z
w>Jackmcbarn
0
autofill name, export _navbar, use Module:Arguments, and fix whitespace, from sandbox
9652
Scribunto
text/plain
local p = {}
local getArgs
local HtmlBuilder = require('Module:HtmlBuilder')
local function trim(s)
return mw.ustring.match(s, "^%s*(.-)%s*$")
end
local function htmlError(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
local function getTitle(pageName)
pageName = trim(pageName);
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2));
else
page_title = mw.title.new(pageName, 'Template');
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
function p._navbar(args)
local good, title, talk_title;
good, title, talk_title = pcall(getTitle, args[1] or (':' .. mw.getCurrentFrame():getParent():getTitle()));
if not good then
return htmlError(title);
end
if not title then
return htmlError('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl('action=edit');
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create('div')
div
.addClass('plainlinks')
.addClass('hlist')
.addClass('navbar')
.cssText(args.style)
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag('span')
.css('word-spacing', 0)
.cssText(args.fontstyle)
.wikitext(args.text or 'This box:')
.wikitext(' ')
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText(args.fontstyle)
.wikitext('[')
.newline();
end
local ul = div.tag('ul');
ul
.tag('li')
.addClass('nv-view')
.wikitext('[[' .. mainpage .. '|')
.tag('span')
.attr('title', 'View this template')
.cssText(args.fontstyle or '')
.wikitext(viewLink)
.done()
.wikitext(']]')
.done()
.tag('li')
.addClass('nv-talk')
.wikitext('[[' .. talkpage .. '|')
.tag('span')
.attr('title', 'Discuss this template')
.cssText(args.fontstyle or '')
.wikitext(talkLink)
.done()
.wikitext(']]');
if not args.noedit then
ul
.tag('li')
.addClass('nv-edit')
.wikitext('[' .. editurl .. ' ')
.tag('span')
.attr('title', 'Edit this template')
.cssText(args.fontstyle or '')
.wikitext(editLink)
.done()
.wikitext(']');
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '')
.wikitext(']')
.newline();
end
return tostring(div)
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
dzntv6aewsjm6sgv7xaqnvrydnxztnh
9653
9652
2014-05-24T16:19:17Z
w>Jackmcbarn
0
support collapsible version
9653
Scribunto
text/plain
local p = {}
local getArgs
local HtmlBuilder = require('Module:HtmlBuilder')
local function trim(s)
return mw.ustring.match(s, "^%s*(.-)%s*$")
end
local function htmlError(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
local function getTitle(pageName)
pageName = trim(pageName);
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2));
else
page_title = mw.title.new(pageName, 'Template');
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
function p._navbar(args)
local good, title, talk_title;
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
good, title, talk_title = pcall(getTitle, args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle()));
if not good then
return htmlError(title);
end
if not title then
return htmlError('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl('action=edit');
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create().tag('div')
div
.addClass('plainlinks')
.addClass('hlist')
.addClass('navbar')
.cssText(args.style)
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag('span')
.css('word-spacing', 0)
.cssText(args.fontstyle)
.wikitext(args.text or 'This box:')
.wikitext(' ')
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText(args.fontstyle)
.wikitext('[')
.newline();
end
local ul = div.tag('ul');
ul
.tag('li')
.addClass('nv-view')
.wikitext('[[' .. mainpage .. '|')
.tag('span')
.attr('title', 'View this template')
.cssText(args.fontstyle or '')
.wikitext(viewLink)
.done()
.wikitext(']]')
.done()
.tag('li')
.addClass('nv-talk')
.wikitext('[[' .. talkpage .. '|')
.tag('span')
.attr('title', 'Discuss this template')
.cssText(args.fontstyle or '')
.wikitext(talkLink)
.done()
.wikitext(']]');
if not args.noedit then
ul
.tag('li')
.addClass('nv-edit')
.wikitext('[' .. editurl .. ' ')
.tag('span')
.attr('title', 'Edit this template')
.cssText(args.fontstyle or '')
.wikitext(editLink)
.done()
.wikitext(']');
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '')
.wikitext(']')
.newline();
end
if args.collapsible then
div
.done()
.tag('span')
.css('font-size', '110%')
.cssText(args.fontstyle or '')
.wikitext(args[1])
end
return tostring(div.allDone())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
j7p5dh2bvjhjjc8ldrudu3mm19xz9q6
9654
9653
2014-10-09T22:35:46Z
w>Jackmcbarn
0
inherit line height on the ul to override the 1.6 default, so that it doesn't take up 2 lines and cause off-centeredness in navboxes like [[Template:Grand Armee Corps]]
9654
Scribunto
text/plain
local p = {}
local getArgs
local HtmlBuilder = require('Module:HtmlBuilder')
local function trim(s)
return mw.ustring.match(s, "^%s*(.-)%s*$")
end
local function htmlError(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
local function getTitle(pageName)
pageName = trim(pageName);
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2));
else
page_title = mw.title.new(pageName, 'Template');
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
function p._navbar(args)
local good, title, talk_title;
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
good, title, talk_title = pcall(getTitle, args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle()));
if not good then
return htmlError(title);
end
if not title then
return htmlError('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl('action=edit');
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create().tag('div')
div
.addClass('plainlinks')
.addClass('hlist')
.addClass('navbar')
.cssText(args.style)
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag('span')
.css('word-spacing', 0)
.cssText(args.fontstyle)
.wikitext(args.text or 'This box:')
.wikitext(' ')
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText(args.fontstyle)
.wikitext('[')
.newline();
end
local ul = div.tag('ul')
.css('line-height', 'inherit'); -- otherwise, the default ul line height makes this take up 2 lines in navboxes, and makes the second line off-center
ul
.tag('li')
.addClass('nv-view')
.wikitext('[[' .. mainpage .. '|')
.tag('span')
.attr('title', 'View this template')
.cssText(args.fontstyle or '')
.wikitext(viewLink)
.done()
.wikitext(']]')
.done()
.tag('li')
.addClass('nv-talk')
.wikitext('[[' .. talkpage .. '|')
.tag('span')
.attr('title', 'Discuss this template')
.cssText(args.fontstyle or '')
.wikitext(talkLink)
.done()
.wikitext(']]');
if not args.noedit then
ul
.tag('li')
.addClass('nv-edit')
.wikitext('[' .. editurl .. ' ')
.tag('span')
.attr('title', 'Edit this template')
.cssText(args.fontstyle or '')
.wikitext(editLink)
.done()
.wikitext(']');
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '')
.wikitext(']')
.newline();
end
if args.collapsible then
div
.done()
.tag('span')
.css('font-size', '110%')
.cssText(args.fontstyle or '')
.wikitext(args[1])
end
return tostring(div.allDone())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
i35idk7btcyat69j7x466plob703usm
9655
9654
2014-10-10T07:31:12Z
w>Edokter
0
No longer needed; moved fix to Common.css.
9655
Scribunto
text/plain
local p = {}
local getArgs
local HtmlBuilder = require('Module:HtmlBuilder')
local function trim(s)
return mw.ustring.match(s, "^%s*(.-)%s*$")
end
local function htmlError(s)
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: ' .. s)
return tostring(span)
end
local function getTitle(pageName)
pageName = trim(pageName);
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2));
else
page_title = mw.title.new(pageName, 'Template');
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
function p._navbar(args)
local good, title, talk_title;
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
good, title, talk_title = pcall(getTitle, args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle()));
if not good then
return htmlError(title);
end
if not title then
return htmlError('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl('action=edit');
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create().tag('div')
div
.addClass('plainlinks')
.addClass('hlist')
.addClass('navbar')
.cssText(args.style)
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag('span')
.css('word-spacing', 0)
.cssText(args.fontstyle)
.wikitext(args.text or 'This box:')
.wikitext(' ')
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText(args.fontstyle)
.wikitext('[')
.newline();
end
local ul = div.tag('ul');
ul
.tag('li')
.addClass('nv-view')
.wikitext('[[' .. mainpage .. '|')
.tag('span')
.attr('title', 'View this template')
.cssText(args.fontstyle or '')
.wikitext(viewLink)
.done()
.wikitext(']]')
.done()
.tag('li')
.addClass('nv-talk')
.wikitext('[[' .. talkpage .. '|')
.tag('span')
.attr('title', 'Discuss this template')
.cssText(args.fontstyle or '')
.wikitext(talkLink)
.done()
.wikitext(']]');
if not args.noedit then
ul
.tag('li')
.addClass('nv-edit')
.wikitext('[' .. editurl .. ' ')
.tag('span')
.attr('title', 'Edit this template')
.cssText(args.fontstyle or '')
.wikitext(editLink)
.done()
.wikitext(']');
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '')
.wikitext(']')
.newline();
end
if args.collapsible then
div
.done()
.tag('span')
.css('font-size', '110%')
.cssText(args.fontstyle or '')
.wikitext(args[1])
end
return tostring(div.allDone())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
j7p5dh2bvjhjjc8ldrudu3mm19xz9q6
9656
9655
2014-11-24T21:07:38Z
w>Jackmcbarn
0
remove obnoxious pcall-and-rethrow behavior, now that real script errors include details
9656
Scribunto
text/plain
local p = {}
local getArgs
local HtmlBuilder = require('Module:HtmlBuilder')
local function trim(s)
return mw.ustring.match(s, "^%s*(.-)%s*$")
end
local function getTitle(pageName)
pageName = trim(pageName);
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2));
else
page_title = mw.title.new(pageName, 'Template');
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
function p._navbar(args)
local title, talk_title;
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
title, talk_title = getTitle(args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle()));
if not title then
error('Page does not exist')
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl('action=edit');
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create().tag('div')
div
.addClass('plainlinks')
.addClass('hlist')
.addClass('navbar')
.cssText(args.style)
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag('span')
.css('word-spacing', 0)
.cssText(args.fontstyle)
.wikitext(args.text or 'This box:')
.wikitext(' ')
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText(args.fontstyle)
.wikitext('[')
.newline();
end
local ul = div.tag('ul');
ul
.tag('li')
.addClass('nv-view')
.wikitext('[[' .. mainpage .. '|')
.tag('span')
.attr('title', 'View this template')
.cssText(args.fontstyle or '')
.wikitext(viewLink)
.done()
.wikitext(']]')
.done()
.tag('li')
.addClass('nv-talk')
.wikitext('[[' .. talkpage .. '|')
.tag('span')
.attr('title', 'Discuss this template')
.cssText(args.fontstyle or '')
.wikitext(talkLink)
.done()
.wikitext(']]');
if not args.noedit then
ul
.tag('li')
.addClass('nv-edit')
.wikitext('[' .. editurl .. ' ')
.tag('span')
.attr('title', 'Edit this template')
.cssText(args.fontstyle or '')
.wikitext(editLink)
.done()
.wikitext(']');
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '')
.wikitext(']')
.newline();
end
if args.collapsible then
div
.done()
.tag('span')
.css('font-size', '110%')
.cssText(args.fontstyle or '')
.wikitext(args[1])
end
return tostring(div.allDone())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
to8gt5pp12upq05few9w43d4tl3f07y
9657
9656
2014-11-27T22:46:08Z
w>Jackmcbarn
0
less misleading error message
9657
Scribunto
text/plain
local p = {}
local getArgs
local HtmlBuilder = require('Module:HtmlBuilder')
local function trim(s)
return mw.ustring.match(s, "^%s*(.-)%s*$")
end
local function getTitle(pageName)
pageName = trim(pageName);
local page_title, talk_page_title;
if mw.ustring.sub(pageName, 1, 1) == ':' then
page_title = mw.title.new( mw.ustring.sub(pageName, 2));
else
page_title = mw.title.new(pageName, 'Template');
end
if page_title then
talk_page_title = page_title.talkPageTitle;
else
talk_page_title = nil;
end
return page_title, talk_page_title;
end
function p._navbar(args)
local title, talk_title;
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
title, talk_title = getTitle(titleText);
if not title then
error('Invalid title ' .. titleText)
end
local mainpage = title.fullText;
local talkpage = talk_title and talk_title.fullText or ''
local editurl = title:fullUrl('action=edit');
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create().tag('div')
div
.addClass('plainlinks')
.addClass('hlist')
.addClass('navbar')
.cssText(args.style)
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag('span')
.css('word-spacing', 0)
.cssText(args.fontstyle)
.wikitext(args.text or 'This box:')
.wikitext(' ')
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText(args.fontstyle)
.wikitext('[')
.newline();
end
local ul = div.tag('ul');
ul
.tag('li')
.addClass('nv-view')
.wikitext('[[' .. mainpage .. '|')
.tag('span')
.attr('title', 'View this template')
.cssText(args.fontstyle or '')
.wikitext(viewLink)
.done()
.wikitext(']]')
.done()
.tag('li')
.addClass('nv-talk')
.wikitext('[[' .. talkpage .. '|')
.tag('span')
.attr('title', 'Discuss this template')
.cssText(args.fontstyle or '')
.wikitext(talkLink)
.done()
.wikitext(']]');
if not args.noedit then
ul
.tag('li')
.addClass('nv-edit')
.wikitext('[' .. editurl .. ' ')
.tag('span')
.attr('title', 'Edit this template')
.cssText(args.fontstyle or '')
.wikitext(editLink)
.done()
.wikitext(']');
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '')
.wikitext(']')
.newline();
end
if args.collapsible then
div
.done()
.tag('span')
.css('font-size', '110%')
.cssText(args.fontstyle or '')
.wikitext(args[1])
end
return tostring(div.allDone())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
jq72fnqcemxq6ogki5w41lckwjq9wyh
9658
9657
2014-11-30T21:04:48Z
w>Jackmcbarn
0
switch to mw.html and other cleanup from sandbox
9658
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag('span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag('span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag('span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
68dygg64f9aimscvjt3o11rlpvvp0jy
9659
9658
2014-11-30T21:51:43Z
w>George Orwell III
0
rem unneeded tabs/spacing for more unified importing/exporting
9659
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag('span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag('span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag('span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
p4k4w6fpxrech8gjz80ymsvfxebg9dz
9660
9633
2015-10-20T12:19:23Z
w>MSGJ
0
changes requested by [[User:Matt Fitzpatrick]] to improve accessibility
9660
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
apzmy7cmwji35s1wt6iwhb6nnl1k3ni
9661
9660
2015-12-22T16:44:07Z
w>Xaosflux
0
Changed protection level of Module:Navbar: used in the mediawiki interface ex: [[MediaWiki:Watchlist-details]] ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9660
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
apzmy7cmwji35s1wt6iwhb6nnl1k3ni
9662
9634
2017-03-21T11:27:08Z
w>Primefac
0
updating from sandbox per TPER
9662
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('div')
:css('font-size', '114%')
:css('margin', args.mini and '0 4em' or '0 7em')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
s7shg7kj96z0n5to737mnfjdkng0u6n
9663
9662
2017-03-21T12:11:35Z
w>Primefac
0
another update
9663
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('div')
:css('font-size', '114%')
:css('margin', args.mini and '0 4em' or '0 7em')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
friq3cegm4ms9pzac0g724b0con4klb
9664
9663
2017-05-13T12:41:14Z
w>Primefac
0
update from sandbox per [[Special:Diff/771417737]]
9664
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[ ')
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(' ]')
end
if args.collapsible then
div
:done()
:tag('div')
:css('font-size', '114%')
:css('margin', args.mini and '0 4em' or '0 7em')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
9d4ism2psi1oucu9pnyveg4m6i2oobx
9665
9664
2018-04-09T12:43:15Z
w>Primefac
0
implementing merger for [[Template:V]], [[Template:View]], and [[Template:Navbar]]
9665
Scribunto
text/plain
local p = {}
local getArgs
local ul
function p.addItem (mini, full, link, descrip, args, url)
local l
if url then
l = {'[', '', ']'}
else
l = {'[[', '|', ']]'}
end
ul:tag('li')
:addClass('nv-'..full)
:wikitext(l[1] .. link .. l[2])
:tag(args.mini and 'abbr' or 'span')
:attr('title', descrip..' this template')
:cssText(args.fontstyle)
:wikitext(args.mini and mini or full)
:done()
:wikitext(l[3])
end
function p.brackets (position, c, args, div)
if args.brackets then
div
:tag('span')
:css('margin-'..position, '-0.125em')
:cssText(args.fontstyle)
:wikitext(c)
end
end
function p._navbar(args)
local show = {true, true, true, false, false, false}
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then args.mini = 1 end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left'
end
if args.template then
titleArg = 'template'
show = {true, false, false, false, false, false}
local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6, talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
for k,v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
num = index[v]
if num then show[num] = true end
end
end
if args.noedit then show[3] = false end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template')
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
p.brackets('right', '[ ', args, div)
ul = div:tag('ul')
if show[1] then p.addItem('v', 'view', title.fullText, 'View', args) end
if show[2] then p.addItem('t', 'talk', talkpage, 'Discuss', args) end
if show[3] then p.addItem('e', 'edit', title:fullUrl('action=edit'), 'Edit', args, true) end
if show[4] then p.addItem('h', 'hist', title:fullUrl('action=history'), 'History of', args, true) end
if show[5] then
local move = mw.title.new ('Special:Movepage')
p.addItem('m', 'move', move:fullUrl('target='..title.fullText), 'Move', args, true) end
if show[6] then p.addItem('w', 'watch', title:fullUrl('action=watch'), 'Watch', args, true) end
p.brackets('left', ' ]', args, div)
if args.collapsible then
div
:done()
:tag('div')
:css('font-size', '114%')
:css('margin', args.mini and '0 4em' or '0 7em')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
bal0dox2i7kjw1f1hd3ls7kq5gsvdcx
9666
9665
2018-04-09T13:08:56Z
w>Trappist the monk
0
local div; fixed?
9666
Scribunto
text/plain
local p = {}
local getArgs
local ul
function p.addItem (mini, full, link, descrip, args, url)
local l
if url then
l = {'[', '', ']'}
else
l = {'[[', '|', ']]'}
end
ul:tag('li')
:addClass('nv-'..full)
:wikitext(l[1] .. link .. l[2])
:tag(args.mini and 'abbr' or 'span')
:attr('title', descrip..' this template')
:cssText(args.fontstyle)
:wikitext(args.mini and mini or full)
:done()
:wikitext(l[3])
end
function p.brackets (position, c, args, div)
if args.brackets then
div
:tag('span')
:css('margin-'..position, '-0.125em')
:cssText(args.fontstyle)
:wikitext(c)
end
end
function p._navbar(args)
local show = {true, true, true, false, false, false}
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then args.mini = 1 end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left'
end
if args.template then
titleArg = 'template'
show = {true, false, false, false, false, false}
local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6, talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
for k,v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
num = index[v]
if num then show[num] = true end
end
end
if args.noedit then show[3] = false end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template')
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
p.brackets('right', '[ ', args, div)
ul = div:tag('ul')
if show[1] then p.addItem('v', 'view', title.fullText, 'View', args) end
if show[2] then p.addItem('t', 'talk', talkpage, 'Discuss', args) end
if show[3] then p.addItem('e', 'edit', title:fullUrl('action=edit'), 'Edit', args, true) end
if show[4] then p.addItem('h', 'hist', title:fullUrl('action=history'), 'History of', args, true) end
if show[5] then
local move = mw.title.new ('Special:Movepage')
p.addItem('m', 'move', move:fullUrl('target='..title.fullText), 'Move', args, true) end
if show[6] then p.addItem('w', 'watch', title:fullUrl('action=watch'), 'Watch', args, true) end
p.brackets('left', ' ]', args, div)
if args.collapsible then
div
:done()
:tag('div')
:css('font-size', '114%')
:css('margin', args.mini and '0 4em' or '0 7em')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
ja1vxfd59yfupf40y634gvytofegw8j
9667
9666
2018-04-10T17:55:58Z
w>Primefac
0
another local
9667
Scribunto
text/plain
local p = {}
local getArgs
local ul
function p.addItem (mini, full, link, descrip, args, url)
local l
if url then
l = {'[', '', ']'}
else
l = {'[[', '|', ']]'}
end
ul:tag('li')
:addClass('nv-'..full)
:wikitext(l[1] .. link .. l[2])
:tag(args.mini and 'abbr' or 'span')
:attr('title', descrip..' this template')
:cssText(args.fontstyle)
:wikitext(args.mini and mini or full)
:done()
:wikitext(l[3])
end
function p.brackets (position, c, args, div)
if args.brackets then
div
:tag('span')
:css('margin-'..position, '-0.125em')
:cssText(args.fontstyle)
:wikitext(c)
end
end
function p._navbar(args)
local show = {true, true, true, false, false, false}
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then args.mini = 1 end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left'
end
if args.template then
titleArg = 'template'
show = {true, false, false, false, false, false}
local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6, talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
for k,v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
local num = index[v]
if num then show[num] = true end
end
end
if args.noedit then show[3] = false end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template')
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
p.brackets('right', '[ ', args, div)
ul = div:tag('ul')
if show[1] then p.addItem('v', 'view', title.fullText, 'View', args) end
if show[2] then p.addItem('t', 'talk', talkpage, 'Discuss', args) end
if show[3] then p.addItem('e', 'edit', title:fullUrl('action=edit'), 'Edit', args, true) end
if show[4] then p.addItem('h', 'hist', title:fullUrl('action=history'), 'History of', args, true) end
if show[5] then
local move = mw.title.new ('Special:Movepage')
p.addItem('m', 'move', move:fullUrl('target='..title.fullText), 'Move', args, true) end
if show[6] then p.addItem('w', 'watch', title:fullUrl('action=watch'), 'Watch', args, true) end
p.brackets('left', ' ]', args, div)
if args.collapsible then
div
:done()
:tag('div')
:css('font-size', '114%')
:css('margin', args.mini and '0 4em' or '0 7em')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
0kto9e56pycr6rz0vadnqvghkpm06x9
9668
9635
2020-04-01T06:12:45Z
w>MusikAnimal
0
1 revision imported
9634
Scribunto
text/plain
local p = {}
local getArgs
function p._navbar(args)
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then
args.mini = 1
end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left; width:6em;'
end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template');
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or '';
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
if args.brackets then
div
:tag('span')
:css('margin-right', '-0.125em')
:cssText(args.fontstyle)
:wikitext('[')
:newline();
end
local ul = div:tag('ul');
ul
:tag('li')
:addClass('nv-view')
:wikitext('[[' .. title.fullText .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'View this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'v' or 'view')
:done()
:wikitext(']]')
:done()
:tag('li')
:addClass('nv-talk')
:wikitext('[[' .. talkpage .. '|')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Discuss this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 't' or 'talk')
:done()
:wikitext(']]');
if not args.noedit then
ul
:tag('li')
:addClass('nv-edit')
:wikitext('[' .. title:fullUrl('action=edit') .. ' ')
:tag(args.mini and 'abbr' or 'span')
:attr('title', 'Edit this template')
:cssText(args.fontstyle)
:wikitext(args.mini and 'e' or 'edit')
:done()
:wikitext(']');
end
if args.brackets then
div
:tag('span')
:css('margin-left', '-0.125em')
:cssText(args.fontstyle)
:wikitext(']')
:newline();
end
if args.collapsible then
div
:done()
:tag('span')
:css('font-size', '110%')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
apzmy7cmwji35s1wt6iwhb6nnl1k3ni
9669
9668
2020-04-01T06:30:21Z
w>MusikAnimal
0
Undid revision 948472521 by [[Special:Contributions/w>MusikAnimal|w>MusikAnimal]] ([[User talk:w>MusikAnimal|talk]])
9669
Scribunto
text/plain
local p = {}
local getArgs
local ul
function p.addItem (mini, full, link, descrip, args, url)
local l
if url then
l = {'[', '', ']'}
else
l = {'[[', '|', ']]'}
end
ul:tag('li')
:addClass('nv-'..full)
:wikitext(l[1] .. link .. l[2])
:tag(args.mini and 'abbr' or 'span')
:attr('title', descrip..' this template')
:cssText(args.fontstyle)
:wikitext(args.mini and mini or full)
:done()
:wikitext(l[3])
end
function p.brackets (position, c, args, div)
if args.brackets then
div
:tag('span')
:css('margin-'..position, '-0.125em')
:cssText(args.fontstyle)
:wikitext(c)
end
end
function p._navbar(args)
local show = {true, true, true, false, false, false}
local titleArg = 1
if args.collapsible then
titleArg = 2
if not args.plain then args.mini = 1 end
if args.fontcolor then
args.fontstyle = 'color:' .. args.fontcolor .. ';'
end
args.style = 'float:left; text-align:left'
end
if args.template then
titleArg = 'template'
show = {true, false, false, false, false, false}
local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6, talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
for k,v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
local num = index[v]
if num then show[num] = true end
end
end
if args.noedit then show[3] = false end
local titleText = args[titleArg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local title = mw.title.new(mw.text.trim(titleText), 'Template')
if not title then
error('Invalid title ' .. titleText)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local div = mw.html.create():tag('div')
div
:addClass('plainlinks')
:addClass('hlist')
:addClass('navbar')
:cssText(args.style)
if args.mini then div:addClass('mini') end
if not (args.mini or args.plain) then
div
:tag('span')
:css('word-spacing', 0)
:cssText(args.fontstyle)
:wikitext(args.text or 'This box:')
:wikitext(' ')
end
p.brackets('right', '[ ', args, div)
ul = div:tag('ul')
if show[1] then p.addItem('v', 'view', title.fullText, 'View', args) end
if show[2] then p.addItem('t', 'talk', talkpage, 'Discuss', args) end
if show[3] then p.addItem('e', 'edit', title:fullUrl('action=edit'), 'Edit', args, true) end
if show[4] then p.addItem('h', 'hist', title:fullUrl('action=history'), 'History of', args, true) end
if show[5] then
local move = mw.title.new ('Special:Movepage')
p.addItem('m', 'move', move:fullUrl('target='..title.fullText), 'Move', args, true) end
if show[6] then p.addItem('w', 'watch', title:fullUrl('action=watch'), 'Watch', args, true) end
p.brackets('left', ' ]', args, div)
if args.collapsible then
div
:done()
:tag('div')
:css('font-size', '114%')
:css('margin', args.mini and '0 4em' or '0 7em')
:cssText(args.fontstyle)
:wikitext(args[1])
end
return tostring(div:done())
end
function p.navbar(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
return p._navbar(getArgs(frame))
end
return p
0kto9e56pycr6rz0vadnqvghkpm06x9
9670
9669
2020-12-08T00:35:00Z
w>Izno
0
some refactoring + templatestyles
9670
Scribunto
text/plain
local p = {}
local cfg = mw.loadData('Module:Navbar/configuration')
local function get_title_arg(is_collapsible, template)
local title_arg = 1
if is_collapsible then title_arg = 2 end
if template then title_arg = 'template' end
return title_arg
end
local function choose_links(template, args)
-- The show table indicates the default displayed items.
-- view, talk, edit, hist, move, watch
-- TODO: Move to configuration.
local show = {true, true, true, false, false, false}
if template then
show[2] = false
show[3] = false
local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6,
talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
-- TODO: Consider removing TableTools dependency.
for _, v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
local num = index[v]
if num then show[num] = true end
end
end
local remove_edit_link = args.noedit
if remove_edit_link then show[3] = false end
return show
end
local function add_link(link_description, ul, is_mini, font_style)
local l
if link_description.url then
l = {'[', '', ']'}
else
l = {'[[', '|', ']]'}
end
ul:tag('li')
:addClass('nv-' .. link_description.full)
:wikitext(l[1] .. link_description.link .. l[2])
:tag(is_mini and 'abbr' or 'span')
:attr('title', link_description.html_title)
:cssText(font_style)
:wikitext(is_mini and link_description.mini or link_description.full)
:done()
:wikitext(l[3])
:done()
end
local function make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
local title = mw.title.new(mw.text.trim(title_text), cfg.title_namespace)
if not title then
error(cfg.invalid_title .. title_text)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
-- TODO: Get link_descriptions and show into the configuration module.
-- link_descriptions should be easier...
local link_descriptions = {
{ ['mini'] = 'v', ['full'] = 'view', ['html_title'] = 'View this template',
['link'] = title.fullText, ['url'] = false },
{ ['mini'] = 't', ['full'] = 'talk', ['html_title'] = 'Discuss this template',
['link'] = talkpage, ['url'] = false },
{ ['mini'] = 'e', ['full'] = 'edit', ['html_title'] = 'Edit this template',
['link'] = title:fullUrl('action=edit'), ['url'] = true },
{ ['mini'] = 'h', ['full'] = 'hist', ['html_title'] = 'History of this template',
['link'] = title:fullUrl('action=history'), ['url'] = true },
{ ['mini'] = 'm', ['full'] = 'move', ['html_title'] = 'Move this template',
['link'] = mw.title.new('Special:Movepage'):fullUrl('target='..title.fullText), ['url'] = true },
{ ['mini'] = 'w', ['full'] = 'watch', ['html_title'] = 'Watch this template',
['link'] = title:fullUrl('action=watch'), ['url'] = true }
}
local ul = mw.html.create('ul')
if has_brackets then
ul:addClass(cfg.classes.brackets)
:cssText(font_style)
end
for i, _ in ipairs(displayed_links) do
if displayed_links[i] then add_link(link_descriptions[i], ul, is_mini, font_style) end
end
return ul:done()
end
function p._navbar(args)
-- TODO: We probably don't need both fontstyle and fontcolor...
local font_style = args.fontstyle
local font_color = args.fontcolor
local is_collapsible = args.collapsible
local is_mini = args.mini
local is_plain = args.plain
local collapsible_class = nil
if is_collapsible then
collapsible_class = cfg.classes.collapsible
if not is_plain then is_mini = 1 end
if font_color then
font_style = (font_style or '') .. '; color: ' .. font_color .. ';'
end
end
local navbar_style = args.style
local div = mw.html.create():tag('div')
div
:addClass(cfg.classes.navbar)
:addClass(cfg.classes.plainlinks)
:addClass(cfg.classes.horizontal_list)
:addClass(collapsible_class) -- we made the determination earlier
:cssText(navbar_style)
if is_mini then div:addClass(cfg.classes.mini) end
local box_text = (args.text or cfg.box_text) .. ' '
-- the concatenated space guarantees the box text is separated
if not (is_mini or is_plain) then
div
:tag('span')
:addClass(cfg.classes.box_text)
:cssText(font_style)
:wikitext(box_text)
end
local template = args.template
local displayed_links = choose_links(template, args)
local has_brackets = args.brackets
local title_arg = get_title_arg(is_collapsible, template)
local title_text = args[title_arg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local list = make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
div:node(list)
if is_collapsible then
local title_text_class
if is_mini then
title_text_class = cfg.classes.collapsible_title_mini
else
title_text_class = cfg.classes.collapsible_title_full
end
div:done()
:tag('div')
:addClass(title_text_class)
:cssText(font_style)
:wikitext(args[1])
end
return mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = cfg.templatestyles }
} .. tostring(div:done())
end
function p.navbar(frame)
return p._navbar(require('Module:Arguments').getArgs(frame))
end
return p
jd5no8v1zi4m1e6lvbwo0a9t0kogdvi
9671
9638
2021-08-24T17:32:47Z
w>WOSlinker
0
add text-decoration:inherit; so that underlined hover is in same color at text
9671
Scribunto
text/plain
local p = {}
local cfg = mw.loadData('Module:Navbar/configuration')
local function get_title_arg(is_collapsible, template)
local title_arg = 1
if is_collapsible then title_arg = 2 end
if template then title_arg = 'template' end
return title_arg
end
local function choose_links(template, args)
-- The show table indicates the default displayed items.
-- view, talk, edit, hist, move, watch
-- TODO: Move to configuration.
local show = {true, true, true, false, false, false}
if template then
show[2] = false
show[3] = false
local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6,
talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
-- TODO: Consider removing TableTools dependency.
for _, v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
local num = index[v]
if num then show[num] = true end
end
end
local remove_edit_link = args.noedit
if remove_edit_link then show[3] = false end
return show
end
local function add_link(link_description, ul, is_mini, font_style)
local l
if link_description.url then
l = {'[', '', ']'}
else
l = {'[[', '|', ']]'}
end
ul:tag('li')
:addClass('nv-' .. link_description.full)
:wikitext(l[1] .. link_description.link .. l[2])
:tag(is_mini and 'abbr' or 'span')
:attr('title', link_description.html_title)
:cssText(font_style)
:wikitext(is_mini and link_description.mini or link_description.full)
:done()
:wikitext(l[3])
:done()
end
local function make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
local title = mw.title.new(mw.text.trim(title_text), cfg.title_namespace)
if not title then
error(cfg.invalid_title .. title_text)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
-- TODO: Get link_descriptions and show into the configuration module.
-- link_descriptions should be easier...
local link_descriptions = {
{ ['mini'] = 'v', ['full'] = 'view', ['html_title'] = 'View this template',
['link'] = title.fullText, ['url'] = false },
{ ['mini'] = 't', ['full'] = 'talk', ['html_title'] = 'Discuss this template',
['link'] = talkpage, ['url'] = false },
{ ['mini'] = 'e', ['full'] = 'edit', ['html_title'] = 'Edit this template',
['link'] = title:fullUrl('action=edit'), ['url'] = true },
{ ['mini'] = 'h', ['full'] = 'hist', ['html_title'] = 'History of this template',
['link'] = title:fullUrl('action=history'), ['url'] = true },
{ ['mini'] = 'm', ['full'] = 'move', ['html_title'] = 'Move this template',
['link'] = mw.title.new('Special:Movepage'):fullUrl('target='..title.fullText), ['url'] = true },
{ ['mini'] = 'w', ['full'] = 'watch', ['html_title'] = 'Watch this template',
['link'] = title:fullUrl('action=watch'), ['url'] = true }
}
local ul = mw.html.create('ul')
if has_brackets then
ul:addClass(cfg.classes.brackets)
:cssText(font_style)
end
for i, _ in ipairs(displayed_links) do
if displayed_links[i] then add_link(link_descriptions[i], ul, is_mini, font_style) end
end
return ul:done()
end
function p._navbar(args)
-- TODO: We probably don't need both fontstyle and fontcolor...
local font_style = args.fontstyle
local font_color = args.fontcolor
local is_collapsible = args.collapsible
local is_mini = args.mini
local is_plain = args.plain
local collapsible_class = nil
if is_collapsible then
collapsible_class = cfg.classes.collapsible
if not is_plain then is_mini = 1 end
if font_color then
font_style = (font_style or '') .. '; color: ' .. font_color .. ';'
end
end
font_style = (font_style or '') .. ';text-decoration:inherit;'
local navbar_style = args.style
local div = mw.html.create():tag('div')
div
:addClass(cfg.classes.navbar)
:addClass(cfg.classes.plainlinks)
:addClass(cfg.classes.horizontal_list)
:addClass(collapsible_class) -- we made the determination earlier
:cssText(navbar_style)
if is_mini then div:addClass(cfg.classes.mini) end
local box_text = (args.text or cfg.box_text) .. ' '
-- the concatenated space guarantees the box text is separated
if not (is_mini or is_plain) then
div
:tag('span')
:addClass(cfg.classes.box_text)
:cssText(font_style)
:wikitext(box_text)
end
local template = args.template
local displayed_links = choose_links(template, args)
local has_brackets = args.brackets
local title_arg = get_title_arg(is_collapsible, template)
local title_text = args[title_arg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local list = make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
div:node(list)
if is_collapsible then
local title_text_class
if is_mini then
title_text_class = cfg.classes.collapsible_title_mini
else
title_text_class = cfg.classes.collapsible_title_full
end
div:done()
:tag('div')
:addClass(title_text_class)
:cssText(font_style)
:wikitext(args[1])
end
return mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = cfg.templatestyles }
} .. tostring(div:done())
end
function p.navbar(frame)
return p._navbar(require('Module:Arguments').getArgs(frame))
end
return p
pktzhjadawuzj4l3ly2m0dn971ajo3o
9672
9671
2021-10-29T20:02:32Z
meta>GeneralNotability
0
33 revisions imported from [[:w:Module:Navbar]]: blame [[User:Barkeep49]]
9671
Scribunto
text/plain
local p = {}
local cfg = mw.loadData('Module:Navbar/configuration')
local function get_title_arg(is_collapsible, template)
local title_arg = 1
if is_collapsible then title_arg = 2 end
if template then title_arg = 'template' end
return title_arg
end
local function choose_links(template, args)
-- The show table indicates the default displayed items.
-- view, talk, edit, hist, move, watch
-- TODO: Move to configuration.
local show = {true, true, true, false, false, false}
if template then
show[2] = false
show[3] = false
local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6,
talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
-- TODO: Consider removing TableTools dependency.
for _, v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
local num = index[v]
if num then show[num] = true end
end
end
local remove_edit_link = args.noedit
if remove_edit_link then show[3] = false end
return show
end
local function add_link(link_description, ul, is_mini, font_style)
local l
if link_description.url then
l = {'[', '', ']'}
else
l = {'[[', '|', ']]'}
end
ul:tag('li')
:addClass('nv-' .. link_description.full)
:wikitext(l[1] .. link_description.link .. l[2])
:tag(is_mini and 'abbr' or 'span')
:attr('title', link_description.html_title)
:cssText(font_style)
:wikitext(is_mini and link_description.mini or link_description.full)
:done()
:wikitext(l[3])
:done()
end
local function make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
local title = mw.title.new(mw.text.trim(title_text), cfg.title_namespace)
if not title then
error(cfg.invalid_title .. title_text)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
-- TODO: Get link_descriptions and show into the configuration module.
-- link_descriptions should be easier...
local link_descriptions = {
{ ['mini'] = 'v', ['full'] = 'view', ['html_title'] = 'View this template',
['link'] = title.fullText, ['url'] = false },
{ ['mini'] = 't', ['full'] = 'talk', ['html_title'] = 'Discuss this template',
['link'] = talkpage, ['url'] = false },
{ ['mini'] = 'e', ['full'] = 'edit', ['html_title'] = 'Edit this template',
['link'] = title:fullUrl('action=edit'), ['url'] = true },
{ ['mini'] = 'h', ['full'] = 'hist', ['html_title'] = 'History of this template',
['link'] = title:fullUrl('action=history'), ['url'] = true },
{ ['mini'] = 'm', ['full'] = 'move', ['html_title'] = 'Move this template',
['link'] = mw.title.new('Special:Movepage'):fullUrl('target='..title.fullText), ['url'] = true },
{ ['mini'] = 'w', ['full'] = 'watch', ['html_title'] = 'Watch this template',
['link'] = title:fullUrl('action=watch'), ['url'] = true }
}
local ul = mw.html.create('ul')
if has_brackets then
ul:addClass(cfg.classes.brackets)
:cssText(font_style)
end
for i, _ in ipairs(displayed_links) do
if displayed_links[i] then add_link(link_descriptions[i], ul, is_mini, font_style) end
end
return ul:done()
end
function p._navbar(args)
-- TODO: We probably don't need both fontstyle and fontcolor...
local font_style = args.fontstyle
local font_color = args.fontcolor
local is_collapsible = args.collapsible
local is_mini = args.mini
local is_plain = args.plain
local collapsible_class = nil
if is_collapsible then
collapsible_class = cfg.classes.collapsible
if not is_plain then is_mini = 1 end
if font_color then
font_style = (font_style or '') .. '; color: ' .. font_color .. ';'
end
end
font_style = (font_style or '') .. ';text-decoration:inherit;'
local navbar_style = args.style
local div = mw.html.create():tag('div')
div
:addClass(cfg.classes.navbar)
:addClass(cfg.classes.plainlinks)
:addClass(cfg.classes.horizontal_list)
:addClass(collapsible_class) -- we made the determination earlier
:cssText(navbar_style)
if is_mini then div:addClass(cfg.classes.mini) end
local box_text = (args.text or cfg.box_text) .. ' '
-- the concatenated space guarantees the box text is separated
if not (is_mini or is_plain) then
div
:tag('span')
:addClass(cfg.classes.box_text)
:cssText(font_style)
:wikitext(box_text)
end
local template = args.template
local displayed_links = choose_links(template, args)
local has_brackets = args.brackets
local title_arg = get_title_arg(is_collapsible, template)
local title_text = args[title_arg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local list = make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
div:node(list)
if is_collapsible then
local title_text_class
if is_mini then
title_text_class = cfg.classes.collapsible_title_mini
else
title_text_class = cfg.classes.collapsible_title_full
end
div:done()
:tag('div')
:addClass(title_text_class)
:cssText(font_style)
:wikitext(args[1])
end
return mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = cfg.templatestyles }
} .. tostring(div:done())
end
function p.navbar(frame)
return p._navbar(require('Module:Arguments').getArgs(frame))
end
return p
pktzhjadawuzj4l3ly2m0dn971ajo3o
9673
9672
2023-03-14T22:38:50Z
meta>MarcoAurelio
0
From [[Module:Navbar/sandbox]] per [[Special:Permalink/24716935#hlist|edit request]]
9673
Scribunto
text/plain
local p = {}
local cfg = mw.loadData('Module:Navbar/configuration')
local function get_title_arg(is_collapsible, template)
local title_arg = 1
if is_collapsible then title_arg = 2 end
if template then title_arg = 'template' end
return title_arg
end
local function choose_links(template, args)
-- The show table indicates the default displayed items.
-- view, talk, edit, hist, move, watch
-- TODO: Move to configuration.
local show = {true, true, true, false, false, false}
if template then
show[2] = false
show[3] = false
local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6,
talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
-- TODO: Consider removing TableTools dependency.
for _, v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
local num = index[v]
if num then show[num] = true end
end
end
local remove_edit_link = args.noedit
if remove_edit_link then show[3] = false end
return show
end
local function add_link(link_description, ul, is_mini, font_style)
local l
if link_description.url then
l = {'[', '', ']'}
else
l = {'[[', '|', ']]'}
end
ul:tag('li')
:addClass('nv-' .. link_description.full)
:wikitext(l[1] .. link_description.link .. l[2])
:tag(is_mini and 'abbr' or 'span')
:attr('title', link_description.html_title)
:cssText(font_style)
:wikitext(is_mini and link_description.mini or link_description.full)
:done()
:wikitext(l[3])
:done()
end
local function make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
local title = mw.title.new(mw.text.trim(title_text), cfg.title_namespace)
if not title then
error(cfg.invalid_title .. title_text)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
-- TODO: Get link_descriptions and show into the configuration module.
-- link_descriptions should be easier...
local link_descriptions = {
{ ['mini'] = 'v', ['full'] = 'view', ['html_title'] = 'View this template',
['link'] = title.fullText, ['url'] = false },
{ ['mini'] = 't', ['full'] = 'talk', ['html_title'] = 'Discuss this template',
['link'] = talkpage, ['url'] = false },
{ ['mini'] = 'e', ['full'] = 'edit', ['html_title'] = 'Edit this template',
['link'] = title:fullUrl('action=edit'), ['url'] = true },
{ ['mini'] = 'h', ['full'] = 'hist', ['html_title'] = 'History of this template',
['link'] = title:fullUrl('action=history'), ['url'] = true },
{ ['mini'] = 'm', ['full'] = 'move', ['html_title'] = 'Move this template',
['link'] = mw.title.new('Special:Movepage'):fullUrl('target='..title.fullText), ['url'] = true },
{ ['mini'] = 'w', ['full'] = 'watch', ['html_title'] = 'Watch this template',
['link'] = title:fullUrl('action=watch'), ['url'] = true }
}
local ul = mw.html.create('ul')
if has_brackets then
ul:addClass(cfg.classes.brackets)
:cssText(font_style)
end
for i, _ in ipairs(displayed_links) do
if displayed_links[i] then add_link(link_descriptions[i], ul, is_mini, font_style) end
end
return ul:done()
end
function p._navbar(args)
-- TODO: We probably don't need both fontstyle and fontcolor...
local font_style = args.fontstyle
local font_color = args.fontcolor
local is_collapsible = args.collapsible
local is_mini = args.mini
local is_plain = args.plain
local collapsible_class = nil
if is_collapsible then
collapsible_class = cfg.classes.collapsible
if not is_plain then is_mini = 1 end
if font_color then
font_style = (font_style or '') .. '; color: ' .. font_color .. ';'
end
end
local navbar_style = args.style
local div = mw.html.create():tag('div')
div
:addClass(cfg.classes.navbar)
:addClass(cfg.classes.plainlinks)
:addClass(cfg.classes.horizontal_list)
:addClass(collapsible_class) -- we made the determination earlier
:cssText(navbar_style)
if is_mini then div:addClass(cfg.classes.mini) end
local box_text = (args.text or cfg.box_text) .. ' '
-- the concatenated space guarantees the box text is separated
if not (is_mini or is_plain) then
div
:tag('span')
:addClass(cfg.classes.box_text)
:cssText(font_style)
:wikitext(box_text)
end
local template = args.template
local displayed_links = choose_links(template, args)
local has_brackets = args.brackets
local title_arg = get_title_arg(is_collapsible, template)
local title_text = args[title_arg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local list = make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
div:node(list)
if is_collapsible then
local title_text_class
if is_mini then
title_text_class = cfg.classes.collapsible_title_mini
else
title_text_class = cfg.classes.collapsible_title_full
end
div:done()
:tag('div')
:addClass(title_text_class)
:cssText(font_style)
:wikitext(args[1])
end
local frame = mw.getCurrentFrame()
-- hlist -> navbar is best-effort to preserve old Common.css ordering.
return frame:extensionTag{
name = 'templatestyles', args = { src = cfg.hlist_templatestyles }
} .. frame:extensionTag{
name = 'templatestyles', args = { src = cfg.templatestyles }
} .. tostring(div:done())
end
function p.navbar(frame)
return p._navbar(require('Module:Arguments').getArgs(frame))
end
return p
e8x4gsvao3bejgs0lle5fr5bug7ym1j
9674
8861
2026-08-24T13:00:37Z
RAPTOR7762
18
42 revisions imported from [[:meta:Module:Navbar]]
1128
Scribunto
text/plain
local p = {}
local cfg = mw.loadData('Module:Navbar/configuration')
local function get_title_arg(is_collapsible, template)
local title_arg = 1
if is_collapsible then title_arg = 2 end
if template then title_arg = 'template' end
return title_arg
end
local function choose_links(template, args)
-- The show table indicates the default displayed items.
-- view, talk, edit, hist, move, watch
-- TODO: Move to configuration.
local show = {true, true, true, false, false, false}
if template then
show[2] = false
show[3] = false
local index = {t = 2, d = 2, e = 3, h = 4, m = 5, w = 6,
talk = 2, edit = 3, hist = 4, move = 5, watch = 6}
-- TODO: Consider removing TableTools dependency.
for _, v in ipairs(require ('Module:TableTools').compressSparseArray(args)) do
local num = index[v]
if num then show[num] = true end
end
end
local remove_edit_link = args.noedit
if remove_edit_link then show[3] = false end
return show
end
local function add_link(link_description, ul, is_mini, font_style)
local l
if link_description.url then
l = {'[', '', ']'}
else
l = {'[[', '|', ']]'}
end
ul:tag('li')
:addClass('nv-' .. link_description.full)
:wikitext(l[1] .. link_description.link .. l[2])
:tag(is_mini and 'abbr' or 'span')
:attr('title', link_description.html_title)
:cssText(font_style)
:wikitext(is_mini and link_description.mini or link_description.full)
:done()
:wikitext(l[3])
:done()
end
local function make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
local title = mw.title.new(mw.text.trim(title_text), cfg.title_namespace)
if not title then
error(cfg.invalid_title .. title_text)
end
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
-- TODO: Get link_descriptions and show into the configuration module.
-- link_descriptions should be easier...
local link_descriptions = {
{ ['mini'] = 'v', ['full'] = 'view', ['html_title'] = 'View this template',
['link'] = title.fullText, ['url'] = false },
{ ['mini'] = 't', ['full'] = 'talk', ['html_title'] = 'Discuss this template',
['link'] = talkpage, ['url'] = false },
{ ['mini'] = 'e', ['full'] = 'edit', ['html_title'] = 'Edit this template',
['link'] = 'Special:EditPage/' .. title.fullText, ['url'] = false },
{ ['mini'] = 'h', ['full'] = 'hist', ['html_title'] = 'History of this template',
['link'] = 'Special:PageHistory/' .. title.fullText, ['url'] = false },
{ ['mini'] = 'm', ['full'] = 'move', ['html_title'] = 'Move this template',
['link'] = mw.title.new('Special:Movepage'):fullUrl('target='..title.fullText), ['url'] = true },
{ ['mini'] = 'w', ['full'] = 'watch', ['html_title'] = 'Watch this template',
['link'] = title:fullUrl('action=watch'), ['url'] = true }
}
local ul = mw.html.create('ul')
if has_brackets then
ul:addClass(cfg.classes.brackets)
:cssText(font_style)
end
for i, _ in ipairs(displayed_links) do
if displayed_links[i] then add_link(link_descriptions[i], ul, is_mini, font_style) end
end
return ul:done()
end
function p._navbar(args)
-- TODO: We probably don't need both fontstyle and fontcolor...
local font_style = args.fontstyle
local font_color = args.fontcolor
local is_collapsible = args.collapsible
local is_mini = args.mini
local is_plain = args.plain
local collapsible_class = nil
if is_collapsible then
collapsible_class = cfg.classes.collapsible
if not is_plain then is_mini = 1 end
if font_color then
font_style = (font_style or '') .. '; color: ' .. font_color .. ';'
end
end
local navbar_style = args.style
local div = mw.html.create():tag('div')
div
:addClass(cfg.classes.navbar)
:addClass(cfg.classes.plainlinks)
:addClass(cfg.classes.horizontal_list)
:addClass(collapsible_class) -- we made the determination earlier
:cssText(navbar_style)
if is_mini then div:addClass(cfg.classes.mini) end
local box_text = (args.text or cfg.box_text) .. ' '
-- the concatenated space guarantees the box text is separated
if not (is_mini or is_plain) then
div
:tag('span')
:addClass(cfg.classes.box_text)
:cssText(font_style)
:wikitext(box_text)
end
local template = args.template
local displayed_links = choose_links(template, args)
local has_brackets = args.brackets
local title_arg = get_title_arg(is_collapsible, template)
local title_text = args[title_arg] or (':' .. mw.getCurrentFrame():getParent():getTitle())
local list = make_list(title_text, has_brackets, displayed_links, is_mini, font_style)
div:node(list)
if is_collapsible then
local title_text_class
if is_mini then
title_text_class = cfg.classes.collapsible_title_mini
else
title_text_class = cfg.classes.collapsible_title_full
end
div:done()
:tag('div')
:addClass(title_text_class)
:cssText(font_style)
:wikitext(args[1])
end
local frame = mw.getCurrentFrame()
-- hlist -> navbar is best-effort to preserve old Common.css ordering.
return frame:extensionTag{
name = 'templatestyles', args = { src = cfg.hlist_templatestyles }
} .. frame:extensionTag{
name = 'templatestyles', args = { src = cfg.templatestyles }
} .. tostring(div:done())
end
function p.navbar(frame)
return p._navbar(require('Module:Arguments').getArgs(frame))
end
return p
0iwrh6fwqy52ve4qubv886e6mqvyrcq
Module:Navbar/configuration
828
264
9675
2020-12-04T07:55:17Z
w>Izno
0
move configuration to own pile
9675
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ',
['left_bracket'] = '[ ', -- '[ '
['right_bracket'] = ' ]', -- ' ]'
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['left_bracket'] = 'navbar-lbracket',
['right_bracket'] = 'navbar-rbracket',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full',
}
}
return configuration
nbptpmtc1p3kl7wcd0q1aq6mwxsju08
9676
9675
2020-12-04T07:56:13Z
w>Izno
0
Izno moved page [[Module:Navbar/configuration/sandbox]] to [[Module:Navbar/configuration]] without leaving a redirect
9675
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ',
['left_bracket'] = '[ ', -- '[ '
['right_bracket'] = ' ]', -- ' ]'
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['left_bracket'] = 'navbar-lbracket',
['right_bracket'] = 'navbar-rbracket',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full',
}
}
return configuration
nbptpmtc1p3kl7wcd0q1aq6mwxsju08
9677
9676
2020-12-04T08:55:15Z
w>Izno
0
add title_namespace
9677
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['left_bracket'] = '[ ', -- '[ '
['right_bracket'] = ' ]', -- ' ]'
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['left_bracket'] = 'navbar-lbracket',
['right_bracket'] = 'navbar-rbracket',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full',
}
}
return configuration
g8ppifty1a75gk8xrzsebqymkewjzlq
9678
9677
2020-12-06T15:04:35Z
w>Izno
0
add brackets class
9678
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['left_bracket'] = '[ ', -- '[ '
['right_bracket'] = ' ]', -- ' ]'
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
['left_bracket'] = 'navbar-lbracket',
['right_bracket'] = 'navbar-rbracket',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
return configuration
i02nxpm8rn2ublb5mxsq6n5wiem9k7n
9679
9678
2020-12-06T15:30:56Z
w>Izno
0
and remove other brackets here
9679
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
return configuration
4de4zb1o2wfws3w4iqtq7664oaj6il4
9680
9679
2020-12-06T15:43:28Z
w>Izno
0
navbar-mini
9680
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
return configuration
io0okdryeayb46k6fp573u2yc0g52st
9681
9680
2020-12-07T19:45:50Z
w>Izno
0
save this
9681
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
},
['default_links'] = {
-- configure true/false.
-- if you add/remove one, don't forget to update link_descriptions also
['view'] = true,
['talk'] = true,
['edit'] = true,
['hist'] = false,
['move'] = false,
['watch'] = false
}
}
return configuration
0x7o3osqxds64bv3l4eld2gxbj5633l
9682
9681
2020-12-07T19:51:37Z
w>Izno
0
Undid revision 992912931 by [[Special:Contributions/Izno|Izno]] ([[User talk:Izno|talk]]) nope
9682
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
return configuration
io0okdryeayb46k6fp573u2yc0g52st
9683
9682
2020-12-07T20:14:37Z
w>Izno
0
move some link_descriptions here
9683
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
},
link_descriptions = {
-- if you add an option to this, don't forget to update show and
-- link_descriptions_links
['view'] = {
['mini'] = 'v',
['full'] = 'view',
['html_title'] = 'View this template',
['url'] = false
},
['talk'] = {
['mini'] = 't',
['full'] = 'talk',
['html_title'] = 'Discuss this template',
['url'] = false
},
['edit'] = {
['mini'] = 'e',
['full'] = 'edit',
['html_title'] = 'Edit this template',
['url'] = true
},
['hist'] = {
['mini'] = 'h',
['full'] = 'hist',
['html_title'] = 'History of this template',
['url'] = true
},
['move'] = {
['mini'] = 'm',
['full'] = 'move',
['html_title'] = 'Move this template',
['url'] = true
},
['watch'] = {
['mini'] = 'w',
['full'] = 'watch',
['html_title'] = 'Watch this template',
['url'] = true
}
}
}
return configuration
cvp3m9mt16giyp6f4fnrp6t1fenf7p2
9684
9683
2020-12-07T20:36:25Z
w>Izno
0
commas hard
9684
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
},
link_descriptions = {
-- if you add an option to this, don't forget to update show and
-- link_descriptions_links
['view'] = {
['default_enabled'] = true,
['mini'] = 'v',
['full'] = 'view',
['html_title'] = 'View this template',
['url'] = false
},
['talk'] = {
['default_enabled'] = true,
['mini'] = 't',
['full'] = 'talk',
['html_title'] = 'Discuss this template',
['url'] = false
},
['edit'] = {
['default_enabled'] = true,
['mini'] = 'e',
['full'] = 'edit',
['html_title'] = 'Edit this template',
['url'] = true
},
['hist'] = {
['default_enabled'] = false,
['mini'] = 'h',
['full'] = 'hist',
['html_title'] = 'History of this template',
['url'] = true
},
['move'] = {
['default_enabled'] = false,
['mini'] = 'm',
['full'] = 'move',
['html_title'] = 'Move this template',
['url'] = true
},
['watch'] = {
['default_enabled'] = false,
['mini'] = 'w',
['full'] = 'watch',
['html_title'] = 'Watch this template',
['url'] = true
}
}
}
return configuration
7vq5lf49ug6ch6bmixo90b1jrdruywp
9685
9684
2020-12-07T20:45:52Z
w>Izno
0
hmm
9685
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
},
link_descriptions = {
-- if you add an option to this, don't forget to update show and
-- link_descriptions_links
view = {
['default_enabled'] = true,
['mini'] = 'v',
['full'] = 'view',
['html_title'] = 'View this template',
['url'] = false
},
talk = {
['default_enabled'] = true,
['mini'] = 't',
['full'] = 'talk',
['html_title'] = 'Discuss this template',
['url'] = false
},
edit = {
['default_enabled'] = true,
['mini'] = 'e',
['full'] = 'edit',
['html_title'] = 'Edit this template',
['url'] = true
},
hist = {
['default_enabled'] = false,
['mini'] = 'h',
['full'] = 'hist',
['html_title'] = 'History of this template',
['url'] = true
},
move = {
['default_enabled'] = false,
['mini'] = 'm',
['full'] = 'move',
['html_title'] = 'Move this template',
['url'] = true
},
watch = {
['default_enabled'] = false,
['mini'] = 'w',
['full'] = 'watch',
['html_title'] = 'Watch this template',
['url'] = true
}
}
}
return configuration
ot58kc0vdxmrlzq86zyk3sxlwdcs14w
9686
9685
2020-12-07T20:48:30Z
w>Izno
0
remove link_descriptions
9686
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = {
-- translate or set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
return configuration
io0okdryeayb46k6fp573u2yc0g52st
9687
9686
2020-12-08T00:16:09Z
w>Izno
0
poke
9687
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = { -- set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
return configuration
euidki6p5y779y3t22gmvkjf2jgpam7
9688
9687
2020-12-08T00:17:17Z
w>Izno
0
Protected "[[Module:Navbar/configuration]]": match parent template ([Edit=Require administrator access] (indefinite) [Move=Require administrator access] (indefinite))
9687
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = { -- set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
return configuration
euidki6p5y779y3t22gmvkjf2jgpam7
9689
9688
2021-10-29T20:02:36Z
meta>GeneralNotability
0
14 revisions imported from [[:w:Module:Navbar/configuration]]: blame [[User:Barkeep49]]
9687
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = { -- set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
return configuration
euidki6p5y779y3t22gmvkjf2jgpam7
9690
9689
2021-10-30T18:01:32Z
meta>MusikBot II
0
Protected "[[Module:Navbar/configuration]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9687
Scribunto
text/plain
local configuration = {
['templatestyles'] = 'Module:Navbar/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = { -- set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
return configuration
euidki6p5y779y3t22gmvkjf2jgpam7
9691
9690
2023-03-14T22:34:33Z
meta>MarcoAurelio
0
Port [[Module:Navbar/configuration/sandbox]] per [[Special:Permalink/24716935#hlist|edit request]]
9691
Scribunto
text/plain
return {
['templatestyles'] = 'Module:Navbar/styles.css',
['hlist_templatestyles'] = 'Flatlist/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = { -- set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
df3ufsfbua9z8ppazx2wr006mwe2xjx
9692
8863
2026-08-24T13:00:38Z
RAPTOR7762
18
17 revisions imported from [[:meta:Module:Navbar/configuration]]
1130
Scribunto
text/plain
return {
['templatestyles'] = 'Module:Navbar/styles.css',
['hlist_templatestyles'] = 'Hlist/styles.css',
['box_text'] = 'This box: ', -- default text box when not plain or mini
['title_namespace'] = 'Template', -- namespace to default to for title
['invalid_title'] = 'Invalid title ',
['classes'] = { -- set a line to nil if you don't want it
['navbar'] = 'navbar',
['plainlinks'] = 'plainlinks', -- plainlinks
['horizontal_list'] = 'hlist', -- horizontal list class
['mini'] = 'navbar-mini', -- class indicating small links in the navbar
['this_box'] = 'navbar-boxtext',
['brackets'] = 'navbar-brackets',
-- 'collapsible' is the key for a class to indicate the navbar is
-- setting up the collapsible element in addition to the normal
-- navbar.
['collapsible'] = 'navbar-collapse',
['collapsible_title_mini'] = 'navbar-ct-mini',
['collapsible_title_full'] = 'navbar-ct-full'
}
}
kk8qwxitcbzsvf797c9dznp7tw3a53p
Module:Navbar/styles.css
828
265
9693
2021-07-06T14:11:25Z
meta>ExE Boss
0
Copied from [[mw:Module:Navbar/styles.css]]
9693
sanitized-css
text/css
/** {{Shared Template Warning}}
* This TemplateStyles page is separately used for [[Template:Navbar]]
* because of course there are two versions of the same template.
* Be careful when adjusting styles accordingly.
*/
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline;
white-space: nowrap;
}
.navbar li {
word-spacing: -0.125em;
}
/* Navbar styling when nested in navbox */
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
width: 6em;
}
pjef11fnnriv88pf17yhw74jhy3pzaq
9694
9693
2021-07-06T18:00:57Z
meta>MusikBot II
0
Protected "[[Module:Navbar/styles.css]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9693
sanitized-css
text/css
/** {{Shared Template Warning}}
* This TemplateStyles page is separately used for [[Template:Navbar]]
* because of course there are two versions of the same template.
* Be careful when adjusting styles accordingly.
*/
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline;
white-space: nowrap;
}
.navbar li {
word-spacing: -0.125em;
}
/* Navbar styling when nested in navbox */
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
width: 6em;
}
pjef11fnnriv88pf17yhw74jhy3pzaq
9695
2018-10-30T23:13:22Z
w>Jdlrobson
0
Migrate Navbar styles from Mobile.css
9695
sanitized-css
text/css
body.skin-minerva .navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline;
white-space: nowrap;
}
.navbar li {
word-spacing: -0.125em;
}
.navbar.mini li span {
font-variant: small-caps;
}
/* Navbar styling when nested in infobox and navbox */
.navbox .navbar,
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
width: 6em;
}
disdcfbtxdjmb1nl8axcz17r69g974l
9696
9695
2018-10-30T23:16:45Z
w>Jdlrobson
0
be safe and limit these to minerva for time being (but I think we can consolidate these with MediaWiki:Common.css)
9696
sanitized-css
text/css
body.skin-minerva .navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
body.skin-minerva .navbar ul {
display: inline;
white-space: nowrap;
}
body.skin-minerva .navbar li {
word-spacing: -0.125em;
}
.body.skin-minerva navbar.mini li span {
font-variant: small-caps;
}
/* Navbar styling when nested in infobox and navbox */
body.skin-minerva .navbox .navbar,
body.skin-minerva .infobox .navbar {
font-size: 100%;
}
body.skin-minerva .navbox .navbar {
display: block;
}
body.skin-minerva .navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
width: 6em;
}
blcw1m6w4ptf77swsl0yywglbpmd3hk
9697
9696
2020-12-03T08:25:17Z
w>Izno
0
integrate 2 sheets
9697
sanitized-css
text/css
/* CSS below is common */
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
}
body.skin-Minerva .navbar ul {
display: inline; /* why does mobile differ here? */
}
.navbar li {
word-spacing: -0.125em;
}
/*
Space reserved for remaining common fixes.
*/
/* Navbar styling when nested in infobox and navbox */
/* Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
body.skin-Minerva .navbox-title .navbar {
width: 6em; /* Why does mobile set this width? */
}
/* CSS below is from Common.css */
.mw-body-content .navbar ul {
line-height: inherit; /* Why is this missing in Minerva? */
}
.navbar.mini li abbr[title] {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
/* CSS below is from Mobile.css */
.navbar.mini li span {
font-variant: small-caps; /* This just looks like it missed the update to abbr */
}
p9eopofv8euujo1imwyw61542i6va6a
9698
9697
2020-12-03T08:27:49Z
w>Izno
0
poke
9698
sanitized-css
text/css
/* CSS below is common */
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
}
body.skin-Minerva .navbar ul {
display: inline; /* why does mobile differ here? */
}
.navbar li {
word-spacing: -0.125em;
}
/*
Space reserved for remaining common fixes.
*/
/* Navbar styling when nested in infobox and navbox */
/* Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
body.skin-Minerva .navbox-title .navbar {
width: 6em; /* Why does mobile set this width? */
}
/* CSS below is from Common.css */
.mw-body-content .navbar ul {
line-height: inherit; /* Why is this missing in Minerva? */
}
.navbar.mini li abbr[title] { /* Not entirely certain why this is restricted to abbr with title; all abbrs must have a title */
font-variant: small-caps;
/* Below 3 rules missing from Minerva */
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
/* CSS below is from Mobile.css */
.navbar.mini li span {
font-variant: small-caps; /* This just looks like it missed the update to abbr */
}
dcnjv0dsl3i4nntet0lp2ikgi6dma8l
9699
9698
2020-12-03T20:44:32Z
w>Izno
0
Izno moved page [[Template:Navbar/styles.css]] to [[Module:Navbar/styles.css]] without leaving a redirect: navbar is implemented in module space
9698
sanitized-css
text/css
/* CSS below is common */
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
}
body.skin-Minerva .navbar ul {
display: inline; /* why does mobile differ here? */
}
.navbar li {
word-spacing: -0.125em;
}
/*
Space reserved for remaining common fixes.
*/
/* Navbar styling when nested in infobox and navbox */
/* Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
body.skin-Minerva .navbox-title .navbar {
width: 6em; /* Why does mobile set this width? */
}
/* CSS below is from Common.css */
.mw-body-content .navbar ul {
line-height: inherit; /* Why is this missing in Minerva? */
}
.navbar.mini li abbr[title] { /* Not entirely certain why this is restricted to abbr with title; all abbrs must have a title */
font-variant: small-caps;
/* Below 3 rules missing from Minerva */
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
/* CSS below is from Mobile.css */
.navbar.mini li span {
font-variant: small-caps; /* This just looks like it missed the update to abbr */
}
dcnjv0dsl3i4nntet0lp2ikgi6dma8l
9700
9699
2020-12-04T05:00:42Z
w>Izno
0
clean
9700
sanitized-css
text/css
/* CSS below is common */
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-lbracket {
margin-right: -0.125em;
}
.navbar-rbracket {
margin-left: -0.125em;
}
.navbar-c-title-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-c-title-mini {
font-size: 114%;
margin: 0 4em;
}
.navbar.mini li abbr,
.navbar.mini li span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
/* Navbar styling when nested in infobox and navbox */
/* Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
body.skin-Minerva .navbox-title .navbar {
width: 6em; /* Why does mobile set this width? */
}
/* body.everyoneelse */ .mw-body-content .navbar ul {
line-height: inherit;
}
4nbgw47xpc2hewp3zc4044kh7087qqv
9701
9700
2020-12-04T08:21:57Z
w>Izno
0
ct full/mini
9701
sanitized-css
text/css
/* CSS below is common */
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-lbracket {
margin-right: -0.125em;
}
.navbar-rbracket {
margin-left: -0.125em;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
.navbar.mini li abbr,
.navbar.mini li span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
body.skin-Minerva .navbox-title .navbar {
width: 6em; /* Why does mobile set this width? */
}
/* body.everyoneelse */ .mw-body-content .navbar ul {
line-height: inherit;
}
lc5792tk5onizu5jvqpfo3wrpn88bqw
9702
9701
2020-12-04T08:22:13Z
w>Izno
0
poke
9702
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-lbracket {
margin-right: -0.125em;
}
.navbar-rbracket {
margin-left: -0.125em;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
.navbar.mini li abbr,
.navbar.mini li span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
body.skin-Minerva .navbox-title .navbar {
width: 6em; /* Why does mobile set this width? */
}
/* body.everyoneelse */ .mw-body-content .navbar ul {
line-height: inherit;
}
enymyvlxjpol9fv1f8iwcje60dohekb
9703
9702
2020-12-04T09:56:14Z
w>Izno
0
remove per research
9703
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-lbracket {
margin-right: -0.125em;
}
.navbar-rbracket {
margin-left: -0.125em;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
.navbar.mini li abbr,
.navbar.mini li span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
/* body.everyoneelse */ .mw-body-content .navbar ul {
line-height: inherit;
}
aimxah17qdz33tvkcviubi8uhoni8q0
9704
9703
2020-12-04T09:59:16Z
w>Izno
0
and move that out of more specific rule
9704
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-lbracket {
margin-right: -0.125em;
}
.navbar-rbracket {
margin-left: -0.125em;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
.navbar.mini li abbr,
.navbar.mini li span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
l1ybjpv5fto8z6ur5l6438mbwv0i07y
9705
9704
2020-12-04T10:02:08Z
w>Izno
0
pokity poke poke
9705
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar-lbracket {
margin-right: -0.125em;
}
.navbar-rbracket {
margin-left: -0.125em;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar li {
word-spacing: -0.125em;
}
.navbar.mini li abbr,
.navbar.mini li span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%; /* marginally cheaper to have two rules of 114% */
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
mgonykp3y13coxdeax5otowy94u0m0s
9706
9705
2020-12-06T15:07:28Z
w>Izno
0
add brackets in css
9706
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar-lbracket {
margin-right: -0.125em;
}
.navbar-rbracket {
margin-left: -0.125em;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar li {
word-spacing: -0.125em;
}
.navbar.mini li abbr,
.navbar.mini li span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%; /* marginally cheaper to have two rules of 114% */
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
bzkutiooetk5ibolejptdifgno17b4m
9707
9706
2020-12-06T15:13:02Z
w>Izno
0
ok, not html character references
9707
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar-lbracket {
margin-right: -0.125em;
}
.navbar-rbracket {
margin-left: -0.125em;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar ul::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar ul::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar.mini li abbr,
.navbar.mini li span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%; /* marginally cheaper to have two rules of 114% */
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
36mkpkg5bwdf74r4vwuno1tt7b83v0y
9708
9707
2020-12-06T15:29:10Z
w>Izno
0
navbar-brackets
9708
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar-lbracket {
margin-right: -0.125em;
}
.navbar-rbracket {
margin-left: -0.125em;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar.mini li abbr,
.navbar.mini li span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%; /* marginally cheaper to have two rules of 114% */
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
cpu1ldxdenisribi1o1iaoetlv47tna
9709
9708
2020-12-06T15:41:24Z
w>Izno
0
move to navbar-mini
9709
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar-lbracket {
margin-right: -0.125em;
}
.navbar-rbracket {
margin-left: -0.125em;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-mini abbr,
.navbar-mini span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%; /* marginally cheaper to have two rules of 114% */
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
0uxgxn0l6hkj3c1zhudww0bhdqfxtwe
9710
9709
2020-12-06T15:42:30Z
w>Izno
0
nix lrbrackets
9710
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-mini abbr,
.navbar-mini span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%; /* marginally cheaper to have two rules of 114% */
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
mwbtfqip51pgdwa5ri6o5fuxys6y0jm
9711
9710
2020-12-07T13:53:14Z
w>Izno
0
clean
9711
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-mini abbr,
.navbar-mini span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
6im42m5k43kqc2ygh0z6xb0r4tc789d
9712
9711
2020-12-08T00:14:03Z
w>Izno
0
Protected "[[Module:Navbar/styles.css]]": [[WP:High-risk templates|Highly visible template]]: match to parent ([Edit=Require administrator access] (indefinite) [Move=Require administrator access] (indefinite))
9711
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-mini abbr,
.navbar-mini span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
6im42m5k43kqc2ygh0z6xb0r4tc789d
9713
9712
2020-12-08T00:14:21Z
w>Izno
0
pp
9713
sanitized-css
text/css
/* {{pp}} */
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-mini abbr,
.navbar-mini span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
l9jf90bajdsl019rkxke9v1ojgs0ouy
9714
9713
2020-12-08T00:14:55Z
w>Izno
0
small = yes
9714
sanitized-css
text/css
/* {{pp|small=yes}} */
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-mini abbr,
.navbar-mini span {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
82gntfxvlqadezsk4xs45d5pdo2ipq2
9715
9714
2020-12-08T00:40:59Z
w>Izno
0
navbar-mini is never a span, and span doesn't have all the stuff that needs resetting
9715
sanitized-css
text/css
/* {{pp|small=yes}} */
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar-mini abbr {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* Navbar styling when nested in infobox and navbox
Should consider having a separate TemplateStyles for those specific places
using an infobox/navbox and a navbar, or possibly override from using template */
.infobox .navbar {
font-size: 100%;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
slh5ct0wdlbpnikxf7x7x9dfeswx1km
9716
9694
2021-10-29T20:02:36Z
meta>GeneralNotability
0
21 revisions imported from [[:w:Module:Navbar/styles.css]]: blame [[User:Barkeep49]]
9693
sanitized-css
text/css
/** {{Shared Template Warning}}
* This TemplateStyles page is separately used for [[Template:Navbar]]
* because of course there are two versions of the same template.
* Be careful when adjusting styles accordingly.
*/
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar ul {
display: inline;
white-space: nowrap;
}
.navbar li {
word-spacing: -0.125em;
}
/* Navbar styling when nested in navbox */
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
width: 6em;
}
pjef11fnnriv88pf17yhw74jhy3pzaq
9717
9716
2023-03-14T22:36:11Z
meta>MarcoAurelio
0
From [[Module:Navbar/sandbox/styles.css]] per [[Special:Permalink/24716935#hlist|edit request]]
9717
sanitized-css
text/css
/** {{Shared Template Warning}}
* This TemplateStyles page is separately used for [[Template:Navbar]]
* because of course there are two versions of the same template.
* Be careful when adjusting styles accordingly.
*/
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar a > span,
.navbar a > abbr {
text-decoration: inherit;
}
.navbar-mini abbr {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
3elxs9ngpjrcgjzkmafpgla8em0kog0
9718
9717
2023-03-14T22:36:31Z
meta>MarcoAurelio
0
add line break
9718
sanitized-css
text/css
/** {{Shared Template Warning}}
* This TemplateStyles page is separately used for [[Template:Navbar]]
* because of course there are two versions of the same template.
* Be careful when adjusting styles accordingly.
*/
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar a > span,
.navbar a > abbr {
text-decoration: inherit;
}
.navbar-mini abbr {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
1tqu71po5skqdwt9o0173mb6fni5w2q
9719
9718
2023-03-14T22:37:18Z
meta>MarcoAurelio
0
ce
9719
sanitized-css
text/css
/**
* This TemplateStyles page is separately used for [[Template:Navbar]]
* because of course there are two versions of the same template.
* Be careful when adjusting styles accordingly.
*/
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar a > span,
.navbar a > abbr {
text-decoration: inherit;
}
.navbar-mini abbr {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
22vyzbsq5ykuzgd474imn272krhpv9g
9720
9719
2023-03-14T22:39:40Z
meta>MarcoAurelio
0
not needed
9720
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar a > span,
.navbar a > abbr {
text-decoration: inherit;
}
.navbar-mini abbr {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
tv0rodr5nuirgvmxcqgxt47nuxgqnv9
9721
8864
2025-08-26T16:00:35Z
meta>Pppery
0
/* {{pp-template}} */
9721
sanitized-css
text/css
/* {{pp-template}} */
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar a > span,
.navbar a > abbr {
text-decoration: inherit;
}
.navbar-mini abbr {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
nd76zw6ebwbmn1d6uemkc8fxy45i51m
9722
8865
2026-08-24T13:00:38Z
RAPTOR7762
18
29 revisions imported from [[:meta:Module:Navbar/styles.css]]
1132
sanitized-css
text/css
.navbar {
display: inline;
font-size: 88%;
font-weight: normal;
}
.navbar-collapse {
float: left;
text-align: left;
}
.navbar-boxtext {
word-spacing: 0;
}
.navbar ul {
display: inline-block;
white-space: nowrap;
line-height: inherit;
}
.navbar-brackets::before {
margin-right: -0.125em;
content: '[ ';
}
.navbar-brackets::after {
margin-left: -0.125em;
content: ' ]';
}
.navbar li {
word-spacing: -0.125em;
}
.navbar a > span,
.navbar a > abbr {
text-decoration: inherit;
}
.navbar-mini abbr {
font-variant: small-caps;
border-bottom: none;
text-decoration: none;
cursor: inherit;
}
.navbar-ct-full {
font-size: 114%;
margin: 0 7em;
}
.navbar-ct-mini {
font-size: 114%;
margin: 0 4em;
}
/* not the usual @media screen, we simply remove navbar in @media print */
html.skin-theme-clientpref-night .navbar li a abbr {
color: var(--color-base) !important;
}
@media (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os .navbar li a abbr {
color: var(--color-base) !important;
}
}
@media print {
.navbar {
display: none !important;
}
}
4adscvew8jzs01entb4br8tqpsrcves
Module:String
828
270
9589
2013-05-13T16:35:00Z
meta>Frietjes
0
imported from [[:en:Module:String]]
9589
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
l0shz7fzxb1bq626nihqwbptk7dfqd5
9590
9589
2014-01-28T12:04:22Z
meta>Verdy p
0
9590
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } )
local s = new_args['s'] or ''
local i = tonumber( new_args['i'] ) or 1
local j = tonumber( new_args['j'] ) or -1
local len = mw.ustring.len( s )
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1
end
if j < 0 then
j = len + j + 1
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' )
end
if j < i then
return str._error( 'String subset indices out of order' )
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{subr|s|skip|max}} and
is kept in order to maintain these older templates.
Uses only numbered paramameters to preserve spaces (caller may trim
whitespaces by passing the parameter explicitly by numbering the
parameters).
Accepts negative values as relative to strng length.
No error is returned if attempting to read past end of string or
before start of string.
Currently does not parse and replace placeholders for nowiki tags.
]]
function str.sublength( frame )
local s = frame.args[1] or '';
local skip = tonumber( frame.args[2] ) or 0;
local max = tonumber( frame.args[3] ) or 0;
local len = mw.ustring.len( s );
-- convert negative values of max and skip as relative to string length
if max < 0 then
max = len + max
end
if skip < 0 then
skip = len + skip
end
-- check boundaries to reduce the requested max
if skip < 0 then -- if before start of string
max = max + skip
skip = 0 -- skip can't underflow now
end
if max > len - skip then -- if past end of string
max = len - skip -- max can't overflow now
end
if max <= 0 then
return '' -- nothing left to return
end
return mw.ustring.sub( s, skip + 1, skip + max )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
e9zvxa6novk6t70sairzsparsn73ff6
9591
9590
2015-01-22T00:17:02Z
meta>Technical 13
0
Updated per version on enwp
9591
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{subr|s|skip|max}} and
is kept in order to maintain these older templates.
Uses only numbered paramameters to preserve spaces (caller may trim
whitespaces by passing the parameter explicitly by numbering the
parameters).
Accepts negative values as relative to strng length.
No error is returned if attempting to read past end of string or
before start of string.
Currently does not parse and replace placeholders for nowiki tags.
]]
function str.sublength( frame )
local s = frame.args[1] or '';
local skip = tonumber( frame.args[2] ) or 0;
local max = tonumber( frame.args[3] ) or 0;
local len = mw.ustring.len( s );
-- convert negative values of max and skip as relative to string length
if max < 0 then
max = len + max
end
if skip < 0 then
skip = len + skip
end
-- check boundaries to reduce the requested max
if skip < 0 then -- if before start of string
max = max + skip
skip = 0 -- skip can't underflow now
end
if max > len - skip then -- if past end of string
max = len - skip -- max can't overflow now
end
if max <= 0 then
return '' -- nothing left to return
end
return mw.ustring.sub( s, skip + 1, skip + max )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
p7kauspn14nrehhdza0f0zbrpve5c5i
9592
9591
2016-04-09T23:16:44Z
meta>Pathoschild
0
updated from [[w:Module:String]]
9592
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
l0shz7fzxb1bq626nihqwbptk7dfqd5
9593
9592
2016-04-10T13:42:58Z
meta>Redrose64
0
Undo revision 15513606 by [[Special:Contributions/Pathoschild|Pathoschild]] ([[User talk:Pathoschild|talk]]) rv, causes too much breakage such as in [[Template:Sub]]
9593
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{subr|s|skip|max}} and
is kept in order to maintain these older templates.
Uses only numbered paramameters to preserve spaces (caller may trim
whitespaces by passing the parameter explicitly by numbering the
parameters).
Accepts negative values as relative to strng length.
No error is returned if attempting to read past end of string or
before start of string.
Currently does not parse and replace placeholders for nowiki tags.
]]
function str.sublength( frame )
local s = frame.args[1] or '';
local skip = tonumber( frame.args[2] ) or 0;
local max = tonumber( frame.args[3] ) or 0;
local len = mw.ustring.len( s );
-- convert negative values of max and skip as relative to string length
if max < 0 then
max = len + max
end
if skip < 0 then
skip = len + skip
end
-- check boundaries to reduce the requested max
if skip < 0 then -- if before start of string
max = max + skip
skip = 0 -- skip can't underflow now
end
if max > len - skip then -- if past end of string
max = len - skip -- max can't overflow now
end
if max <= 0 then
return '' -- nothing left to return
end
return mw.ustring.sub( s, skip + 1, skip + max )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
p7kauspn14nrehhdza0f0zbrpve5c5i
9594
9593
2019-09-23T03:22:45Z
meta>Billinghurst
0
Protected "[[Module:String]]": Highly transcluded template ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9593
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{subr|s|skip|max}} and
is kept in order to maintain these older templates.
Uses only numbered paramameters to preserve spaces (caller may trim
whitespaces by passing the parameter explicitly by numbering the
parameters).
Accepts negative values as relative to strng length.
No error is returned if attempting to read past end of string or
before start of string.
Currently does not parse and replace placeholders for nowiki tags.
]]
function str.sublength( frame )
local s = frame.args[1] or '';
local skip = tonumber( frame.args[2] ) or 0;
local max = tonumber( frame.args[3] ) or 0;
local len = mw.ustring.len( s );
-- convert negative values of max and skip as relative to string length
if max < 0 then
max = len + max
end
if skip < 0 then
skip = len + skip
end
-- check boundaries to reduce the requested max
if skip < 0 then -- if before start of string
max = max + skip
skip = 0 -- skip can't underflow now
end
if max > len - skip then -- if past end of string
max = len - skip -- max can't overflow now
end
if max <= 0 then
return '' -- nothing left to return
end
return mw.ustring.sub( s, skip + 1, skip + max )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
p7kauspn14nrehhdza0f0zbrpve5c5i
9595
2013-02-19T03:20:21Z
w>Anomie
0
Create module
9595
Scribunto
text/plain
local str = {}
function str:len( frame )
return mw.ustring.len( frame.args[1] )
end
function str:sub( frame )
return mw.ustring.sub( frame.args[1], tonumber( frame.args[2] ), tonumber( frame.args[3] ) )
end
function str:match( frame )
return mw.ustring.match( frame.args[1], frame.args[2], tonumber( frame.args[3] ) )
end
return str
cvcgmp8d335kj156v29q3i0ddfb3zs9
9596
9595
2013-02-19T03:23:26Z
w>Anomie
0
wrong syntax
9596
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args[1] )
end
function str.sub( frame )
return mw.ustring.sub( frame.args[1], tonumber( frame.args[2] ), tonumber( frame.args[3] ) )
end
function str.match( frame )
return mw.ustring.match( frame.args[1], frame.args[2], tonumber( frame.args[3] ) )
end
return str
6ife379m4jl2vraif1xob35t4fege7n
9597
9596
2013-02-19T03:26:03Z
w>Anomie
0
Use named parameters, to get free trimming MediaWiki
9597
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.i ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
return str
moevwtzl2m4qgi1sby19hufig41uli7
9598
9597
2013-02-19T03:46:34Z
w>Anomie
0
Protected Module:String: [[WP:MOVP|Highly visible page]] ([Edit=Block all non-admin users] (indefinite) [Move=Block all non-admin users] (indefinite))
9597
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.i ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
return str
moevwtzl2m4qgi1sby19hufig41uli7
9599
9598
2013-02-21T00:15:30Z
w>Tim Starling
0
have sub return more than one character (broken by ID 538979768)
9599
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
return str
hxweenjbuco9skv4hz6kx41sf8rey1o
9600
9599
2013-02-21T01:49:07Z
w>Anomie
0
+ substr variant that takes a length instead of an ending position
9600
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 1
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i, len and ( i + len - 1 ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
return str
r2mtpgut47oi7filqf6lk0y4h96j6jz
9601
9600
2013-02-21T01:50:36Z
w>Anomie
0
Oh, the existing code is 0-based
9601
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
return str
kditbdlxhagfss3xykbgerro19gzsve
9602
9601
2013-02-22T16:29:07Z
w>Dragons flight
0
add support for finding the position of a string or pattern inside another string.
9602
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[====[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source". Both
strings have any leading or trailing whitespace removed before searching.
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]====]
function str.str_find( frame )
local source_str = frame.args.source or '';
local target_str = frame.args.target or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[====[
find
This function allows one to search for a target string or pattern within another
string.
Parameters:
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
Both "source" and "target" will be trimmed so that any leading or trailing
whitespace is removed prior to searching. This function should be safe for
UTF-8 strings.
]====]
function str.find( frame )
local source_str = frame.args.source or '';
local pattern = frame.args.target or '';
local start_pos = tonumber(frame.args.start) or 1;
local plain = frame.args.plain or true;
if source_str == '' or pattern == '' then
return 0;
end
if type( plain ) == 'string' then
plain = plain:lower();
if plain == 'false' or plain == 'no' or plain == '0' then
plain = false;
else
plain = true;
end
end
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
return str
da3e4q2vcwxbhkhjlr1a8oehqtv8l3o
9603
9602
2013-02-22T18:56:20Z
w>Dragons flight
0
Update to allow for unnamed parameters. This is necessary because some string function need to preserve leading / trailing whitespace in order to work properly.
9603
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[====[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]====]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[====[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]====]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
if type( plain ) == 'string' then
plain = plain:lower();
if plain == 'false' or plain == 'no' or plain == '0' then
plain = false;
else
plain = true;
end
end
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[====[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]====]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
return str
j0iukfcc8327q9tjwbi9mvbkwj38rwk
9604
9603
2013-02-24T04:55:14Z
w>Dragons flight
0
Continuing trials and tribulations of string trimming and Wikipedia template quirks
9604
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[====[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]====]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return '<strong class="error">String index out of range</strong>';
end
return mw.ustring.sub( target_str, pos, pos );
end
--[====[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]====]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[====[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]====]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
if type( plain ) == 'string' then
plain = plain:lower();
if plain == 'false' or plain == 'no' or plain == '0' then
plain = false;
else
plain = true;
end
end
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[====[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]====]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
return str
pgitrmqsqfgb66hekb6lf54wafhz94i
9605
9604
2013-02-24T13:59:31Z
w>WOSlinker
0
add str.replace_plain
9605
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[====[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]====]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return '<strong class="error">String index out of range</strong>';
end
return mw.ustring.sub( target_str, pos, pos );
end
--[====[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]====]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[====[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]====]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
if type( plain ) == 'string' then
plain = plain:lower();
if plain == 'false' or plain == 'no' or plain == '0' then
plain = false;
else
plain = true;
end
end
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[====[
replace_plain
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace_plain|source_str|pattern_string|replace_string|firstonlyflag}}
OR
{{#invoke:String|replace_plain|source=source_str|pattern=pattern_str|replace=replace_string|firstonly=firstonlyflag}}
Parameters
source: The string to search
patten: The string or pattern to find within source
replace: The replacement text
firstonly: Boolean flag indicating that only the first occurence found should be replaced
]====]
function str.replace_plain( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'firstonly' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local firstonly = new_args['firstonly'] or '';
firstonly = firstonly:lower();
if source_str == '' or pattern == '' then
return source_str;
end
local pattern_plain = mw.ustring.gsub(pattern, '%%', '%%%%');
local replace_plain = mw.ustring.gsub(replace, '%%', '%%%%');
if firstonly == 'true' or firstonly == 'yes' or firstonly == '1' then
local result = gsub( source_str, pattern_plain, replace_plain, 1 );
else
local result = gsub( source_str, pattern_plain, replace_plain, n );
end
return result;
end
--[====[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]====]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
return str
g8qf5v0jwt9xtxvoo1bn57hvifdpsc7
9606
9605
2013-02-24T14:00:53Z
w>WOSlinker
0
add str.replace_plain
9606
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[====[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]====]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return '<strong class="error">String index out of range</strong>';
end
return mw.ustring.sub( target_str, pos, pos );
end
--[====[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]====]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[====[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]====]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
if type( plain ) == 'string' then
plain = plain:lower();
if plain == 'false' or plain == 'no' or plain == '0' then
plain = false;
else
plain = true;
end
end
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[====[
replace_plain
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace_plain|source_str|pattern_string|replace_string|firstonlyflag}}
OR
{{#invoke:String|replace_plain|source=source_str|pattern=pattern_str|replace=replace_string|firstonly=firstonlyflag}}
Parameters
source: The string to search
patten: The string or pattern to find within source
replace: The replacement text
firstonly: Boolean flag indicating that only the first occurence found should be replaced
]====]
function str.replace_plain( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'firstonly' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local firstonly = new_args['firstonly'] or '';
firstonly = firstonly:lower();
if source_str == '' or pattern == '' then
return source_str;
end
local pattern_plain = mw.ustring.gsub(pattern, '%%', '%%%%');
local replace_plain = mw.ustring.gsub(replace, '%%', '%%%%');
if firstonly == 'true' or firstonly == 'yes' or firstonly == '1' then
local result = mw.ustring.gsub( source_str, pattern_plain, replace_plain, 1 );
else
local result = mw.ustring.gsub( source_str, pattern_plain, replace_plain, n );
end
return result;
end
--[====[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]====]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
return str
ih95sn1p6fedsey8isdedsk6dmddzph
9607
9606
2013-02-24T15:30:24Z
w>WOSlinker
0
replace_plain fix
9607
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[====[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]====]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return '<strong class="error">String index out of range</strong>';
end
return mw.ustring.sub( target_str, pos, pos );
end
--[====[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]====]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[====[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]====]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
if type( plain ) == 'string' then
plain = plain:lower();
if plain == 'false' or plain == 'no' or plain == '0' then
plain = false;
else
plain = true;
end
end
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[====[
replace_plain
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace_plain|source_str|pattern_string|replace_string|firstonlyflag}}
OR
{{#invoke:String|replace_plain|source=source_str|pattern=pattern_str|replace=replace_string|firstonly=firstonlyflag}}
Parameters
source: The string to search
patten: The string or pattern to find within source
replace: The replacement text
firstonly: Boolean flag indicating that only the first occurence found should be replaced
]====]
function str.replace_plain( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'firstonly' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local firstonly = new_args['firstonly'] or '';
firstonly = firstonly:lower();
if source_str == '' or pattern == '' then
return source_str;
end
local pattern_plain = mw.ustring.gsub(pattern, '%%', '%%%%');
local replace_plain = mw.ustring.gsub(replace, '%%', '%%%%');
local result;
if firstonly == 'true' or firstonly == 'yes' or firstonly == '1' then
result = mw.ustring.gsub( source_str, pattern_plain, replace_plain, 1 );
else
result = mw.ustring.gsub( source_str, pattern_plain, replace_plain, n );
end
return result;
end
--[====[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]====]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
return str
d41dvcq151vagyqwfjjs4atg0n0lmse
9608
9607
2013-02-24T19:31:06Z
w>Dragons flight
0
include more generic replacement function
9608
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[====[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]====]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return '<strong class="error">String index out of range</strong>';
end
return mw.ustring.sub( target_str, pos, pos );
end
--[====[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]====]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[====[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]====]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[====[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace_plain|source_str|pattern_string|replace_string|replacement_count|pattern_flag}}
OR
{{#invoke:String|replace_plain|source=source_str|pattern=pattern_str|replace=replace_string|
count=replacement_count|plain=pattern_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]====]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = str._escapePattern( replace );
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[====[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]====]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[====[
Helper Function to interpret boolean strings
]====]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[====[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]====]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
s902tt4gsmxm440dvam7pelh73suxw6
9609
9608
2013-02-24T19:32:46Z
w>Dragons flight
0
fix comment
9609
Scribunto
text/plain
local str = {}
function str.len( frame )
return mw.ustring.len( frame.args.s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[====[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]====]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return '<strong class="error">String index out of range</strong>';
end
return mw.ustring.sub( target_str, pos, pos );
end
--[====[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]====]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[====[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]====]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[====[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]====]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = str._escapePattern( replace );
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[====[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]====]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[====[
Helper Function to interpret boolean strings
]====]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[====[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]====]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
hk62c9y3bfxu9dcoyew5ch8ymixhvkc
9610
9609
2013-02-24T23:28:54Z
w>Dragons flight
0
add description and whitespace handling option for len
9610
Scribunto
text/plain
local str = {}
--[====[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|pos|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]====]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
function str.sub( frame )
return mw.ustring.sub( frame.args.s, tonumber( frame.args.i ), tonumber( frame.args.j ) )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[====[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]====]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return '<strong class="error">String index out of range</strong>';
end
return mw.ustring.sub( target_str, pos, pos );
end
--[====[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]====]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[====[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]====]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[====[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]====]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = str._escapePattern( replace );
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[====[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]====]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[====[
Helper Function to interpret boolean strings
]====]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[====[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]====]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
d2aorwd9asctczf7g8o527evnrvh438
9611
9610
2013-02-25T02:06:44Z
w>Dragons flight
0
improves commenting, adds whitespace and error handling to sub, improvements to error handling generally.
9611
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String]. If set to an empty
string, no category will be added during an error.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if j < i then
return str._error( 'String subset indices out of order' );
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
return mw.ustring.sub( s, i, j )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = str._escapePattern( replace );
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
6cghidens817tlki9vehboel8cl4maj
9612
9611
2013-02-25T03:39:33Z
w>Dragons flight
0
accommodate the commonly used "no_category" function
9612
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = str._escapePattern( replace );
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
g762xy7jgy0su7i70el67krhj753n01
9613
9612
2013-02-25T03:42:46Z
w>Dcoetzee
0
+Unit tests for this module are available at Module:String/tests.
9613
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = str._escapePattern( replace );
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
lnctwur039fsjq7s3gwcfpl6emqc0s2
9614
9613
2013-02-25T04:54:39Z
w>Dragons flight
0
fix pattern escape in replace function
9614
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
function str.match( frame )
return mw.ustring.match( frame.args.s, frame.args.pattern, tonumber( frame.args.i ) )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
lrdk0sl8cscokct4mrom61dat8j1mt4
9615
9614
2013-02-25T20:29:49Z
w>Dragons flight
0
adds updated match support with wider parameter choices, whitespace handling, etc.
9615
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain_flag: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
return str._error( 'Match not found' );
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
phhnu215iifi99bw3cl9o3zisht7x0c
9616
9615
2013-02-26T13:50:10Z
w>WOSlinker
0
add nomatch option to str.match
9616
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
bqjdxoaer9m8rc8hi30qhngdlwvu4vw
9617
9616
2013-04-26T10:52:01Z
w>Mr. Stradivarius
0
Add "rep" function per request by [[User:קיפודנחש]] at [[Wikipedia:Lua requests#Template:Loop and Template:Loop15]]. Copied from sandbox.
9617
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
l0shz7fzxb1bq626nihqwbptk7dfqd5
9618
9593
2019-03-04T14:04:23Z
w>Lectonar
0
Changed protection level for "[[Module:String]]": request at RfP ([Edit=Require template editor access] (indefinite) [Move=Require template editor access] (indefinite))
9618
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
l0shz7fzxb1bq626nihqwbptk7dfqd5
9619
9618
2019-05-04T02:38:11Z
w>Mr. Stradivarius
0
add an escapePattern function for escaping Lua patterns
9619
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' );
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
bw7qznlri1m8h7hpwz0q7aurbtcn8p0
9620
9619
2019-05-04T02:38:53Z
w>Mr. Stradivarius
0
use tabs instead of spaces, and remove trailing whitespace
9620
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' );
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
2qrvywoclfyw52qq13muu635i8a9s7z
9621
9620
2019-05-13T16:01:29Z
w>RexxS
0
export str._match function for use in other modules - syncing from sandbox
9621
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain, nomatch )
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
return str._match( s, pattern, start, match_index, plain, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' );
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
22vrhornt6jodjtsxqxyi7j8pmixe17
9622
9621
2019-05-13T17:03:30Z
w>RexxS
0
update renamed variable
9622
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain_flag, nomatch )
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
return str._match( s, pattern, start, match_index, plain_flag, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' );
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
kq0cmb8omt8fuv7tcs0ct6muar6yhjb
9623
9622
2019-05-27T15:47:53Z
w>RexxS
0
Implement the merge of Module:Join, Module:Str endswith, Module:PatternCount and Module:Text count into this module per their TfDs. Review and discussion is at https://en.wikipedia.org/w/index.php?title=Module_talk:String&oldid=899040020#Edit_request_to_implement_merges
9623
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } )
local s = new_args['s'] or ''
local i = tonumber( new_args['i'] ) or 1
local j = tonumber( new_args['j'] ) or -1
local len = mw.ustring.len( s )
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1
end
if j < 0 then
j = len + j + 1
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' )
end
if j < i then
return str._error( 'String subset indices out of order' )
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain_flag, nomatch )
if s == '' then
return str._error( 'Target string is empty' )
end
if pattern == '' then
return str._error( 'Pattern string is empty' )
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' )
end
if match_index == 0 then
return str._error( 'Match index is out of range' )
end
if plain_flag then
pattern = str._escapePattern( pattern )
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start )
end
local iterator = mw.ustring.gmatch(s, pattern)
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1
if match_index == 0 then
result = w
break
end
end
else
-- Reverse search
local result_table = {}
local count = 1
for w in iterator do
result_table[count] = w
count = count + 1
end
result = result_table[ count + match_index ]
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' )
else
return nomatch
end
else
return result
end
end
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} )
local s = new_args['s'] or ''
local start = tonumber( new_args['start'] ) or 1
local plain_flag = str._getBoolean( new_args['plain'] or false )
local pattern = new_args['pattern'] or ''
local match_index = math.floor( tonumber(new_args['match']) or 1 )
local nomatch = new_args['nomatch']
return str._match( s, pattern, start, match_index, plain_flag, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} )
local target_str = new_args['target'] or ''
local pos = tonumber( new_args['pos'] ) or 0
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' )
end
return mw.ustring.sub( target_str, pos, pos )
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} )
local source_str = new_args['source'] or ''
local target_str = new_args['target'] or ''
if target_str == '' then
return 1
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['target'] or ''
local start_pos = tonumber(new_args['start']) or 1
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return 0
end
plain = str._getBoolean( plain )
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['pattern'] or ''
local replace = new_args['replace'] or ''
local count = tonumber( new_args['count'] )
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return source_str
end
plain = str._getBoolean( plain )
if plain then
pattern = str._escapePattern( pattern )
replace = mw.ustring.gsub( replace, "%%", "%%%%" ) --Only need to escape replacement sequences.
end
local result
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count )
else
result = mw.ustring.gsub( source_str, pattern, replace )
end
return result
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' )
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
count
This function counts the number of occurrences of one string in another.
]]
function str.count(frame)
local args = str._getParameters(frame.args, {'source', 'pattern', 'plain'})
local source = args.source or ''
local pattern = args.pattern or ''
local plain = str._getBoolean(args.plain or true)
if plain then
pattern = str._escapePattern(pattern)
end
local _, count = mw.ustring.gsub(source, pattern, '')
return count
end
--[[
endswith
This function determines whether a string ends with another string.
]]
function str.endswith(frame)
local args = str._getParameters(frame.args, {'source', 'pattern'})
local source = args.source or ''
local pattern = args.pattern or ''
if pattern == '' then
-- All strings end with the empty string.
return "yes"
end
if mw.ustring.sub(source, -mw.ustring.len(pattern), -1) == pattern then
return "yes"
else
return ""
end
end
--[[
join
Join all non empty arguments together; the first argument is the separator.
Usage:
{{#invoke:String|join|sep|one|two|three}}
]]
function str.join(frame)
local args = {}
local sep
for _, v in ipairs( frame.args ) do
if sep then
if v ~= '' then
table.insert(args, v)
end
else
sep = v
end
end
return table.concat( args, sep or '' )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {}
local index = 1
local value
for _, arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index]
index = index + 1
end
new_args[arg] = value
end
return new_args
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame()
local error_category = frame.args.error_category or 'Errors reported by Module String'
local ignore_errors = frame.args.ignore_errors or false
local no_category = frame.args.no_category or false
if str._getBoolean(ignore_errors) then
return ''
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>'
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str
end
return error_str
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower()
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false
else
boolean_value = true
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str
else
error( 'No boolean value found' )
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" )
end
return str
q0zkbbzmgvt15iy6j94nnyg4ee4vn7f
9624
9623
2019-06-27T17:35:16Z
w>Dinoguy1000
0
copy fixed comment from sandbox: this has been wrong for years, and when I [[Special:Diff/759708044|corrected]] it years ago, it just got overwritten later, so rather tan see it happen again, I'm just making the change in the live module now
9624
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } )
local s = new_args['s'] or ''
local i = tonumber( new_args['i'] ) or 1
local j = tonumber( new_args['j'] ) or -1
local len = mw.ustring.len( s )
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1
end
if j < 0 then
j = len + j + 1
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' )
end
if j < i then
return str._error( 'String subset indices out of order' )
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|match|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain_flag, nomatch )
if s == '' then
return str._error( 'Target string is empty' )
end
if pattern == '' then
return str._error( 'Pattern string is empty' )
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' )
end
if match_index == 0 then
return str._error( 'Match index is out of range' )
end
if plain_flag then
pattern = str._escapePattern( pattern )
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start )
end
local iterator = mw.ustring.gmatch(s, pattern)
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1
if match_index == 0 then
result = w
break
end
end
else
-- Reverse search
local result_table = {}
local count = 1
for w in iterator do
result_table[count] = w
count = count + 1
end
result = result_table[ count + match_index ]
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' )
else
return nomatch
end
else
return result
end
end
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} )
local s = new_args['s'] or ''
local start = tonumber( new_args['start'] ) or 1
local plain_flag = str._getBoolean( new_args['plain'] or false )
local pattern = new_args['pattern'] or ''
local match_index = math.floor( tonumber(new_args['match']) or 1 )
local nomatch = new_args['nomatch']
return str._match( s, pattern, start, match_index, plain_flag, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} )
local target_str = new_args['target'] or ''
local pos = tonumber( new_args['pos'] ) or 0
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' )
end
return mw.ustring.sub( target_str, pos, pos )
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} )
local source_str = new_args['source'] or ''
local target_str = new_args['target'] or ''
if target_str == '' then
return 1
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['target'] or ''
local start_pos = tonumber(new_args['start']) or 1
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return 0
end
plain = str._getBoolean( plain )
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['pattern'] or ''
local replace = new_args['replace'] or ''
local count = tonumber( new_args['count'] )
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return source_str
end
plain = str._getBoolean( plain )
if plain then
pattern = str._escapePattern( pattern )
replace = mw.ustring.gsub( replace, "%%", "%%%%" ) --Only need to escape replacement sequences.
end
local result
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count )
else
result = mw.ustring.gsub( source_str, pattern, replace )
end
return result
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' )
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
count
This function counts the number of occurrences of one string in another.
]]
function str.count(frame)
local args = str._getParameters(frame.args, {'source', 'pattern', 'plain'})
local source = args.source or ''
local pattern = args.pattern or ''
local plain = str._getBoolean(args.plain or true)
if plain then
pattern = str._escapePattern(pattern)
end
local _, count = mw.ustring.gsub(source, pattern, '')
return count
end
--[[
endswith
This function determines whether a string ends with another string.
]]
function str.endswith(frame)
local args = str._getParameters(frame.args, {'source', 'pattern'})
local source = args.source or ''
local pattern = args.pattern or ''
if pattern == '' then
-- All strings end with the empty string.
return "yes"
end
if mw.ustring.sub(source, -mw.ustring.len(pattern), -1) == pattern then
return "yes"
else
return ""
end
end
--[[
join
Join all non empty arguments together; the first argument is the separator.
Usage:
{{#invoke:String|join|sep|one|two|three}}
]]
function str.join(frame)
local args = {}
local sep
for _, v in ipairs( frame.args ) do
if sep then
if v ~= '' then
table.insert(args, v)
end
else
sep = v
end
end
return table.concat( args, sep or '' )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {}
local index = 1
local value
for _, arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index]
index = index + 1
end
new_args[arg] = value
end
return new_args
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame()
local error_category = frame.args.error_category or 'Errors reported by Module String'
local ignore_errors = frame.args.ignore_errors or false
local no_category = frame.args.no_category or false
if str._getBoolean(ignore_errors) then
return ''
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>'
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str
end
return error_str
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower()
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false
else
boolean_value = true
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str
else
error( 'No boolean value found' )
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" )
end
return str
g9myztjccfeamhqorwvd1gwnwhtk4kx
9625
9594
2019-11-03T02:30:49Z
w>RexxS
0
Changed protection level for "[[Module:String]]": Cascade-protected from main page, so no point in enabling TE ([Edit=Require administrator access] (indefinite) [Move=Require administrator access] (indefinite))
9625
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } )
local s = new_args['s'] or ''
local i = tonumber( new_args['i'] ) or 1
local j = tonumber( new_args['j'] ) or -1
local len = mw.ustring.len( s )
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1
end
if j < 0 then
j = len + j + 1
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' )
end
if j < i then
return str._error( 'String subset indices out of order' )
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|match|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain_flag, nomatch )
if s == '' then
return str._error( 'Target string is empty' )
end
if pattern == '' then
return str._error( 'Pattern string is empty' )
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' )
end
if match_index == 0 then
return str._error( 'Match index is out of range' )
end
if plain_flag then
pattern = str._escapePattern( pattern )
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start )
end
local iterator = mw.ustring.gmatch(s, pattern)
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1
if match_index == 0 then
result = w
break
end
end
else
-- Reverse search
local result_table = {}
local count = 1
for w in iterator do
result_table[count] = w
count = count + 1
end
result = result_table[ count + match_index ]
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' )
else
return nomatch
end
else
return result
end
end
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} )
local s = new_args['s'] or ''
local start = tonumber( new_args['start'] ) or 1
local plain_flag = str._getBoolean( new_args['plain'] or false )
local pattern = new_args['pattern'] or ''
local match_index = math.floor( tonumber(new_args['match']) or 1 )
local nomatch = new_args['nomatch']
return str._match( s, pattern, start, match_index, plain_flag, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} )
local target_str = new_args['target'] or ''
local pos = tonumber( new_args['pos'] ) or 0
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' )
end
return mw.ustring.sub( target_str, pos, pos )
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} )
local source_str = new_args['source'] or ''
local target_str = new_args['target'] or ''
if target_str == '' then
return 1
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['target'] or ''
local start_pos = tonumber(new_args['start']) or 1
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return 0
end
plain = str._getBoolean( plain )
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['pattern'] or ''
local replace = new_args['replace'] or ''
local count = tonumber( new_args['count'] )
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return source_str
end
plain = str._getBoolean( plain )
if plain then
pattern = str._escapePattern( pattern )
replace = mw.ustring.gsub( replace, "%%", "%%%%" ) --Only need to escape replacement sequences.
end
local result
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count )
else
result = mw.ustring.gsub( source_str, pattern, replace )
end
return result
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' )
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
count
This function counts the number of occurrences of one string in another.
]]
function str.count(frame)
local args = str._getParameters(frame.args, {'source', 'pattern', 'plain'})
local source = args.source or ''
local pattern = args.pattern or ''
local plain = str._getBoolean(args.plain or true)
if plain then
pattern = str._escapePattern(pattern)
end
local _, count = mw.ustring.gsub(source, pattern, '')
return count
end
--[[
endswith
This function determines whether a string ends with another string.
]]
function str.endswith(frame)
local args = str._getParameters(frame.args, {'source', 'pattern'})
local source = args.source or ''
local pattern = args.pattern or ''
if pattern == '' then
-- All strings end with the empty string.
return "yes"
end
if mw.ustring.sub(source, -mw.ustring.len(pattern), -1) == pattern then
return "yes"
else
return ""
end
end
--[[
join
Join all non empty arguments together; the first argument is the separator.
Usage:
{{#invoke:String|join|sep|one|two|three}}
]]
function str.join(frame)
local args = {}
local sep
for _, v in ipairs( frame.args ) do
if sep then
if v ~= '' then
table.insert(args, v)
end
else
sep = v
end
end
return table.concat( args, sep or '' )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {}
local index = 1
local value
for _, arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index]
index = index + 1
end
new_args[arg] = value
end
return new_args
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame()
local error_category = frame.args.error_category or 'Errors reported by Module String'
local ignore_errors = frame.args.ignore_errors or false
local no_category = frame.args.no_category or false
if str._getBoolean(ignore_errors) then
return ''
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>'
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str
end
return error_str
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower()
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false
else
boolean_value = true
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str
else
error( 'No boolean value found' )
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" )
end
return str
g9myztjccfeamhqorwvd1gwnwhtk4kx
9626
9625
2020-08-02T15:49:42Z
w>RexxS
0
separate annotations for str.match from those for str._match
9626
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } )
local s = new_args['s'] or ''
local i = tonumber( new_args['i'] ) or 1
local j = tonumber( new_args['j'] ) or -1
local len = mw.ustring.len( s )
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1
end
if j < 0 then
j = len + j + 1
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' )
end
if j < i then
return str._error( 'String subset indices out of order' )
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
_match
This function returns a substring from the source string that matches a
specified pattern. It is exported for use in other modules
Usage:
strmatch = require("Module:String")._match
sresult = strmatch( s, pattern, start, match, plain, nomatch )
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain_flag, nomatch )
if s == '' then
return str._error( 'Target string is empty' )
end
if pattern == '' then
return str._error( 'Pattern string is empty' )
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' )
end
if match_index == 0 then
return str._error( 'Match index is out of range' )
end
if plain_flag then
pattern = str._escapePattern( pattern )
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start )
end
local iterator = mw.ustring.gmatch(s, pattern)
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1
if match_index == 0 then
result = w
break
end
end
else
-- Reverse search
local result_table = {}
local count = 1
for w in iterator do
result_table[count] = w
count = count + 1
end
result = result_table[ count + match_index ]
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' )
else
return nomatch
end
else
return result
end
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|match|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} )
local s = new_args['s'] or ''
local start = tonumber( new_args['start'] ) or 1
local plain_flag = str._getBoolean( new_args['plain'] or false )
local pattern = new_args['pattern'] or ''
local match_index = math.floor( tonumber(new_args['match']) or 1 )
local nomatch = new_args['nomatch']
return str._match( s, pattern, start, match_index, plain_flag, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} )
local target_str = new_args['target'] or ''
local pos = tonumber( new_args['pos'] ) or 0
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' )
end
return mw.ustring.sub( target_str, pos, pos )
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} )
local source_str = new_args['source'] or ''
local target_str = new_args['target'] or ''
if target_str == '' then
return 1
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['target'] or ''
local start_pos = tonumber(new_args['start']) or 1
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return 0
end
plain = str._getBoolean( plain )
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['pattern'] or ''
local replace = new_args['replace'] or ''
local count = tonumber( new_args['count'] )
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return source_str
end
plain = str._getBoolean( plain )
if plain then
pattern = str._escapePattern( pattern )
replace = mw.ustring.gsub( replace, "%%", "%%%%" ) --Only need to escape replacement sequences.
end
local result
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count )
else
result = mw.ustring.gsub( source_str, pattern, replace )
end
return result
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' )
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
count
This function counts the number of occurrences of one string in another.
]]
function str.count(frame)
local args = str._getParameters(frame.args, {'source', 'pattern', 'plain'})
local source = args.source or ''
local pattern = args.pattern or ''
local plain = str._getBoolean(args.plain or true)
if plain then
pattern = str._escapePattern(pattern)
end
local _, count = mw.ustring.gsub(source, pattern, '')
return count
end
--[[
endswith
This function determines whether a string ends with another string.
]]
function str.endswith(frame)
local args = str._getParameters(frame.args, {'source', 'pattern'})
local source = args.source or ''
local pattern = args.pattern or ''
if pattern == '' then
-- All strings end with the empty string.
return "yes"
end
if mw.ustring.sub(source, -mw.ustring.len(pattern), -1) == pattern then
return "yes"
else
return ""
end
end
--[[
join
Join all non empty arguments together; the first argument is the separator.
Usage:
{{#invoke:String|join|sep|one|two|three}}
]]
function str.join(frame)
local args = {}
local sep
for _, v in ipairs( frame.args ) do
if sep then
if v ~= '' then
table.insert(args, v)
end
else
sep = v
end
end
return table.concat( args, sep or '' )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {}
local index = 1
local value
for _, arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index]
index = index + 1
end
new_args[arg] = value
end
return new_args
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame()
local error_category = frame.args.error_category or 'Errors reported by Module String'
local ignore_errors = frame.args.ignore_errors or false
local no_category = frame.args.no_category or false
if str._getBoolean(ignore_errors) then
return ''
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>'
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str
end
return error_str
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower()
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false
else
boolean_value = true
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str
else
error( 'No boolean value found' )
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" )
end
return str
cufmbepw7ml3gut4lchtqrhtj5r63cp
9627
9626
2021-10-29T20:02:49Z
meta>GeneralNotability
0
32 revisions imported from [[:w:Module:String]]: blame [[User:Barkeep49]]
9626
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } )
local s = new_args['s'] or ''
local i = tonumber( new_args['i'] ) or 1
local j = tonumber( new_args['j'] ) or -1
local len = mw.ustring.len( s )
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1
end
if j < 0 then
j = len + j + 1
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' )
end
if j < i then
return str._error( 'String subset indices out of order' )
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
_match
This function returns a substring from the source string that matches a
specified pattern. It is exported for use in other modules
Usage:
strmatch = require("Module:String")._match
sresult = strmatch( s, pattern, start, match, plain, nomatch )
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain_flag, nomatch )
if s == '' then
return str._error( 'Target string is empty' )
end
if pattern == '' then
return str._error( 'Pattern string is empty' )
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' )
end
if match_index == 0 then
return str._error( 'Match index is out of range' )
end
if plain_flag then
pattern = str._escapePattern( pattern )
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start )
end
local iterator = mw.ustring.gmatch(s, pattern)
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1
if match_index == 0 then
result = w
break
end
end
else
-- Reverse search
local result_table = {}
local count = 1
for w in iterator do
result_table[count] = w
count = count + 1
end
result = result_table[ count + match_index ]
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' )
else
return nomatch
end
else
return result
end
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|match|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} )
local s = new_args['s'] or ''
local start = tonumber( new_args['start'] ) or 1
local plain_flag = str._getBoolean( new_args['plain'] or false )
local pattern = new_args['pattern'] or ''
local match_index = math.floor( tonumber(new_args['match']) or 1 )
local nomatch = new_args['nomatch']
return str._match( s, pattern, start, match_index, plain_flag, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} )
local target_str = new_args['target'] or ''
local pos = tonumber( new_args['pos'] ) or 0
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' )
end
return mw.ustring.sub( target_str, pos, pos )
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} )
local source_str = new_args['source'] or ''
local target_str = new_args['target'] or ''
if target_str == '' then
return 1
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['target'] or ''
local start_pos = tonumber(new_args['start']) or 1
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return 0
end
plain = str._getBoolean( plain )
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['pattern'] or ''
local replace = new_args['replace'] or ''
local count = tonumber( new_args['count'] )
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return source_str
end
plain = str._getBoolean( plain )
if plain then
pattern = str._escapePattern( pattern )
replace = mw.ustring.gsub( replace, "%%", "%%%%" ) --Only need to escape replacement sequences.
end
local result
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count )
else
result = mw.ustring.gsub( source_str, pattern, replace )
end
return result
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' )
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
count
This function counts the number of occurrences of one string in another.
]]
function str.count(frame)
local args = str._getParameters(frame.args, {'source', 'pattern', 'plain'})
local source = args.source or ''
local pattern = args.pattern or ''
local plain = str._getBoolean(args.plain or true)
if plain then
pattern = str._escapePattern(pattern)
end
local _, count = mw.ustring.gsub(source, pattern, '')
return count
end
--[[
endswith
This function determines whether a string ends with another string.
]]
function str.endswith(frame)
local args = str._getParameters(frame.args, {'source', 'pattern'})
local source = args.source or ''
local pattern = args.pattern or ''
if pattern == '' then
-- All strings end with the empty string.
return "yes"
end
if mw.ustring.sub(source, -mw.ustring.len(pattern), -1) == pattern then
return "yes"
else
return ""
end
end
--[[
join
Join all non empty arguments together; the first argument is the separator.
Usage:
{{#invoke:String|join|sep|one|two|three}}
]]
function str.join(frame)
local args = {}
local sep
for _, v in ipairs( frame.args ) do
if sep then
if v ~= '' then
table.insert(args, v)
end
else
sep = v
end
end
return table.concat( args, sep or '' )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {}
local index = 1
local value
for _, arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index]
index = index + 1
end
new_args[arg] = value
end
return new_args
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame()
local error_category = frame.args.error_category or 'Errors reported by Module String'
local ignore_errors = frame.args.ignore_errors or false
local no_category = frame.args.no_category or false
if str._getBoolean(ignore_errors) then
return ''
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>'
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str
end
return error_str
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower()
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false
else
boolean_value = true
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str
else
error( 'No boolean value found' )
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" )
end
return str
cufmbepw7ml3gut4lchtqrhtj5r63cp
9628
9627
2021-10-30T15:26:51Z
meta>GeneralNotability
0
Reverted to revision 19404648 by [[Special:Contributions/Billinghurst|Billinghurst]] ([[User talk:Billinghurst|talk]]): Undo import (TwinkleGlobal)
9628
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} );
local s = new_args['s'] or '';
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The fist index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } );
local s = new_args['s'] or '';
local i = tonumber( new_args['i'] ) or 1;
local j = tonumber( new_args['j'] ) or -1;
local len = mw.ustring.len( s );
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1;
end
if j < 0 then
j = len + j + 1;
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' );
end
if j < i then
return str._error( 'String subset indices out of order' );
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{subr|s|skip|max}} and
is kept in order to maintain these older templates.
Uses only numbered paramameters to preserve spaces (caller may trim
whitespaces by passing the parameter explicitly by numbering the
parameters).
Accepts negative values as relative to strng length.
No error is returned if attempting to read past end of string or
before start of string.
Currently does not parse and replace placeholders for nowiki tags.
]]
function str.sublength( frame )
local s = frame.args[1] or '';
local skip = tonumber( frame.args[2] ) or 0;
local max = tonumber( frame.args[3] ) or 0;
local len = mw.ustring.len( s );
-- convert negative values of max and skip as relative to string length
if max < 0 then
max = len + max
end
if skip < 0 then
skip = len + skip
end
-- check boundaries to reduce the requested max
if skip < 0 then -- if before start of string
max = max + skip
skip = 0 -- skip can't underflow now
end
if max > len - skip then -- if past end of string
max = len - skip -- max can't overflow now
end
if max <= 0 then
return '' -- nothing left to return
end
return mw.ustring.sub( s, skip + 1, skip + max )
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|pos|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} );
local s = new_args['s'] or '';
local start = tonumber( new_args['start'] ) or 1;
local plain_flag = str._getBoolean( new_args['plain'] or false );
local pattern = new_args['pattern'] or '';
local match_index = math.floor( tonumber(new_args['match']) or 1 );
local nomatch = new_args['nomatch'];
if s == '' then
return str._error( 'Target string is empty' );
end
if pattern == '' then
return str._error( 'Pattern string is empty' );
end
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' );
end
if match_index == 0 then
return str._error( 'Match index is out of range' );
end
if plain_flag then
pattern = str._escapePattern( pattern );
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start );
end
local iterator = mw.ustring.gmatch(s, pattern);
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1;
if match_index == 0 then
result = w;
break;
end
end
else
-- Reverse search
local result_table = {};
local count = 1;
for w in iterator do
result_table[count] = w;
count = count + 1;
end
result = result_table[ count + match_index ];
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' );
else
return nomatch;
end
else
return result;
end
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} );
local target_str = new_args['target'] or '';
local pos = tonumber( new_args['pos'] ) or 0;
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' );
end
return mw.ustring.sub( target_str, pos, pos );
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} );
local source_str = new_args['source'] or '';
local target_str = new_args['target'] or '';
if target_str == '' then
return 1;
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['target'] or '';
local start_pos = tonumber(new_args['start']) or 1;
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return 0;
end
plain = str._getBoolean( plain );
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } );
local source_str = new_args['source'] or '';
local pattern = new_args['pattern'] or '';
local replace = new_args['replace'] or '';
local count = tonumber( new_args['count'] );
local plain = new_args['plain'] or true;
if source_str == '' or pattern == '' then
return source_str;
end
plain = str._getBoolean( plain );
if plain then
pattern = str._escapePattern( pattern );
replace = mw.ustring.gsub( replace, "%%", "%%%%" ); --Only need to escape replacement sequences.
end
local result;
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count );
else
result = mw.ustring.gsub( source_str, pattern, replace );
end
return result;
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {};
local index = 1;
local value;
for i,arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index];
index = index + 1;
end
new_args[arg] = value;
end
return new_args;
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame();
local error_category = frame.args.error_category or 'Errors reported by Module String';
local ignore_errors = frame.args.ignore_errors or false;
local no_category = frame.args.no_category or false;
if str._getBoolean(ignore_errors) then
return '';
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>';
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str;
end
return error_str;
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value;
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower();
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false;
else
boolean_value = true;
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str;
else
error( 'No boolean value found' );
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return mw.ustring.gsub( pattern_str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1" );
end
return str
p7kauspn14nrehhdza0f0zbrpve5c5i
9629
8834
2025-09-11T00:25:20Z
meta>Pppery
0
Update from [[w:Module:String]]
8834
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The first index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } )
local s = new_args['s'] or ''
local i = tonumber( new_args['i'] ) or 1
local j = tonumber( new_args['j'] ) or -1
local len = mw.ustring.len( s )
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1
end
if j < 0 then
j = len + j + 1
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' )
end
if j < i then
return str._error( 'String subset indices out of order' )
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
_match
This function returns a substring from the source string that matches a
specified pattern. It is exported for use in other modules
Usage:
strmatch = require("Module:String")._match
sresult = strmatch( s, pattern, start, match, plain, nomatch )
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain_flag, nomatch )
if s == '' then
return str._error( 'Target string is empty' )
end
if pattern == '' then
return str._error( 'Pattern string is empty' )
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' )
end
if match_index == 0 then
return str._error( 'Match index is out of range' )
end
if plain_flag then
pattern = str._escapePattern( pattern )
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start )
end
local iterator = mw.ustring.gmatch(s, pattern)
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1
if match_index == 0 then
result = w
break
end
end
else
-- Reverse search
local result_table = {}
local count = 1
for w in iterator do
result_table[count] = w
count = count + 1
end
result = result_table[ count + match_index ]
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' )
else
return nomatch
end
else
return result
end
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|match|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} )
local s = new_args['s'] or ''
local start = tonumber( new_args['start'] ) or 1
local plain_flag = str._getBoolean( new_args['plain'] or false )
local pattern = new_args['pattern'] or ''
local match_index = math.floor( tonumber(new_args['match']) or 1 )
local nomatch = new_args['nomatch']
return str._match( s, pattern, start, match_index, plain_flag, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} )
local target_str = new_args['target'] or ''
local pos = tonumber( new_args['pos'] ) or 0
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' )
end
return mw.ustring.sub( target_str, pos, pos )
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} )
local source_str = new_args['source'] or ''
local target_str = new_args['target'] or ''
if target_str == '' then
return 1
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['target'] or ''
local start_pos = tonumber(new_args['start']) or 1
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return 0
end
plain = str._getBoolean( plain )
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['pattern'] or ''
local replace = new_args['replace'] or ''
local count = tonumber( new_args['count'] )
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return source_str
end
plain = str._getBoolean( plain )
if plain then
pattern = str._escapePattern( pattern )
replace = string.gsub( replace, "%%", "%%%%" ) --Only need to escape replacement sequences.
end
local result
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count )
else
result = mw.ustring.gsub( source_str, pattern, replace )
end
return result
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' )
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
count
This function counts the number of occurrences of one string in another.
]]
function str.count(frame)
local args = str._getParameters(frame.args, {'source', 'pattern', 'plain'})
local source = args.source or ''
local pattern = args.pattern or ''
local plain = str._getBoolean(args.plain or true)
if plain then
pattern = str._escapePattern(pattern)
end
local _, count = mw.ustring.gsub(source, pattern, '')
return count
end
--[[
endswith
This function determines whether a string ends with another string.
]]
function str.endswith(frame)
local args = str._getParameters(frame.args, {'source', 'pattern'})
local source = args.source or ''
local pattern = args.pattern or ''
if pattern == '' then
-- All strings end with the empty string.
return "yes"
end
if mw.ustring.sub(source, -mw.ustring.len(pattern), -1) == pattern then
return "yes"
else
return ""
end
end
--[[
join
Join all non empty arguments together; the first argument is the separator.
Usage:
{{#invoke:String|join|sep|one|two|three}}
]]
function str.join(frame)
local args = {}
local sep
for _, v in ipairs( frame.args ) do
if sep then
if v ~= '' then
table.insert(args, v)
end
else
sep = v
end
end
return table.concat( args, sep or '' )
end
-- findpagetext returns the position of a piece of text in a page
-- First positional parameter or |text is the search text
-- Optional parameter |title is the page title, defaults to current page
-- Optional parameter |plain is either true for plain search (default) or false for Lua pattern search
-- Optional parameter |nomatch is the return value when no match is found; default is nil
function str._findpagetext(args)
-- process parameters
local nomatch = args.nomatch or ""
if nomatch == "" then nomatch = nil end
--
local text = mw.text.trim(args[1] or args.text or "")
if text == "" then return nil end
--
local title = args.title or ""
local titleobj
if title == "" then
titleobj = mw.title.getCurrentTitle()
else
titleobj = mw.title.new(title)
end
--
local plain = args.plain or ""
if plain:sub(1, 1) == "f" then plain = false else plain = true end
-- get the page content and look for 'text' - return position or nomatch
local content = titleobj and titleobj:getContent()
return content and mw.ustring.find(content, text, 1, plain) or nomatch
end
function str.findpagetext(frame)
local args = frame.args
local pargs = frame:getParent().args
for k, v in pairs(pargs) do
args[k] = v
end
if not (args[1] or args.text) then return nil end
-- just the first value
return (str._findpagetext(args))
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {}
local index = 1
local value
for _, arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index]
index = index + 1
end
new_args[arg] = value
end
return new_args
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame()
local error_category = frame.args.error_category or 'Errors reported by Module String'
local ignore_errors = frame.args.ignore_errors or false
local no_category = frame.args.no_category or false
if str._getBoolean(ignore_errors) then
return ''
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>'
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str
end
return error_str
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower()
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false
else
boolean_value = true
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str
else
error( 'No boolean value found' )
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return ( string.gsub( pattern_str, "[%(%)%.%%%+%-%*%?%[%^%$%]]", "%%%0" ) )
end
return str
j3b8d4sejqnvazpfl0gk0yfaa503gli
9630
9629
2025-10-10T21:24:19Z
meta>Pppery
0
Restore old version of sublength to avoid breaking stuff
9630
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The first index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } )
local s = new_args['s'] or ''
local i = tonumber( new_args['i'] ) or 1
local j = tonumber( new_args['j'] ) or -1
local len = mw.ustring.len( s )
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1
end
if j < 0 then
j = len + j + 1
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' )
end
if j < i then
return str._error( 'String subset indices out of order' )
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{subr|s|skip|max}} and
is kept in order to maintain these older templates.
Uses only numbered paramameters to preserve spaces (caller may trim
whitespaces by passing the parameter explicitly by numbering the
parameters).
Accepts negative values as relative to strng length.
No error is returned if attempting to read past end of string or
before start of string.
Currently does not parse and replace placeholders for nowiki tags.
]]
function str.sublength( frame )
local s = frame.args[1] or '';
local skip = tonumber( frame.args[2] ) or 0;
local max = tonumber( frame.args[3] ) or 0;
local len = mw.ustring.len( s );
-- convert negative values of max and skip as relative to string length
if max < 0 then
max = len + max
end
if skip < 0 then
skip = len + skip
end
-- check boundaries to reduce the requested max
if skip < 0 then -- if before start of string
max = max + skip
skip = 0 -- skip can't underflow now
end
if max > len - skip then -- if past end of string
max = len - skip -- max can't overflow now
end
if max <= 0 then
return '' -- nothing left to return
end
return mw.ustring.sub( s, skip + 1, skip + max )
end
--[[
_match
This function returns a substring from the source string that matches a
specified pattern. It is exported for use in other modules
Usage:
strmatch = require("Module:String")._match
sresult = strmatch( s, pattern, start, match, plain, nomatch )
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain_flag, nomatch )
if s == '' then
return str._error( 'Target string is empty' )
end
if pattern == '' then
return str._error( 'Pattern string is empty' )
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' )
end
if match_index == 0 then
return str._error( 'Match index is out of range' )
end
if plain_flag then
pattern = str._escapePattern( pattern )
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start )
end
local iterator = mw.ustring.gmatch(s, pattern)
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1
if match_index == 0 then
result = w
break
end
end
else
-- Reverse search
local result_table = {}
local count = 1
for w in iterator do
result_table[count] = w
count = count + 1
end
result = result_table[ count + match_index ]
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' )
else
return nomatch
end
else
return result
end
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|match|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} )
local s = new_args['s'] or ''
local start = tonumber( new_args['start'] ) or 1
local plain_flag = str._getBoolean( new_args['plain'] or false )
local pattern = new_args['pattern'] or ''
local match_index = math.floor( tonumber(new_args['match']) or 1 )
local nomatch = new_args['nomatch']
return str._match( s, pattern, start, match_index, plain_flag, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} )
local target_str = new_args['target'] or ''
local pos = tonumber( new_args['pos'] ) or 0
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' )
end
return mw.ustring.sub( target_str, pos, pos )
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} )
local source_str = new_args['source'] or ''
local target_str = new_args['target'] or ''
if target_str == '' then
return 1
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['target'] or ''
local start_pos = tonumber(new_args['start']) or 1
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return 0
end
plain = str._getBoolean( plain )
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['pattern'] or ''
local replace = new_args['replace'] or ''
local count = tonumber( new_args['count'] )
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return source_str
end
plain = str._getBoolean( plain )
if plain then
pattern = str._escapePattern( pattern )
replace = string.gsub( replace, "%%", "%%%%" ) --Only need to escape replacement sequences.
end
local result
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count )
else
result = mw.ustring.gsub( source_str, pattern, replace )
end
return result
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' )
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
count
This function counts the number of occurrences of one string in another.
]]
function str.count(frame)
local args = str._getParameters(frame.args, {'source', 'pattern', 'plain'})
local source = args.source or ''
local pattern = args.pattern or ''
local plain = str._getBoolean(args.plain or true)
if plain then
pattern = str._escapePattern(pattern)
end
local _, count = mw.ustring.gsub(source, pattern, '')
return count
end
--[[
endswith
This function determines whether a string ends with another string.
]]
function str.endswith(frame)
local args = str._getParameters(frame.args, {'source', 'pattern'})
local source = args.source or ''
local pattern = args.pattern or ''
if pattern == '' then
-- All strings end with the empty string.
return "yes"
end
if mw.ustring.sub(source, -mw.ustring.len(pattern), -1) == pattern then
return "yes"
else
return ""
end
end
--[[
join
Join all non empty arguments together; the first argument is the separator.
Usage:
{{#invoke:String|join|sep|one|two|three}}
]]
function str.join(frame)
local args = {}
local sep
for _, v in ipairs( frame.args ) do
if sep then
if v ~= '' then
table.insert(args, v)
end
else
sep = v
end
end
return table.concat( args, sep or '' )
end
-- findpagetext returns the position of a piece of text in a page
-- First positional parameter or |text is the search text
-- Optional parameter |title is the page title, defaults to current page
-- Optional parameter |plain is either true for plain search (default) or false for Lua pattern search
-- Optional parameter |nomatch is the return value when no match is found; default is nil
function str._findpagetext(args)
-- process parameters
local nomatch = args.nomatch or ""
if nomatch == "" then nomatch = nil end
--
local text = mw.text.trim(args[1] or args.text or "")
if text == "" then return nil end
--
local title = args.title or ""
local titleobj
if title == "" then
titleobj = mw.title.getCurrentTitle()
else
titleobj = mw.title.new(title)
end
--
local plain = args.plain or ""
if plain:sub(1, 1) == "f" then plain = false else plain = true end
-- get the page content and look for 'text' - return position or nomatch
local content = titleobj and titleobj:getContent()
return content and mw.ustring.find(content, text, 1, plain) or nomatch
end
function str.findpagetext(frame)
local args = frame.args
local pargs = frame:getParent().args
for k, v in pairs(pargs) do
args[k] = v
end
if not (args[1] or args.text) then return nil end
-- just the first value
return (str._findpagetext(args))
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {}
local index = 1
local value
for _, arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index]
index = index + 1
end
new_args[arg] = value
end
return new_args
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame()
local error_category = frame.args.error_category or 'Errors reported by Module String'
local ignore_errors = frame.args.ignore_errors or false
local no_category = frame.args.no_category or false
if str._getBoolean(ignore_errors) then
return ''
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>'
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Category:' .. error_category .. ']]' .. error_str
end
return error_str
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower()
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false
else
boolean_value = true
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str
else
error( 'No boolean value found' )
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return ( string.gsub( pattern_str, "[%(%)%.%%%+%-%*%?%[%^%$%]]", "%%%0" ) )
end
return str
bnrdlzlacalclid3valsmsosgzbqqm2
9631
8835
2026-08-24T13:00:37Z
RAPTOR7762
18
42 revisions imported from [[:meta:Module:String]]
1145
Scribunto
text/plain
--[[
This module is intended to provide access to basic string functions.
Most of the functions provided here can be invoked with named parameters,
unnamed parameters, or a mixture. If named parameters are used, Mediawiki will
automatically remove any leading or trailing whitespace from the parameter.
Depending on the intended use, it may be advantageous to either preserve or
remove such whitespace.
Global options
ignore_errors: If set to 'true' or 1, any error condition will result in
an empty string being returned rather than an error message.
error_category: If an error occurs, specifies the name of a category to
include with the error message. The default category is
[Category:Errors reported by Module String].
no_category: If set to 'true' or 1, no category will be added if an error
is generated.
Unit tests for this module are available at Module:String/tests.
]]
local str = {}
--[[
len
This function returns the length of the target string.
Usage:
{{#invoke:String|len|target_string|}}
OR
{{#invoke:String|len|s=target_string}}
Parameters
s: The string whose length to report
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string.
]]
function str.len( frame )
local new_args = str._getParameters( frame.args, {'s'} )
local s = new_args['s'] or ''
return mw.ustring.len( s )
end
--[[
sub
This function returns a substring of the target string at specified indices.
Usage:
{{#invoke:String|sub|target_string|start_index|end_index}}
OR
{{#invoke:String|sub|s=target_string|i=start_index|j=end_index}}
Parameters
s: The string to return a subset of
i: The first index of the substring to return, defaults to 1.
j: The last index of the string to return, defaults to the last character.
The first character of the string is assigned an index of 1. If either i or j
is a negative value, it is interpreted the same as selecting a character by
counting from the end of the string. Hence, a value of -1 is the same as
selecting the last character of the string.
If the requested indices are out of range for the given string, an error is
reported.
]]
function str.sub( frame )
local new_args = str._getParameters( frame.args, { 's', 'i', 'j' } )
local s = new_args['s'] or ''
local i = tonumber( new_args['i'] ) or 1
local j = tonumber( new_args['j'] ) or -1
local len = mw.ustring.len( s )
-- Convert negatives for range checking
if i < 0 then
i = len + i + 1
end
if j < 0 then
j = len + j + 1
end
if i > len or j > len or i < 1 or j < 1 then
return str._error( 'String subset index out of range' )
end
if j < i then
return str._error( 'String subset indices out of order' )
end
return mw.ustring.sub( s, i, j )
end
--[[
This function implements that features of {{str sub old}} and is kept in order
to maintain these older templates.
]]
function str.sublength( frame )
local i = tonumber( frame.args.i ) or 0
local len = tonumber( frame.args.len )
return mw.ustring.sub( frame.args.s, i + 1, len and ( i + len ) )
end
--[[
_match
This function returns a substring from the source string that matches a
specified pattern. It is exported for use in other modules
Usage:
strmatch = require("Module:String")._match
sresult = strmatch( s, pattern, start, match, plain, nomatch )
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This sub-routine is exported for use in other modules
function str._match( s, pattern, start, match_index, plain_flag, nomatch )
if s == '' then
return str._error( 'Target string is empty' )
end
if pattern == '' then
return str._error( 'Pattern string is empty' )
end
start = tonumber(start) or 1
if math.abs(start) < 1 or math.abs(start) > mw.ustring.len( s ) then
return str._error( 'Requested start is out of range' )
end
if match_index == 0 then
return str._error( 'Match index is out of range' )
end
if plain_flag then
pattern = str._escapePattern( pattern )
end
local result
if match_index == 1 then
-- Find first match is simple case
result = mw.ustring.match( s, pattern, start )
else
if start > 1 then
s = mw.ustring.sub( s, start )
end
local iterator = mw.ustring.gmatch(s, pattern)
if match_index > 0 then
-- Forward search
for w in iterator do
match_index = match_index - 1
if match_index == 0 then
result = w
break
end
end
else
-- Reverse search
local result_table = {}
local count = 1
for w in iterator do
result_table[count] = w
count = count + 1
end
result = result_table[ count + match_index ]
end
end
if result == nil then
if nomatch == nil then
return str._error( 'Match not found' )
else
return nomatch
end
else
return result
end
end
--[[
match
This function returns a substring from the source string that matches a
specified pattern.
Usage:
{{#invoke:String|match|source_string|pattern_string|start_index|match_number|plain_flag|nomatch_output}}
OR
{{#invoke:String|match|s=source_string|pattern=pattern_string|start=start_index
|match=match_number|plain=plain_flag|nomatch=nomatch_output}}
Parameters
s: The string to search
pattern: The pattern or string to find within the string
start: The index within the source string to start the search. The first
character of the string has index 1. Defaults to 1.
match: In some cases it may be possible to make multiple matches on a single
string. This specifies which match to return, where the first match is
match= 1. If a negative number is specified then a match is returned
counting from the last match. Hence match = -1 is the same as requesting
the last match. Defaults to 1.
plain: A flag indicating that the pattern should be understood as plain
text. Defaults to false.
nomatch: If no match is found, output the "nomatch" value rather than an error.
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from each string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
If the match_number or start_index are out of range for the string being queried, then
this function generates an error. An error is also generated if no match is found.
If one adds the parameter ignore_errors=true, then the error will be suppressed and
an empty string will be returned on any failure.
For information on constructing Lua patterns, a form of [regular expression], see:
* http://www.lua.org/manual/5.1/manual.html#5.4.1
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
* http://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Ustring_patterns
]]
-- This is the entry point for #invoke:String|match
function str.match( frame )
local new_args = str._getParameters( frame.args, {'s', 'pattern', 'start', 'match', 'plain', 'nomatch'} )
local s = new_args['s'] or ''
local start = tonumber( new_args['start'] ) or 1
local plain_flag = str._getBoolean( new_args['plain'] or false )
local pattern = new_args['pattern'] or ''
local match_index = math.floor( tonumber(new_args['match']) or 1 )
local nomatch = new_args['nomatch']
return str._match( s, pattern, start, match_index, plain_flag, nomatch )
end
--[[
pos
This function returns a single character from the target string at position pos.
Usage:
{{#invoke:String|pos|target_string|index_value}}
OR
{{#invoke:String|pos|target=target_string|pos=index_value}}
Parameters
target: The string to search
pos: The index for the character to return
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the target string. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
The first character has an index value of 1.
If one requests a negative value, this function will select a character by counting backwards
from the end of the string. In other words pos = -1 is the same as asking for the last character.
A requested value of zero, or a value greater than the length of the string returns an error.
]]
function str.pos( frame )
local new_args = str._getParameters( frame.args, {'target', 'pos'} )
local target_str = new_args['target'] or ''
local pos = tonumber( new_args['pos'] ) or 0
if pos == 0 or math.abs(pos) > mw.ustring.len( target_str ) then
return str._error( 'String index out of range' )
end
return mw.ustring.sub( target_str, pos, pos )
end
--[[
str_find
This function duplicates the behavior of {{str_find}}, including all of its quirks.
This is provided in order to support existing templates, but is NOT RECOMMENDED for
new code and templates. New code is recommended to use the "find" function instead.
Returns the first index in "source" that is a match to "target". Indexing is 1-based,
and the function returns -1 if the "target" string is not present in "source".
Important Note: If the "target" string is empty / missing, this function returns a
value of "1", which is generally unexpected behavior, and must be accounted for
separatetly.
]]
function str.str_find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target'} )
local source_str = new_args['source'] or ''
local target_str = new_args['target'] or ''
if target_str == '' then
return 1
end
local start = mw.ustring.find( source_str, target_str, 1, true )
if start == nil then
start = -1
end
return start
end
--[[
find
This function allows one to search for a target string or pattern within another
string.
Usage:
{{#invoke:String|find|source_str|target_string|start_index|plain_flag}}
OR
{{#invoke:String|find|source=source_str|target=target_str|start=start_index|plain=plain_flag}}
Parameters
source: The string to search
target: The string or pattern to find within source
start: The index within the source string to start the search, defaults to 1
plain: Boolean flag indicating that target should be understood as plain
text and not as a Lua style regular expression, defaults to true
If invoked using named parameters, Mediawiki will automatically remove any leading or
trailing whitespace from the parameter. In some circumstances this is desirable, in
other cases one may want to preserve the whitespace.
This function returns the first index >= "start" where "target" can be found
within "source". Indices are 1-based. If "target" is not found, then this
function returns 0. If either "source" or "target" are missing / empty, this
function also returns 0.
This function should be safe for UTF-8 strings.
]]
function str.find( frame )
local new_args = str._getParameters( frame.args, {'source', 'target', 'start', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['target'] or ''
local start_pos = tonumber(new_args['start']) or 1
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return 0
end
plain = str._getBoolean( plain )
local start = mw.ustring.find( source_str, pattern, start_pos, plain )
if start == nil then
start = 0
end
return start
end
--[[
replace
This function allows one to replace a target string or pattern within another
string.
Usage:
{{#invoke:String|replace|source_str|pattern_string|replace_string|replacement_count|plain_flag}}
OR
{{#invoke:String|replace|source=source_string|pattern=pattern_string|replace=replace_string|
count=replacement_count|plain=plain_flag}}
Parameters
source: The string to search
pattern: The string or pattern to find within source
replace: The replacement text
count: The number of occurences to replace, defaults to all.
plain: Boolean flag indicating that pattern should be understood as plain
text and not as a Lua style regular expression, defaults to true
]]
function str.replace( frame )
local new_args = str._getParameters( frame.args, {'source', 'pattern', 'replace', 'count', 'plain' } )
local source_str = new_args['source'] or ''
local pattern = new_args['pattern'] or ''
local replace = new_args['replace'] or ''
local count = tonumber( new_args['count'] )
local plain = new_args['plain'] or true
if source_str == '' or pattern == '' then
return source_str
end
plain = str._getBoolean( plain )
if plain then
pattern = str._escapePattern( pattern )
replace = string.gsub( replace, "%%", "%%%%" ) --Only need to escape replacement sequences.
end
local result
if count ~= nil then
result = mw.ustring.gsub( source_str, pattern, replace, count )
else
result = mw.ustring.gsub( source_str, pattern, replace )
end
return result
end
--[[
simple function to pipe string.rep to templates.
]]
function str.rep( frame )
local repetitions = tonumber( frame.args[2] )
if not repetitions then
return str._error( 'function rep expects a number as second parameter, received "' .. ( frame.args[2] or '' ) .. '"' )
end
return string.rep( frame.args[1] or '', repetitions )
end
--[[
escapePattern
This function escapes special characters from a Lua string pattern. See [1]
for details on how patterns work.
[1] https://www.mediawiki.org/wiki/Extension:Scribunto/Lua_reference_manual#Patterns
Usage:
{{#invoke:String|escapePattern|pattern_string}}
Parameters
pattern_string: The pattern string to escape.
]]
function str.escapePattern( frame )
local pattern_str = frame.args[1]
if not pattern_str then
return str._error( 'No pattern string specified' )
end
local result = str._escapePattern( pattern_str )
return result
end
--[[
count
This function counts the number of occurrences of one string in another.
]]
function str.count(frame)
local args = str._getParameters(frame.args, {'source', 'pattern', 'plain'})
local source = args.source or ''
local pattern = args.pattern or ''
local plain = str._getBoolean(args.plain or true)
if plain then
pattern = str._escapePattern(pattern)
end
local _, count = mw.ustring.gsub(source, pattern, '')
return count
end
--[[
endswith
This function determines whether a string ends with another string.
]]
function str.endswith(frame)
local args = str._getParameters(frame.args, {'source', 'pattern'})
local source = args.source or ''
local pattern = args.pattern or ''
if pattern == '' then
-- All strings end with the empty string.
return "yes"
end
if mw.ustring.sub(source, -mw.ustring.len(pattern), -1) == pattern then
return "yes"
else
return ""
end
end
--[[
join
Join all non empty arguments together; the first argument is the separator.
Usage:
{{#invoke:String|join|sep|one|two|three}}
]]
function str.join(frame)
local args = {}
local sep
for _, v in ipairs( frame.args ) do
if sep then
if v ~= '' then
table.insert(args, v)
end
else
sep = v
end
end
return table.concat( args, sep or '' )
end
-- findpagetext returns the position of a piece of text in a page
-- First positional parameter or |text is the search text
-- Optional parameter |title is the page title, defaults to current page
-- Optional parameter |plain is either true for plain search (default) or false for Lua pattern search
-- Optional parameter |nomatch is the return value when no match is found; default is nil
function str._findpagetext(args)
-- process parameters
local nomatch = args.nomatch or ""
if nomatch == "" then nomatch = nil end
--
local text = mw.text.trim(args[1] or args.text or "")
if text == "" then return nil end
--
local title = args.title or ""
local titleobj
if title == "" then
titleobj = mw.title.getCurrentTitle()
else
titleobj = mw.title.new(title)
end
--
local plain = args.plain or ""
if plain:sub(1, 1) == "f" then plain = false else plain = true end
-- get the page content and look for 'text' - return position or nomatch
local content = titleobj and titleobj:getContent()
return content and mw.ustring.find(content, text, 1, plain) or nomatch
end
function str.findpagetext(frame)
local args = frame.args
local pargs = frame:getParent().args
for k, v in pairs(pargs) do
args[k] = v
end
if not (args[1] or args.text) then return nil end
-- just the first value
return (str._findpagetext(args))
end
--[[
Helper function that populates the argument list given that user may need to use a mix of
named and unnamed parameters. This is relevant because named parameters are not
identical to unnamed parameters due to string trimming, and when dealing with strings
we sometimes want to either preserve or remove that whitespace depending on the application.
]]
function str._getParameters( frame_args, arg_list )
local new_args = {}
local index = 1
local value
for _, arg in ipairs( arg_list ) do
value = frame_args[arg]
if value == nil then
value = frame_args[index]
index = index + 1
end
new_args[arg] = value
end
return new_args
end
--[[
Helper function to handle error messages.
]]
function str._error( error_str )
local frame = mw.getCurrentFrame()
local error_category = frame.args.error_category or 'Errors reported by Module String'
local ignore_errors = frame.args.ignore_errors or false
local no_category = frame.args.no_category or false
if str._getBoolean(ignore_errors) then
return ''
end
local error_str = '<strong class="error">String Module Error: ' .. error_str .. '</strong>'
if error_category ~= '' and not str._getBoolean( no_category ) then
error_str = '[[Panni:' .. error_category .. ']]' .. error_str
end
return error_str
end
--[[
Helper Function to interpret boolean strings
]]
function str._getBoolean( boolean_str )
local boolean_value
if type( boolean_str ) == 'string' then
boolean_str = boolean_str:lower()
if boolean_str == 'false' or boolean_str == 'no' or boolean_str == '0'
or boolean_str == '' then
boolean_value = false
else
boolean_value = true
end
elseif type( boolean_str ) == 'boolean' then
boolean_value = boolean_str
else
error( 'No boolean value found' )
end
return boolean_value
end
--[[
Helper function that escapes all pattern characters so that they will be treated
as plain text.
]]
function str._escapePattern( pattern_str )
return ( string.gsub( pattern_str, "[%(%)%.%%%+%-%*%?%[%^%$%]]", "%%%0" ) )
end
return str
byteynla3ptc37v5z5xiom65ovniniq
Banki
0
447
10479
8638
2026-08-24T22:37:51Z
Yakubu19
208
10479
wikitext
text/x-wiki
{{Databox|item=Q22687}}
[[Fayil:Bydgoszcz banki.jpg|thumb|banki ]]
[[Fayil:Bank of Tanzania golden hour.jpg|thumb|Banki ga Tanzania]]
[[Fayil:Deutsche-Bank-Frankfurt-am-Main.jpg|thumb|bankin Deutsche]]
[[Fayil:National Bank of Liechtenstein.JPG|thumb|Banki]]
'''Banki'''i beyi gudana ga hada-had ji in dodo, ga zenayi, ga ona gudum kala aji bongira yi ga gama jir in banki inko wena riba. (1) Banki Andi muhimmanci ga al'umma, inko she le woli yalla aji onani tsaro GA tsari in musamman.<ref>https://web.archive.org/web/20180713043152/http://www.prarulebook.co.uk/rulebook/Glossary/Rulebook/0/B</ref>
Ishin de banki ye beyi ji miyya aji Ele zena dodosu ga bankuna miyya dodosu ga gawa yatu bogando hankali memu agita dina bo bikka dodoni yadda Ishin dolwoyi ga matsala sa.
Banki miy'ya a dasu dodo, serna dodo ko goru ko zuwa le au ke in lelo. Bai zena dodo ke a ono gudum ba doggi shim-shim.
Mi'yya yantun bo nola metezai dodosu da banki gaga zamanla honsene mugawa.
==Ɗiwwa==
[[Panni:Goma]]
0bcgcliwmqfz6vb8xlk1yezfrqcohez
Barrack Obama
0
453
10469
3394
2026-08-24T21:45:03Z
Abu Sadeeq77
197
10469
wikitext
text/x-wiki
{{Databox|item=Q76}}
'''Barrack Obamaye''' sun President in [[America]] in kisato. Sunni Barack Hussein [[Obama]] II (La'annin ga August 4, 1961) An siyasan gon ga America, ishiji Shugaba su in Ko foddo ga foddo 44th ga United States, ko 2009 zuwa 2017. Ishiji African-American in bodom la isu shugabanci ga U.S. Obama kafun ishi ai president, e Senator ko lardi su (Illinois) dalla 2005 zuwa 2008. Ke e state senator ga Illinois ko 1997 zuwa 2004. Honolulu, Hawaii. Boi kammila karatuni ga Jami'a Columbia ga soni in 1983, itu Ruta ga matsayi an shirye mi'yya ga Chicago.
== Ɗiwwa ==
4d7kn6ndk6ab7ohd514w4sbsurqaeb3
10470
10469
2026-08-24T21:50:17Z
Abu Sadeeq77
197
10470
wikitext
text/x-wiki
{{Databox|item=Q76}}
'''Barrack Obamaye''' sun President in [[America]] in kisato. Sunni Barack Hussein [[Obama]] II (La'annin ga August 4, 1961) An siyasan gon ga America, ishiji Shugaba su in Ko foddo ga foddo 44th ga United States, ko 2009 zuwa 2017. Ishiji African-American in bodom la isu shugabanci ga U.S. Obama kafun ishi ai president, e Senator ko lardi su (Illinois) dalla 2005 zuwa 2008. Ke e state senator ga Illinois ko 1997 zuwa 2004. Honolulu, Hawaii. Boi kammila karatuni ga Jami'a Columbia ga soni in 1983, itu Ruta ga matsayi an shirye mi'yya ga Chicago. Ga soni in 1988, itu register ga makaranta Shari'a in Harvard, India kasantu shugaba bu'um mi'yya in farko in doka Harvard Law.
== Ɗiwwa ==
hdd54p25awc0wfhsb62fovrccgqy3ya
10471
10470
2026-08-24T21:59:38Z
Abu Sadeeq77
197
10471
wikitext
text/x-wiki
{{Databox|item=Q76}}
'''Barrack Obamaye''' sun President in [[America]] in kisato. Sunni Barack Hussein [[Obama]] II (La'annin ga August 4, 1961) An siyasan gon ga America, ishiji Shugaba su in Ko foddo ga foddo 44th ga United States, ko 2009 zuwa 2017. Ishiji African-American in bodom la isu shugabanci ga U.S. Obama kafun ishi ai president, e Senator ko lardi su (Illinois) dalla 2005 zuwa 2008. Ke e state senator ga Illinois ko 1997 zuwa 2004. Honolulu, Hawaii. Boi kammila karatuni ga Jami'a Columbia ga soni in 1983, itu Ruta ga matsayi an shirye mi'yya ga Chicago. Ga soni in 1988, itu register ga makaranta Shari'a in Harvard, India kasantu shugaba bu'um mi'yya in farko in doka Harvard Law. Boii kammila karatuni, itu Dono lauya in Kare Hakki mi'yya ga kala ilimi , Aji goze doka tsari mulkiga Jami'a Chicago Law school Koga soni in (1992) zuwa soni in (2004). La majini siyasa an zabe, itu wakili ga gunduma(13) a majalisa dottijai in Illinois Koga soni in 1997 zuwa ga soni in (2004), lokaci la Aji zawwa Takara majalisa dottawa Amurka.
== Ɗiwwa ==
lswb7lx1t4y6hsyup4b52ym3xcs5aps
10472
10471
2026-08-24T22:05:00Z
Abu Sadeeq77
197
10472
wikitext
text/x-wiki
{{Databox|item=Q76}}
'''Barrack Obamaye''' sun President in [[America]] in kisato. Sunni Barack Hussein [[Obama]] II (La'annin ga August 4, 1961) An siyasan gon ga America, ishiji Shugaba su in Ko foddo ga foddo 44th ga United States, ko 2009 zuwa 2017. Ishiji African-American in bodom la isu shugabanci ga U.S. Obama kafun ishi ai president, e Senator ko lardi su (Illinois) dalla 2005 zuwa 2008. Ke e state senator ga Illinois ko 1997 zuwa 2004. Honolulu, Hawaii. Boi kammila karatuni ga Jami'a Columbia ga soni in 1983, itu Ruta ga matsayi an shirye mi'yya ga Chicago. Ga soni in 1988, itu register ga makaranta Shari'a in Harvard, India kasantu shugaba bu'um mi'yya in farko in doka Harvard Law. Boii kammila karatuni, itu Dono lauya in Kare Hakki mi'yya ga kala ilimi , Aji goze doka tsari mulkiga Jami'a Chicago Law school Koga soni in (1992) zuwa soni in (2004). La majini siyasa an zabe, itu wakili ga gunduma(13) a majalisa dottijai in Illinois Koga soni in 1997 zuwa ga soni in (2004), lokaci la Aji zawwa Takara majalisa dottawa Amurka. Obama watu kule ga woli ga soni in (2004) jizani ga wena zabe farko in majalisa Dottawa, Siri jawabini in Siri taro Dimokradiyya ga Tere Yuli , ga zabeni in Tere Nuwamba ga majalisa Dottawa.
== Ɗiwwa ==
pwcdsd0mii09m5yjjfb2e9ncch6j73p
10473
10472
2026-08-24T22:11:47Z
Abu Sadeeq77
197
10473
wikitext
text/x-wiki
{{Databox|item=Q76}}
'''Barrack Obamaye''' sun President in [[America]] in kisato. Sunni Barack Hussein [[Obama]] II (La'annin ga August 4, 1961) An siyasan gon ga America, ishiji Shugaba su in Ko foddo ga foddo 44th ga United States, ko 2009 zuwa 2017. Ishiji African-American in bodom la isu shugabanci ga U.S. Obama kafun ishi ai president, e Senator ko lardi su (Illinois) dalla 2005 zuwa 2008. Ke e state senator ga Illinois ko 1997 zuwa 2004. Honolulu, Hawaii. Boi kammila karatuni ga Jami'a Columbia ga soni in 1983, itu Ruta ga matsayi an shirye mi'yya ga Chicago. Ga soni in 1988, itu register ga makaranta Shari'a in Harvard, India kasantu shugaba bu'um mi'yya in farko in doka Harvard Law. Boii kammila karatuni, itu Dono lauya in Kare Hakki mi'yya ga kala ilimi , Aji goze doka tsari mulkiga Jami'a Chicago Law school Koga soni in (1992) zuwa soni in (2004). La majini siyasa an zabe, itu wakili ga gunduma(13) a majalisa dottijai in Illinois Koga soni in 1997 zuwa ga soni in (2004), lokaci la Aji zawwa Takara majalisa dottawa Amurka. Obama watu kule ga woli ga soni in (2004) jizani ga wena zabe farko in majalisa Dottawa, Siri jawabini in Siri taro Dimokradiyya ga Tere Yuli , ga zabeni in Tere Nuwamba ga majalisa Dottawa. Ga soni in (2018) soni modi Ko boii zalo kafenni, kala boii sili kamfen in nem ga Hillary Clinton, jam'iya democrat Onannin Takara shugaba woli.
== Ɗiwwa ==
ezg4x5gg721bew0z8782cb4wjy7h5xa
10474
10473
2026-08-24T22:15:32Z
Abu Sadeeq77
197
10474
wikitext
text/x-wiki
{{Databox|item=Q76}}
'''Barrack Obamaye''' sun President in [[America]] in kisato. Sunni Barack Hussein [[Obama]] II (La'annin ga August 4, 1961) An siyasan gon ga America, ishiji Shugaba su in Ko foddo ga foddo 44th ga United States, ko 2009 zuwa 2017. Ishiji African-American in bodom la isu shugabanci ga U.S. Obama kafun ishi ai president, e Senator ko lardi su (Illinois) dalla 2005 zuwa 2008. Ke e state senator ga Illinois ko 1997 zuwa 2004. Honolulu, Hawaii. Boi kammila karatuni ga Jami'a Columbia ga soni in 1983, itu Ruta ga matsayi an shirye mi'yya ga Chicago. Ga soni in 1988, itu register ga makaranta Shari'a in Harvard, India kasantu shugaba bu'um mi'yya in farko in doka Harvard Law. Boii kammila karatuni, itu Dono lauya in Kare Hakki mi'yya ga kala ilimi , Aji goze doka tsari mulkiga Jami'a Chicago Law school Koga soni in (1992) zuwa soni in (2004). La majini siyasa an zabe, itu wakili ga gunduma(13) a majalisa dottijai in Illinois Koga soni in 1997 zuwa ga soni in (2004), lokaci la Aji zawwa Takara majalisa dottawa Amurka. Obama watu kule ga woli ga soni in (2004) jizani ga wena zabe farko in majalisa Dottawa, Siri jawabini in Siri taro Dimokradiyya ga Tere Yuli , ga zabeni in Tere Nuwamba ga majalisa Dottawa. Ga soni in (2018) soni modi Ko boii zalo kafenni, kala boii sili kamfen in nem ga Hillary Clinton, jam'iya democrat Onannin Takara shugaba woli. Zaban OBAMA gako an Takara Republican John McCain ga Siri zabe kala rantsantun ishin jizani ga soba takarani, Joe Biden, ga Foti 20 ga Tere janairu 2009.
== Ɗiwwa ==
1dxaoijrcrcmo71t8zy6pzt909qzvx1
10475
10474
2026-08-24T22:16:00Z
Abu Sadeeq77
197
10475
wikitext
text/x-wiki
{{Databox|item=Q76}}
'''Barrack Obamaye''' sun President in [[America]] in kisato. Sunni Barack Hussein [[Obama]] II (La'annin ga August 4, 1961) An siyasan gon ga America, ishiji Shugaba su in Ko foddo ga foddo 44th ga United States, ko 2009 zuwa 2017. Ishiji African-American in bodom la isu shugabanci ga U.S. Obama kafun ishi ai president, e Senator ko lardi su (Illinois) dalla 2005 zuwa 2008. Ke e state senator ga Illinois ko 1997 zuwa 2004. Honolulu, Hawaii. Boi kammila karatuni ga Jami'a Columbia ga soni in 1983, itu Ruta ga matsayi an shirye mi'yya ga Chicago. Ga soni in 1988, itu register ga makaranta Shari'a in Harvard, India kasantu shugaba bu'um mi'yya in farko in doka Harvard Law. Boii kammila karatuni, itu Dono lauya in Kare Hakki mi'yya ga kala ilimi , Aji goze doka tsari mulkiga Jami'a Chicago Law school Koga soni in (1992) zuwa soni in (2004). La majini siyasa an zabe, itu wakili ga gunduma(13) a majalisa dottijai in Illinois Koga soni in 1997 zuwa ga soni in (2004), lokaci la Aji zawwa Takara majalisa dottawa Amurka. Obama watu kule ga woli ga soni in (2004) jizani ga wena zabe farko in majalisa Dottawa, Siri jawabini in Siri taro Dimokradiyya ga Tere Yuli , ga zabeni in Tere Nuwamba ga majalisa Dottawa. Ga soni in (2018) soni modi Ko boii zalo kafenni, kala boii sili kamfen in nem ga Hillary Clinton, jam'iya democrat Onannin Takara shugaba woli. Zaban Obama ,gako an Takara Republican John McCain ga Siri zabe kala rantsantun ishin jizani ga soba takarani, Joe Biden, ga Foti 20 ga Tere janairu 2009.
== Ɗiwwa ==
ri9uneiyl5xkuxwfoiejy7a4lj5n3wz
10477
10475
2026-08-24T22:17:56Z
Abu Sadeeq77
197
10477
wikitext
text/x-wiki
{{Databox|item=Q76}}
'''Barrack Obamaye''' sun President in [[America]] in kisato. Sunni Barack Hussein [[Obama]] II (La'annin ga August 4, 1961) An siyasan gon ga America, ishiji Shugaba su in Ko foddo ga foddo 44th ga United States, ko 2009 zuwa 2017. Ishiji African-American in bodom la isu shugabanci ga U.S. Obama kafun ishi ai president, e Senator ko lardi su (Illinois) dalla 2005 zuwa 2008. Ke e state senator ga Illinois ko 1997 zuwa 2004. Honolulu, Hawaii. Boi kammila karatuni ga Jami'a Columbia ga soni in 1983, itu Ruta ga matsayi an shirye mi'yya ga Chicago. Ga soni in 1988, itu register ga makaranta Shari'a in Harvard, India kasantu shugaba bu'um mi'yya in farko in doka Harvard Law. Boii kammila karatuni, itu Dono lauya in Kare Hakki mi'yya ga kala ilimi , Aji goze doka tsari mulkiga Jami'a Chicago Law school Koga soni in (1992) zuwa soni in (2004). La majini siyasa an zabe, itu wakili ga gunduma(13) a majalisa dottijai in Illinois Koga soni in 1997 zuwa ga soni in (2004), lokaci la Aji zawwa Takara majalisa dottawa Amurka. Obama watu kule ga woli ga soni in (2004) jizani ga wena zabe farko in majalisa Dottawa, Siri jawabini in Siri taro Dimokradiyya ga Tere Yuli , ga zabeni in Tere Nuwamba ga majalisa Dottawa. Ga soni in (2018) soni modi Ko boii zalo kafenni, kala boii sili kamfen in nem ga Hillary Clinton, jam'iya democrat Onannin Takara shugaba woli. Zaban Obama ,gako an Takara Republican John McCain ga Siri zabe kala rantsantun ishin jizani ga soba takarani, Joe Biden, ga Foti 20 ga Tere janairu 2009. Boii Tere bonum 9 Onannin Lamba Yano in Nobel in Dono lafiya in soni (2009.
== Ɗiwwa ==
g2xxgysnbahl2ptyx2wdojuz8wd9sq4
Bauchi
0
455
10443
9548
2026-08-24T14:06:02Z
Abu Sadeeq77
197
10443
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
== Ɗiwwa ==
9b3kuozico3mmqkfm0av8r95zk1qqr2
10444
10443
2026-08-24T14:08:23Z
Abu Sadeeq77
197
10444
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
== Ɗiwwa ==
nrsu8g18fnk6wx3rv1qcg0r3gga5b98
10445
10444
2026-08-24T14:14:44Z
Abu Sadeeq77
197
10445
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Ɗiwwa ==
g8nqabdvesmb9lmlp024bhnrp5rbexx
10446
10445
2026-08-24T14:19:11Z
Abu Sadeeq77
197
10446
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
== Ɗiwwa ==
eedujohd14zg87suybojt07mycj93qf
10447
10446
2026-08-24T14:20:25Z
Abu Sadeeq77
197
10447
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Ɗiwwa ==
du9cznpjyb9lvu81tn85aqgj1lprsxv
10448
10447
2026-08-24T14:21:50Z
Abu Sadeeq77
197
10448
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
== Ɗiwwa ==
t86op2oi90sdpilgnxjgoq3rbn5q36j
10449
10448
2026-08-24T14:24:48Z
Abu Sadeeq77
197
10449
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Ɗiwwa ==
lo568qrncvzn65ftrripas0dgw8v74b
10450
10449
2026-08-24T14:26:12Z
Abu Sadeeq77
197
10450
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
== Ɗiwwa ==
o0rchxily57zphjbutjkuf32ijba0kj
10451
10450
2026-08-24T14:29:49Z
Abu Sadeeq77
197
10451
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Al'ummar Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Ɗiwwa ==
1tm6gab9c5qfhor73lwduw7vm75xdev
10452
10451
2026-08-24T14:30:56Z
Abu Sadeeq77
197
10452
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Ɗiwwa ==
j237l9wmpj286gxc2o8pzbusimakgtf
10453
10452
2026-08-24T14:32:56Z
Abu Sadeeq77
197
10453
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Bibiliyo ==
== Ɗiwwa ==
i4e00pdjqg5nngccduml6k4gojs2nus
10454
10453
2026-08-24T14:33:30Z
Abu Sadeeq77
197
10454
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Bibiliyo ==
* Haour, Anne., Rossi, Benedetta (2010) ''Being and becoming Hausa : interdisciplinary perspectives.Leiden: Brill. [[ISBN]] 978-90-04-1854-25''
== Ɗiwwa ==
gff66b7yss0tem7gbvvf7kg344sh9eo
10455
10454
2026-08-24T14:34:21Z
Abu Sadeeq77
197
10455
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Bibiliyo ==
* Haour, Anne., Rossi, Benedetta (2010) ''Being and becoming Hausa : interdisciplinary perspectives.Leiden: Brill. [[ISBN]] 978-90-04-1854-25''
== Manazarta ==
== Ɗiwwa ==
c806cmdov7r5zw04ipwe7rinr53ecll
10456
10455
2026-08-24T14:35:47Z
Abu Sadeeq77
197
10456
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Bibiliyo ==
* Haour, Anne., Rossi, Benedetta (2010) ''Being and becoming Hausa : interdisciplinary perspectives.Leiden: Brill. [[ISBN]] 978-90-04-1854-25''
== Manazarta ==
{{Reflist|2}}
{{Jihohin Najeriya}}
{{DEFAULTSORT:Bauchi}}
[[Category:Jihohin Nijeriya]]
== Ɗiwwa ==
ilskro1m554i3klnv4il9eft4kmw2pi
10457
10456
2026-08-24T14:39:16Z
Abu Sadeeq77
197
10457
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
[[File:Bauchi Emirate Palace (1).jpg|thumb|Bauchi Emirate Council]]
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Bibiliyo ==
* Haour, Anne., Rossi, Benedetta (2010) ''Being and becoming Hausa : interdisciplinary perspectives.Leiden: Brill. [[ISBN]] 978-90-04-1854-25''
== Manazarta ==
{{Reflist|2}}
{{Jihohin Najeriya}}
{{DEFAULTSORT:Bauchi}}
[[Category:Jihohin Nijeriya]]
== Ɗiwwa ==
47h5kb6e2je0pa9x6387nt5wfuz6s20
10458
10457
2026-08-24T14:44:13Z
Abu Sadeeq77
197
10458
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe. [[Fayil:Emir of Bauchi Main Palace.jpg|thumb|bauchi emir]]
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
[[File:Bauchi Emirate Palace (1).jpg|thumb|Bauchi Emirate Council]]
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Bibiliyo ==
* Haour, Anne., Rossi, Benedetta (2010) ''Being and becoming Hausa : interdisciplinary perspectives.Leiden: Brill. [[ISBN]] 978-90-04-1854-25''
== Manazarta ==
{{Reflist|2}}
{{Jihohin Najeriya}}
{{DEFAULTSORT:Bauchi}}
[[Category:Jihohin Nijeriya]]
== Ɗiwwa ==
dp02swgxhhouyrerc6awp0s2b5650qo
10459
10458
2026-08-24T14:45:56Z
Abu Sadeeq77
197
10459
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996.
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe. [[Fayil:Emir of Bauchi Main Palace.jpg|thumb|bauchi emir]]
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
[[File:ASC Leiden - Rietveld Collection - Nigeria 1970 - 1973 - 01 - 068 Sallah festivities in Bauchi. Rich horsemen in white, with red and white parasol for the ceremonial ruler of Bauchi.jpg|thumb|Bauchi a Shekarar 1970]]
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
[[File:Bauchi Emirate Palace (1).jpg|thumb|Bauchi Emirate Council]]
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Bibiliyo ==
* Haour, Anne., Rossi, Benedetta (2010) ''Being and becoming Hausa : interdisciplinary perspectives.Leiden: Brill. [[ISBN]] 978-90-04-1854-25''
== Manazarta ==
{{Reflist|2}}
{{Jihohin Najeriya}}
{{DEFAULTSORT:Bauchi}}
[[Category:Jihohin Nijeriya]]
== Ɗiwwa ==
qkn5aaq4oun5behxzmg74ab8syeknhk
10461
10459
2026-08-24T14:47:25Z
Abu Sadeeq77
197
10461
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996. [[Fayil:Emir of Bauchi Main Palace.jpg|thumb|bauchi emir]]
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
[[File:ASC Leiden - Rietveld Collection - Nigeria 1970 - 1973 - 01 - 068 Sallah festivities in Bauchi. Rich horsemen in white, with red and white parasol for the ceremonial ruler of Bauchi.jpg|thumb|Bauchi a Shekarar 1970]]
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe hukumomi (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
[[File:Bauchi Emirate Palace (1).jpg|thumb|Bauchi Emirate Council]]
Kirfi kasantu goru ga birni Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi Nigeria kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, Bolewa, karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a Abubakar Tafawa Ɓalewa(15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: Aminu sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; Bole; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || Bole; Deno; Diri; Giiwo; Mburku; Ngamo; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || Bole
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Bibiliyo ==
* Haour, Anne., Rossi, Benedetta (2010) ''Being and becoming Hausa : interdisciplinary perspectives.Leiden: Brill. [[ISBN]] 978-90-04-1854-25''
== Manazarta ==
{{Reflist|2}}
{{Jihohin Najeriya}}
{{DEFAULTSORT:Bauchi}}
[[Category:Jihohin Nijeriya]]
== Ɗiwwa ==
g299q49kpc70e2l86cgiypjs72vt1qh
10466
10461
2026-08-24T21:26:51Z
Abu Sadeeq77
197
10466
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996. [[Fayil:Emir of Bauchi Main Palace.jpg|thumb|bauchi emir]]
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a Filanti jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
[[File:ASC Leiden - Rietveld Collection - Nigeria 1970 - 1973 - 01 - 068 Sallah festivities in Bauchi. Rich horsemen in white, with red and white parasol for the ceremonial ruler of Bauchi.jpg|thumb|Bauchi a Shekarar 1970]]
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe [[Hukumomi In Dolinshe Ga Najeriya|hukumomi]] (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
[[File:Bauchi Emirate Palace (1).jpg|thumb|Bauchi Emirate Council]]
Kirfi kasantu goru ga [[Birnin Kudu|birni]] Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi [[Nijeriya|Nigeria]] kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, [[Harshe Bole|Bolewa]], karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a [[Abubakar Tafawa Balewa|Abubakar Tafawa Ɓalewa]](15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: [[Amine adli|Aminu]] sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; [[Harshe Bole|Bole]]; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || [[Harshe Bole|Bole]]; Deno; Diri; Giiwo; Mburku; [[Ngamo]]; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || [[Bole language|Bole]]
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Bibiliyo ==
* Haour, Anne., Rossi, Benedetta (2010) ''Being and becoming Hausa : interdisciplinary perspectives.Leiden: Brill. [[ISBN]] 978-90-04-1854-25''
== Manazarta ==
{{Reflist|2}}
{{Jihohin Najeriya}}
{{DEFAULTSORT:Bauchi}}
[[Category:Jihohin Nijeriya]]
== Ɗiwwa ==
suj6xwbcowi5vheod7ed1ydyidf7ic7
10467
10466
2026-08-24T21:28:43Z
Abu Sadeeq77
197
10467
wikitext
text/x-wiki
{{Databox|item=Q811144}}
'''Bauchi''' [[Woli]] Bauchi woli Ji ya a fayta Aushi Dola Darr Ga woli [[Nijeriya]]. Gontattuk lefe Ga [[Kano]] Ko Aushi kafa [[Jigawa]], [[Gombe]], ga [[Jiha Yobe|Yobe]] Ko fayta Darr, kafa [[Kaduna]] Ko Zoni. Woli Bauchi wen zalshe sunto Ko labar Bani yele Bauchi, Yaa Ke itaji Burnin in Siri ye Har soni in 1976. Ga lokacin la bissan manshi jihohi gudi mana dar ga Nigeria. Ga boii jiha Bauchi bikkantun jiha Gombe, la koboii majjito jiha an Dono kotto ga soni in 1996
Zan woli Bauchi Ga Soni Dubu Modi Ga Dalma ɓonum Ga kobawulo Ga basshi modi (1976), Ga lotayeji missan Manshi woliye Aushi Ndola Darr [[Nijeriya]]. Ga boii woli Bauchi tattuk/gontattuk woli [[Gombe]], yake Ko tetteke ita Mai jito wolin in kotto Ga Ga Soni 1996. [[Fayil:Emir of Bauchi Main Palace.jpg|thumb|bauchi emir]]
Bauchi itaji jaha in badi ga fadi woli (2) kala in bawulo ga godom [[Miyya Ogun|miyya]] (3). Itaga godom filaye kimani kilomita dubu arba 'in ga badi ga dalma hordo ga cassa'in ga kunum(45, 893) godom miyya kimani miliyan bawulo ga dubu dalma badi ga arba'in ga dalma baccimodi ga sittin ga kunum (7,540,663) (4) ga bisa kidaya soninshe in dubu balau ga baccimodi 2006 . Jaha ye rabajjito dangane ga yanayi woli zuwa kashi balau (2) west sudaniya savanna koga aushi ga kala semi-desert sahel savanna koga Arewa ga koga montane Jos plateau aushi mana zoni jiha (5) koga kyautalla beyinshe ga goruye gontu ga yankari National park katafri beyi zenani fa dabbobi mana bijimi bido barewa ga Turum Giwa ga messesu.(6)
Bauchi ji siri jaha bauchi. Bala abdulkadir Muhammad Ishin ji gwamna jiha ye Yan zaben la soninshe in 2019 har zuwa inso. Maddi koga su. Manshiwa jiha gontan go ga abubakar tafawa balewa gamin Isa yakubu, isah Hamma misau Nazif gamawa, haruna Ningi ga ali wakil.
Andi yarinshe godom ga yankuma daban daban in jihar gotango ga, Bo'fikka, ga Butawa ga yare warji koga yankuna dalla jiha yaren Fulfulde, yare Kanuri, ga yare karei'karei koga zani goru [[filanti]] ga yare gerawa, koga birni bauchi ga kewaye to yare zaar (sayawa) koga aushi yare Tangale Jarawa ko aushi mana zoni. Kala asari miyya goru (kaso tamanin ga badi 85%) musulwa ji ga dole kaso kiristoci ga kaso baccimodi 6% ga maguzawa ga kaso bonum 9% (7)
ga farko soni Alif 1800,a [[Filanti]] jahadi bikkantun mafi akasari goruye birni Bauchi in inso. Jamji kafan moyinshe Bauchi ga wol woli daula musulunci in Sokoto ga Karni in 1900, turawa Mulki mallaka bikkantun moyinshe ye mete zuwoto ga wol woli mulki mallaka in gudi [[Nijeriya|Nigeria]]. La kobai majjito [[Nijeriya|Nigeria]] wol woli mulki turawa kafin wena yanci ga soni 1960 , Yan asali yanki jiha Bauchi Iya a gudi Nigeria Boi wena yanci koyi ga soni 1967, lokacin la bissan jiha ye majjito wol woli jiha gudi Nigeria ko ɗar boi bissa jiha gudi Ko ɗar kafan jiha Bauchi ga Foti kunum' (3) ga tare February ga soni in (20) kala boi kafato wantun dolinshe hukumomi ga zoni jiha ye meteji manjisu Bo jiha Gombe.
Ga matsayi to in jiha la dogaran ga mara, tattali dara jiha ye Ta'allaku gako dabbobi ga hantsi manamin auduga, Duro kute, tumaturi ga kala doya jizani ga Tina Dom amfani mara daidai ga sauwa habika tishi ga masana'antu sarrifa karai tishi in gwan_gwani, ga kala oppako ma'adanai manamin mana kisato columbite, ga kala beyi ewe ido mana mala kume zoii in yankari ga Amma in wikki spring.
== Asali sun ==
Dan game ga tarihi in gargajiya goruye watu asali ji ko gama an'bara Modi la Sunni baushe , la dowu ga yanki ye kafin nako moyinshe in farko wato Yakubu (la wantun Ko Dalla soni in 1800-10) jahohi Bauchi ga Adamawa kasantan anin yanci ga Goma ga mi'yya Daula Filanti in Sokoto.
== Tarihi ==
[[File:ASC Leiden - Rietveld Collection - Nigeria 1970 - 1973 - 01 - 068 Sallah festivities in Bauchi. Rich horsemen in white, with red and white parasol for the ceremonial ruler of Bauchi.jpg|thumb|Bauchi a Shekarar 1970]]
Beyilla Aji undani ga Bauchi kasantu kafin soni 1976 gunduma ga yanki jiha gudi Ko ɗar ga . Dangane ga kidaya in 2006 jiha Aji ga mi'yya Kimani 4.653,006
Jiha Bauchi wattu Tina Dom kala-kala gaga soni Manne . Andi harshe Ajawa ga Aji amfa ga ishin ga jiha Bauchi kala Koga bisani yakilannin ga gaga sonii 1920 ga soni in 1940 inko asali anin amfani ga harshe ye manjisu Bo afiniwa.
Ga Lokaci Mulki mallaka Har lokaci wena yanci, ita aga yanki plateau ga yanki gudi Najeriya, Har zuwa soni in 1967 lokacin la an wena ga jihohi ga yankuna Bauchi, Bornoga [[Adamawa]] Aji gonta beyi wena jiha gudi ga Dar.
Boi wena jiha Bauchi ga soni in 1976, ga Lokaci jihohi balau Bauchi ga Gombe in Gonto , jiha Andi dolinshe hukumomi guda (20) jamji kala (23). Jamji kala ga soni in 1997 , wantun jiha [[Gombe]]. Koga jiha Bauchi inko Aji wena sauwi dolinshe hukumomi ga Woli inko Dayan jaha Bauchi ga dolinshe [[Hukumomi In Dolinshe Ga Najeriya|hukumomi]] (20) mana yadda foran goyi:
==Dolinshe Hukumomi==
jaha bauchi Andi adadi dolinshe hukumomi kobalau ([[20]]). Mate:
{| class="sortable wikitable"
|-
! Dolinshe Hukuma
! Fadin kasa (km<sup>2</sup>)
! Adadin 2006<br> Mutane
! Cibiyar Karamar Hukuma
! Lambar aika<br>sako
|-
| [[Bauchi]]
| align="right"|3,687
| align="right"|493,810
| [[Bauchi]]
| 740
|-
| [[Tafawa Balewa, Nigeria|Tafawa Balewa]]
| align="right"|2,515
| align="right"|219,988
| [[Bununu, Nigeria|Bununu]]
| 740
|-
| [[Dass, Nigeria|Dass]]
| align="right"|535
| align="right"|89,943
| [[Dass, Nigeria|Dass]]
| 740
|-
| [[Toro, Nigeria|Toro]]
| align="right"|6,932
| align="right"|350,404
| [[Toro, Nigeria|Toro]]
| 740
|-
| [[Bogoro]]
| align="right"|894
| align="right"|84,215
| [[Bogoro]]
| 741
|-
| [[Ningi, Nigeria|Ningi]]
| align="right"|4,625
| align="right"|387,192
| [[Ningi, Nigeria|Ningi]]
| 742
|-
| [[Warji]]
| align="right"|625
| align="right"|114,720
| [[Warji]]
| 742
|-
| [[Ganjuwa]]
| align="right"|5,059
| align="right"|280,468
| [[Kafin Madaki]]
| 742
|-
| [[Kirfi]]
| align="right"|2,371
| align="right"|147,618
| [[Kirfi]]
| 743
|-
| [[Alkaleri]]
| align="right"|5,918
| align="right"|329,424
| [[Alkaleri]]
| 743
|-
| ''Southern region totals''
| align="right"|''33,161''
| align="right"|''2,497,782''
|
|
|-
| [[Darazo]]
| align="right"|3,015
| align="right"|251,597
| [[Darazo]]
| 750
|-
| [[Misau]]
| align="right"|1,226
| align="right"|263,487
| [[Misau]]
| 750
|-
| [[Giade]]
| align="right"|668
| align="right"|156,969
| [[Giade]]
| 750
|-
| [[Shira, Nigeria|Shira]]
| align="right"|1,321
| align="right"|234,014
| [[Yana, Nigeria|Yana]]
| 750
|-
| [[Jama'are]]
| align="right"|493
| align="right"|117,883
| [[Jama'are]]
| 751
|-
| [[Katagum]]
| align="right"|1,436
| align="right"|295,970
| [[Azare]]
| 751
|-
| [[Itas/Gadau]]
| align="right"|1,398
| align="right"|229,996
| [[Itas]]
| 751
|-
| [[Zaki, Nigeria|Zaki]]
| align="right"|1,476
| align="right"|191,457
| [[Katagum]]
| 752
|-
| [[Gamawa]]
| align="right"|2,925
| align="right"|286,388
| [[Gamawa]]
| 752
|-
| [[Damban]]
| align="right"|1,077
| align="right"|150,922
| [[Damban]]
| 752
|-
| ''Northern region totals''
| align="right"|''15,035''
| align="right"|''2,178,683''
|
|
|}
== Gorunshe ==
[[File:Bauchi Emirate Palace (1).jpg|thumb|Bauchi Emirate Council]]
Kirfi kasantu goru ga [[Birnin Kudu|birni]] Bauchi la itaga akalla Siri 700 Mita fadirto ga fali gongola la Aji ele Amma ga goruye . La gontu ga Siri Amma benua. Goruye Andi tsairi barka mara ga dayi.(3) Ga al'ada kasantu ga Dalla hi ga mi'yya la Aji unda ga kirfawa kala ita a wol woli gunduma afiniwa . Bincike gako garu kirfi Aji inne mana amsoshi la kunsani ga al'ada ga adin ga harka Siyasa ga Woli apiniwa Aji wena no goru kirfi Ko goru Bauchi.
== Labar woli ==
Jiha Bauchi mamayantun Fadi woli Kimani 49,119 km2 (18'965 sq mi) inko mamayan kaso 5.3 in Fadi [[Nijeriya|Nigeria]] kala Aji Dono gako lambobi beyi in latitudes 9' 3' ga 12'3' gudi ga kala longitude 8' 50' ga 11' dar
Jiha itaga iyaka ga jihohi bawulo , Kano ga Jigawa Ko gudi, Taraba ga plateau Ko aushi, Gombe ga Yobe Ko ɗar kafan Kaduna Ko zoni.
Jiha Bauchi ita aga jihohi arewa Najeriya lake ga yanayi tsirrai kala balau Sudan Savannah ga Sahel Savannah. She kala Andi tsaunuka aushi yanki goru, dangane ga alakati ga Jos plateau.
== Godom mi'yya ==
Andi kabilu daban daban Har guda 55 ga goruye la gontango ga : Gerawa, Sayawa, Jarawa, Kirfawa, Afiniwa, [[Harshe Bole|Bolewa]], karekare, kanuri, Fa'awa, Butawa, Warjawa, Zulawa, Boyawa, Badawa, Amma Filanti ji asali Kabila goruye she aji nine mate ga asali al'adu su adin ga messesu.
Andi suwa ga Dalla harsuna goruye dangane ga Ruta al'adu karai zowayi ga kala gontosu ga beyi modi, musamman Ko beyi kaibono su ga goma . Maddi Koga harsuna Andi ba'a ga dallasu . Ga Sayawa ga messesu.
Biki sallah a modi koga muhimma bukukuwa la Aji yollako anin inne ga shaf soni.
== Ilimi ==
Jimi a [[Abubakar Tafawa Balewa|Abubakar Tafawa Ɓalewa]](15) ita aga Siri birni Bauchi: Maddi Koga beyi Gozi gontango ga: Jami'a jiha Bauchi, Abubakar Tatari, Ali Polytechnic, Federal Polytechnic Bauchi: [[Amine adli|Aminu]] sale college of Education Azare: Federal University of health sciences Azare:.
== Yaruka ==
Jir harsuna West chadic language la Aji amfani ga mete ga goru Bauchi gontango ga:
* North Bauchi language
* South Bauchi language
Yaruka Bauchi jerasu ga dole Hukumomi SU:
{| class="wikitable"
! LGA !! Languages
|-
| Alkaleri || Dass; [[Harshe Bole|Bole]]; Duguri; Giiwo; Guruntum-Mbaaru; Labir; Tangale
|-
| Bauchi || Bankal; Duguri; Dulbu; Galambu; Gera; Geruma; Giiwo; Guruntum-Mbaaru; Ju; Kir-Balar; Labir; Luri; Mangas; Mbat; Pa'a; Polci; Shiki; Tala; Zangwal
|-
| Bogoro || Saya
|-
| Darazo || [[Harshe Bole|Bole]]; Deno; Diri; Giiwo; Mburku; [[Ngamo]]; Zumbun
|-
| Dass || Bankal; Dass; Gwak; Polci; Saya; Shall-Zwall; Zari
|-
| Dukku || [[Bole language|Bole]]
|-
| Gamawa || Karekare
|-
| Ganjuwa || Ciwogai; Gera; Geruma; Jimi; Kariya; Kubi; Miya
|-
| Kirfi || Bure
|-
| Misau || Fulato/Borno; Shuwa; Kanuri; Hausa; Fulani
|-
| Ningi || Diri; Gamo-Ningi; Kudu-Camo; Pa'a; Siri; Warji; Geruma
|-
| Tafawa Balewa || Sur; Vaghat-Ya-Bijim-Legeri; Zari; Bankal; Gwak; Izere; Saya
|-
| Toro || Bankal; Dass; Geji; Geruma; Gwa; Gyem; Iguta; Izere; Jere; Lame; Lemoro; Mawa; Panawa; Polci; Sanga; Saya; Shau; Tunzuii; Zari; Zeem; Ziriya
|-
| Zaki || Bade
|}
== Gwamnati ==
Gwamna goruye ishinji Siri an zartarwa, jizani ga Fanni Shari'a a tene birni Bauchi.
'''Gwamna'''
Gwamna Bauchi ishinji Mr. Bala Abdulkadir Mohammed, La titu zabe ga Foti bonum 9 ga Tere Maris, soni in 2019 , ga wol woli jam'iya PDP . Rantsantun ishin ga Foti 29 ga Tere Mayu soni in 2019, la sheye zowu majini gwamna in baccimodi 6 ga Bauchi ga wol woli mulki democracy jamji kala gwamna in 16 shaf modi . Bala tela ji mataimaki gwamna Bauchi.
== Kule ga lafiya ==
Jiha Bauchi itaga hasibitoci godom, Hukumomi kule ga lafiya gontango ga.
* Abubakar Tafawa Balewa Teaching Hospital<ref>https://dailytrust.com/atbu-teaching-hospital-doctors-others-unite-for-patients-wellbeing/</ref><ref>https://dailypost.ng/2022/11/28/over-300-in-bauchi-to-benefit-from-free-medical-programme/</ref>
* Bauchi State Hospital<ref><nowiki>https://tribuneonlineng.com/bauchi-hospital-management-board-restates-commitment-to-effective-healthcare-services/</nowiki></ref>
* Al-amin Hospital
* Niima Consultants Hospital
* Albishir Clinic and Maternity
* Proactive Clinic and Hospital Ltd.
* Reemee Medicare Nigeria Limited.
== Mi'yya la Monasu ==
* [[Abubakar Tafawa Balewa]], first and only prime minister of Nigeria
* [[Jude Rabo]], vice-chancellor of Federal University, Wukari
* Tijjani Yusuf Guruntum.
* [[Isa Yuguda]]. An Siyasa, manshi gwamnan jihar Bauchi koga 2007 zuwa 2015.
* [[Bala Mohammed|Bala Muhammed]]. Dan Siyasa
* [[Mohammed Abdullahi Abubakar|Muhammed Abdullahi Abubakar]]. An Siyasa
* [[Sa'adu Zungur]]. Mawaki
* [[Adamu Muhammad Bulkachuwa]]. An shiyasa.
* Isa Hassan Jama'are.
== Hotuna ==
<gallery>
Fayil:Bauchi state university Gadau.jpg|thumb|Bauchi jahaji la sirato
File:Emir of Bauchi Main Palace.jpg|thumb|moyinshe Bauchi
File:Top view of bauchi state capital Nigeria.jpg|thumb|Bauchi
File:Bauchi State Governor Mohammed Abubakar with USAID Mission Director Michael Harvey 3.jpg|thumb|Bauchi
File:Durba banner carrier.jpg|thumb|Mi'yya Bauchi ga beyi bukukuwa al'ada
File:Federal government road linked from bauchi state to biu along bcga.jpg|thumb|Federal government of Bauchi
File:Sumu wildlife park 3.jpg|thumb|Bani dabbobi mala in bauchi
</gallery>
== Bibiliyo ==
* Haour, Anne., Rossi, Benedetta (2010) ''Being and becoming Hausa : interdisciplinary perspectives.Leiden: Brill. [[ISBN]] 978-90-04-1854-25''
== Manazarta ==
{{Reflist|2}}
{{Jihohin Najeriya}}
{{DEFAULTSORT:Bauchi}}
[[Category:Jihohin Nijeriya]]
== Ɗiwwa ==
a8tvdiui71vde6y5mr0j4w2pp20l9oh
Bido
0
461
10486
8480
2026-08-24T23:26:41Z
Yakubu19
208
10486
wikitext
text/x-wiki
{{Databox|item=Q1367}}
'''Bido''' ye sunni (biri) kobo apino. Nasarawi kala a esoni Monkey. Ba kossu godon kala anin [[Pikka]] a eso su "biddinshe". Bidoye kala kala. Bido ye monanni ga dono ga gusho baka innani ga bono to bai modi duwunningo.
Bido ba dowu ga ga mi'yya a ngozo tsayi wadda mi'yya a ishini bido a wana anin bonfoni a zowoni koni zawa har a ishi arella pilanti a ishini maddima na asali bidoye mi'yyaji amma emeyye onanisa.
== Ɗiwwa ==
[[Panni:Atiimala]]
c59sq7hw6ih70bll03m9n44slng6vyc
Bola Ahmed Tinubu
0
468
10478
8484
2026-08-24T22:28:54Z
Yakubu19
208
10478
wikitext
text/x-wiki
{{Databox|item=Q3510872}}
'''Bola Ahmed Adekule Tinubu'''
Ishinye kwararre an siyasa ga [[Nijeriya]], kala shugaba woli Najeriya' Yan koga foti 29 ga tare mayun soninshe in 2023.<ref>https://www.premiumtimesng.com/news/601131-profile-bola-tinubu-the-kingmaker-becomes-nigerias-president-16th-leader.html</ref> Layanningo ga foti 29 ga tare maris ga soninshe in alif dubu modi ga dalma bonum ga kobadi ga balau (1952) miladiyya. ga Lotaye ruta ga matsayi gwamnati jiha [[Legos]] koga soninshe alif dubu dalma bonum ga ko'bonum ga bonum(1999) zuwa soninshe in dubu balau ga bawulo (2007) sheji Antun Sanata la aji wakilta Legas ko zoni modi dubba lokaci ga jamhuryar ko kunum. (Third Republic).(2)
Bola Ahmed Tinubu shahararren an siyasa ji ga Nijeriya inko ji ga sarauta asiwaju ga woli Yarabawa. Kala Jargaba ga Borgu ko jiha [[Neja]] aji shahara ko falla siyasa ga muliki ga Najeriya' shaffi modi.
Aji inne asiwaju gako la dadu jini yolla zareni gako koga mako Najeriya' ko mulki demokuradiyya ko alif dubu modi ga dalma bonum ga kobonum ga bonum (1999). Tinubu kasantu ga matsayi bowu ga falla siyasa sakamako gedau fora ga kume laga Ishin ga siyasa woli Yarabawa ga Nijeriya shaffi bo modi,
Sheji kala foru miyya ga godom ga Najeriya' inko isu goggo wena mukamai ga Tarayya ga jihohi. (3)(4)(5)
== Ɗiwwa ==
gnklpyvb5x9rdoi7mh9k7tai9vsfej6
Borno
0
471
10468
3617
2026-08-24T21:36:55Z
Abu Sadeeq77
197
10468
wikitext
text/x-wiki
{{Databox|item=Q130626}}
'''Jiha Borno''' jiha ji la arewa mana dar ga [[Nijeriya|Najeriya]]' Ita gontan iyaka yobe ko zoni, [[Gombe]] ko aushi mana dar [[Adamawa]] ko aushi yayin la iyaka ko dar Antun iyaka ko woli ga woli ga karatu in zoni kala le hade ji ga yanki.(1)(2)(3)
Jiha Barno itaji jiha in balau (2) ga siri woli koga jahohi 36. Ga [[Nijeriya]] boii jiya Neja. Amma shaff sirito itaji In kohmodi, (11) ga godon miyya ga lokaci la aji kiyasi miyya ga kalla kimani miliyan 5.86 ga soninshe dubu balau ga kobaccimodi (2016).(4)(5) Ga fanni yanayi woli semi-desert sahelian savannah ko gudi ga kala sudaniya savanna ko zoni ko dalla ga aushi ga jiha kala miyya mandara plateau koga yanki aushi mana dar.(6)
Jiha Barno aji kabilu la dowasu ga yanki ye in lokaci garan mana min Dghwede, Glavda, Guduf, Laamang, Mafa, [[Kanuri]], ga mandara ga dalla yanki ye Afade, Yedina ( Buduwa). Ga kala kanembu kaga tetteke yanki zoni mana dar Harshe waja ga karyar aushi yanki ga kala kyibaku, kamwe, kilba, margi, ga kala siri ga yanki aushi jaha, ga yayinga harshe Kanuri ga shuwa Ga rabke Rayuwa ga yankuna dalla ga godon jiha ko fanni adin mafi godom miyya jiha(85%) [[musulwa]] ji, ga tsirarusu kiristanci ga mabiya adin gargajiya, ga kaso 7% lama yallaji (7)(8)(9)(10)
Yanki karni in (7 century), inko aji Mona jiha Barno kasantan koga yanki Daular kanem-Bormu. Daular ga fetengo ko yanki aushi Libya, ko inso (Fezzan) harzuwa yanki cadi har Zuwa yanki jiha Borno ko inso . Koboii karni in 13. Tilastin ga kanem Bornu kami ji koboii yankoki ga nasara sa inko, majjito masarauta Borno, kafin Ishin sauwi gedau kala ita mulkan yanki har tadawo soninshe dalam badi (500). Har zuwa karni in 18 (soninshe 1800) lokaci jaha ye [[Filanti|Fulani]], mate raunanan masarauta Borno, har masarauta zalan sikita gadau. Bikkantun mafi godonsu yanki masarauta inko aji gonta yanki jiha [[Adamawa]] inko inso ga wolwoli Daular Halifancin [[Sokoto]], soninshe 80 koboii sheji, Ribah az-Zubayr, modi nem washi ga woli [[Sudan]] malliku Daula soninshe kala yina mulki ko dina karni in soninshe alif 1900 lokaci ga sojoji faransa' mate duwan Ishin ji yanki kousseri, Har inso Turawa mulki mallaka tantun masarauta Adamawa ga Washi, inko Daula Jamus ga in Burtaniya, mate Tina ga yaki. Shaffinsu yankuna woli Rabh ga kala masarauta Adamawa bissan su ko dalla su tubbayi muliki mallaka inko sashi masarauta Borno ko inso ko wasi wolwoli mulki Jamus ga Burtaniya.
==Ɗiwwa==
cq1l7bjpd2mxm3du1navgelqcl6keas
China
0
481
10476
8228
2026-08-24T22:17:53Z
Yakubu19
208
10476
wikitext
text/x-wiki
[[Panni:Olii pewe]]
{{Infobox country
| conventional_long_name = People’s Republic of China
| native_name = <i>中华人民共和国<br>Zhōnghuá Rénmín Gònghéguó</i>
| image_flag = Flag of China.svg
| image_coat = 中華人民共和國國徽.svg
| emblem_type = Emblem
| image_map = CHN orthographic.svg
| national_anthem = "义勇军进行曲 ([[Chinese language|Chinese]])"<br>Yìyǒngjūn jìnxíngqǔ<br>March of the Volunteers<br><br>[[Fayil:March of the Volunteers instrumental.ogg]]
| official_languages = [[Standard Chinese]]
| capital = [[Beijing]]
| largest_city = [[Chongqing]] (by municipal population)<br>[[Shanghai]] (by urban population)
| demonym = Chinese
| ethnic_groups = 91.11% Han Chinese<br>1.39% Zhuang<br>0.84% Uyghur<br>0.81% Hui<br>0.79% Miao<br>0.74% Manchu<br>0.70% Yi<br>0.68% Tujia<br>0.50% Tibetan<br>2.44% others
| government = Unitary communist state
| leader1 = Xi Jinping
| leader1_type = CCP General Secretary and President
| leader2 = Li Qiang
| leader2_type = Premier
}}
Sin do jamhuryar woli sin woji la ga nahiya [[Asiya]]. Sin Andi godon filaye mana kilomita kobalau. 9,596,961. Sin Andi godom miyya kimani biliyan modi ga miliyan dalma kunum ga sittin ga badi. 1,403,500,365, bisa ga Jimila soninshe in 2016. Ga siri birni sin Ishin [[Beijing]]. (3)(4) Sin itu iyaka mana she: Rasha, kazakyaslan, Kyrgyzstan, Tajikistan, magnolia, koriya ko aushi, laos, vielnam, Myanmar, [[Indiya|India]], bhulan, [[Nepal]], [[Afghanistan]], kala ga [[Pakistan]].
==Asalito==
Woli sin (Guangdong), mango( koga yanki xanlon) ga calaio (koga woli cambalu, ga xandu, ga gadar marmara) shaf an eweni ga matsayi yankuna daban-daban ga eme taswira 1570 in Abraham orlelius. Antun amfani ga kalma"china" kagasu Inglishi Yan karni ga 16: shaf ga she: sinawa ga kossu mate an amfani ga Ishin sa ga eme lokaci. Wantun asalini ko goggo Foligal, malay. Ga Farisa zuwa kalma sanskril. Cina la Antun amfani ga ita ga mashi India.(6)(7) China"(8)(9),(10) wantun amfani ga Barbosa Dagona Farisa chin(चीन), inko kala watu asali koga sankil cina(चीन). [11] asali kalma sanskril balu ji in muhawara BC)(12) koga 1655. Marlino matani onu shawara cewa Daula qin (221.206 kz)(13)(14)15)(16)(17)(18) kala hukuma In jiha zamani Ishin"jamhuryar miyya sin" sinawa saukake: 中华人民和和国; sinawa ga gargajiya 中華人民共和國; pinyin: Zhōnghuá rénmín gònghéguó). Dubba tsari Ishin"china" 中国; 中國; [19] jamji kala Zhongguo kala aji fassari inshin ga middle kindom' ga Turanci (20)s. (21)(22)(23)
== Ɗiwwa ==
[[Panni:Lelo'aji]]
cb9784x6m6niflhii5am0ky0k8mtli1
Dawun
0
497
10480
3973
2026-08-24T22:47:12Z
Yakubu19
208
10480
wikitext
text/x-wiki
'''Dawun''' ye a labo ga oli ba dona ga konni. Sun dawun ye kobo Nasarawi (Mate), kobo apino kala (Taburma)
== Dawun-eni ==
Dawun bama kala eni shafi modi gabo fikka.
Ishi eni ye ati njele, nosso shafi amfani ni. a ramoni ga fimo baka bottun fimo ka uzeyi Ishi gabo foti ba firuwo yane ka nettu ka zure ni,baka zurawoyi ka labbe ni.labbu jirjir Andi don: 3, ba 4 bakala 5, 6 yadda la de ka ndoluwoyi. Baka labbu tuwo ka dondeni gaji zani yane ka tulle ga konniye ba tullawoyi ka labbe kurgu, kurgu ye kala daban ga labbu dawun ihi kurgu a labboni don modi 1 fir baka labbu kurgu yane ka dondeni ga bo dawun ye, baka itu she bolo dawun eni fallawo kafa labo
Kawatu ati nosso ba Kala nyele.
== Ɗiwwa ==
26inl633czal1cyfn1em61ceo16b8xf
Donald Trump
0
505
10488
8504
2026-08-25T04:24:53Z
260825t1243
362
/* */
10488
wikitext
text/x-wiki
{{Databox|item=Q22686}}
'''Donald John Trump''' nasaran lardi [[Amurka]] an dara rankata ke an goma ke manshi shugaba ma lardi Amurka.ㅋㅋㅋㅋㅋㅋㅋㅋ
== Lardi ==
*Ke manshi[[Fayil:Donald Trump official portrait.jpg|thumb]]
* Shugaba ma Amurka
* Lardi Latin
== Hoto ==
<gallery>
File:Donald Trump official portrait (cropped).jpg
File:Bradley Byrne and Donald Trump - 2016.jpg
File:Kelly Loeffler and Donald Trump.jpg
File:Donald Trump official portrait (cropped 2).jpg
File:Donald Trump Signature.svg
File:Bill Clinton and Donald Trump at the U.S. Open in 2000, Flushing Meadows–Corona Park.jpg
File:Donald Trump Pentagon 2017.jpg
</gallery><gallery>
File:Bill Clinton and Donald Trump at the U.S. Open in 2000, Flushing Meadows–Corona Park.jpg|Bill Clinton tare da Donald Trump a shekaran 2000
File:Jayanthi Sirisena, Maithripala Sirisena, Donald Trump, and Melania Trump.jpg|Jayanthi Sirisena da Donald Trump
File:NASA astronaut Kate Rubins visits Donald and Ivanka Trump, April 2017.jpg|Kate Rubins ta ziyarci Donald Trump
File:Trump at King Khalid International Airport.jpg| Trump a filin jirgin kasan Sarki Khalid
</gallery>
==Ɗiwwa==
boks32i96iog98k2f8jn2g990dc1tay
10489
10488
2026-08-25T04:25:18Z
260825t1243
362
/* */
10489
wikitext
text/x-wiki
{{Databox|item=Q22686}}
'''Donald Johnna Trump''' (도널드 존나 트럼프) nasaran lardi [[Amurka]] an dara rankata ke an goma ke manshi shugaba ma lardi Amurka.
== Lardi ==
*Ke manshi[[Fayil:Donald Trump official portrait.jpg|thumb]]
* Shugaba ma Amurka
* Lardi Latin
== Hoto ==
<gallery>
File:Donald Trump official portrait (cropped).jpg
File:Bradley Byrne and Donald Trump - 2016.jpg
File:Kelly Loeffler and Donald Trump.jpg
File:Donald Trump official portrait (cropped 2).jpg
File:Donald Trump Signature.svg
File:Bill Clinton and Donald Trump at the U.S. Open in 2000, Flushing Meadows–Corona Park.jpg
File:Donald Trump Pentagon 2017.jpg
</gallery><gallery>
File:Bill Clinton and Donald Trump at the U.S. Open in 2000, Flushing Meadows–Corona Park.jpg|Bill Clinton tare da Donald Trump a shekaran 2000
File:Jayanthi Sirisena, Maithripala Sirisena, Donald Trump, and Melania Trump.jpg|Jayanthi Sirisena da Donald Trump
File:NASA astronaut Kate Rubins visits Donald and Ivanka Trump, April 2017.jpg|Kate Rubins ta ziyarci Donald Trump
File:Trump at King Khalid International Airport.jpg| Trump a filin jirgin kasan Sarki Khalid
</gallery>
==Ɗiwwa==
dffwu5x7ms5rfd5f789mqfjl9oh8egk
10490
10489
2026-08-25T04:38:40Z
Jianhui67
363
Reverted edits by [[Special:Contributions/260825t1243|260825t1243]] ([[User talk:260825t1243|talk]]) to last revision by [[User:WikiBayer|WikiBayer]]
8504
wikitext
text/x-wiki
{{Databox|item=Q22686}}
'''Donald John Trump''' nasaran lardi [[Amurka]] an dara rankata ke an goma ke manshi shugaba ma lardi Amurka.
== Lardi ==
*Ke manshi[[Fayil:Donald Trump official portrait.jpg|thumb]]
* Shugaba ma Amurka
* Lardi Latin
== Hoto ==
<gallery>
File:Donald Trump official portrait (cropped).jpg
File:Bradley Byrne and Donald Trump - 2016.jpg
File:Kelly Loeffler and Donald Trump.jpg
File:Donald Trump official portrait (cropped 2).jpg
File:Donald Trump Signature.svg
File:Bill Clinton and Donald Trump at the U.S. Open in 2000, Flushing Meadows–Corona Park.jpg
File:Donald Trump Pentagon 2017.jpg
</gallery><gallery>
File:Bill Clinton and Donald Trump at the U.S. Open in 2000, Flushing Meadows–Corona Park.jpg|Bill Clinton tare da Donald Trump a shekaran 2000
File:Jayanthi Sirisena, Maithripala Sirisena, Donald Trump, and Melania Trump.jpg|Jayanthi Sirisena da Donald Trump
File:NASA astronaut Kate Rubins visits Donald and Ivanka Trump, April 2017.jpg|Kate Rubins ta ziyarci Donald Trump
File:Trump at King Khalid International Airport.jpg| Trump a filin jirgin kasan Sarki Khalid
</gallery>
==Ɗiwwa==
9emjl0cc5iuq8csgqd3jyiea1oq7e5i
10491
10490
2026-08-25T04:46:45Z
260825t1243
362
Undid revision [[Special:Diff/10490|10490]] by [[Special:Contributions/Jianhui67|Jianhui67]] ([[User talk:Jianhui67|talk]])
10491
wikitext
text/x-wiki
{{Databox|item=Q22686}}
'''Donald Johnna Trump''' (도널드 존나 트럼프) nasaran lardi [[Amurka]] an dara rankata ke an goma ke manshi shugaba ma lardi Amurka.
== Lardi ==
*Ke manshi[[Fayil:Donald Trump official portrait.jpg|thumb]]
* Shugaba ma Amurka
* Lardi Latin
== Hoto ==
<gallery>
File:Donald Trump official portrait (cropped).jpg
File:Bradley Byrne and Donald Trump - 2016.jpg
File:Kelly Loeffler and Donald Trump.jpg
File:Donald Trump official portrait (cropped 2).jpg
File:Donald Trump Signature.svg
File:Bill Clinton and Donald Trump at the U.S. Open in 2000, Flushing Meadows–Corona Park.jpg
File:Donald Trump Pentagon 2017.jpg
</gallery><gallery>
File:Bill Clinton and Donald Trump at the U.S. Open in 2000, Flushing Meadows–Corona Park.jpg|Bill Clinton tare da Donald Trump a shekaran 2000
File:Jayanthi Sirisena, Maithripala Sirisena, Donald Trump, and Melania Trump.jpg|Jayanthi Sirisena da Donald Trump
File:NASA astronaut Kate Rubins visits Donald and Ivanka Trump, April 2017.jpg|Kate Rubins ta ziyarci Donald Trump
File:Trump at King Khalid International Airport.jpg| Trump a filin jirgin kasan Sarki Khalid
</gallery>
==Ɗiwwa==
dffwu5x7ms5rfd5f789mqfjl9oh8egk
10492
10491
2026-08-25T05:02:05Z
Tanbiruzzaman
91
Reverted edit by [[Special:Contributions/260825t1243|260825t1243]] ([[User talk:260825t1243|talk]]) to last revision by [[User:Jianhui67|Jianhui67]]
8504
wikitext
text/x-wiki
{{Databox|item=Q22686}}
'''Donald John Trump''' nasaran lardi [[Amurka]] an dara rankata ke an goma ke manshi shugaba ma lardi Amurka.
== Lardi ==
*Ke manshi[[Fayil:Donald Trump official portrait.jpg|thumb]]
* Shugaba ma Amurka
* Lardi Latin
== Hoto ==
<gallery>
File:Donald Trump official portrait (cropped).jpg
File:Bradley Byrne and Donald Trump - 2016.jpg
File:Kelly Loeffler and Donald Trump.jpg
File:Donald Trump official portrait (cropped 2).jpg
File:Donald Trump Signature.svg
File:Bill Clinton and Donald Trump at the U.S. Open in 2000, Flushing Meadows–Corona Park.jpg
File:Donald Trump Pentagon 2017.jpg
</gallery><gallery>
File:Bill Clinton and Donald Trump at the U.S. Open in 2000, Flushing Meadows–Corona Park.jpg|Bill Clinton tare da Donald Trump a shekaran 2000
File:Jayanthi Sirisena, Maithripala Sirisena, Donald Trump, and Melania Trump.jpg|Jayanthi Sirisena da Donald Trump
File:NASA astronaut Kate Rubins visits Donald and Ivanka Trump, April 2017.jpg|Kate Rubins ta ziyarci Donald Trump
File:Trump at King Khalid International Airport.jpg| Trump a filin jirgin kasan Sarki Khalid
</gallery>
==Ɗiwwa==
9emjl0cc5iuq8csgqd3jyiea1oq7e5i
Rutta mossa:El-hussain14
3
895
10481
8130
2026-08-24T23:11:33Z
RAPTOR7762
18
/* Bole Wikipedia help and Updates */ new section
10481
wikitext
text/x-wiki
== Welcome! ==
Congratulations on the creation of Bole Wikipedia! However, this Wikipedia needs your help to get started;
* Please check that '''all pages are imported''' from Wikimedia incubator; I recommend that the community begin editing after all of this has been verified.
* Please check that '''there are no other problems with the wiki settings'''. Of course, statistics will not work properly now. Or, some features of the visual editor may not work. This usually resolves automatically within 2 weeks.
Thank you for your efforts, and congratulations once again. I look forward to your cooperation :D --[[Ruta:Sotiale|Sotiale]] ([[Rutta mossa:Sotiale|mossa]]) 13:31, 1 Agusta 2026 (WAT)
:Thank you so much sir for the good job. [[Ruta:El-hussain14|El-hussain14]] ([[Rutta mossa:El-hussain14|mossa]]) 14:13, 1 Agusta 2026 (WAT)
:Thank you so much sir, I have confirmed that all pages are imported. [[Ruta:El-hussain14|El-hussain14]] ([[Rutta mossa:El-hussain14|mossa]]) 00:58, 5 Agusta 2026 (WAT)
:: Thank you. I hope you have a pleasant editing on this wiki :) --[[Ruta:Sotiale|Sotiale]] ([[Rutta mossa:Sotiale|mossa]]) 11:54, 8 Agusta 2026 (WAT)
== Bole Wikipedia help and Updates ==
Dear Elhussaini4, I would like to enquire about an urgent translation of the following message:
<nowiki>
This is a file from the Wikimedia Commons. Information from its description page thereis shown below.
Commons is a freely licensed media file repository. You can help.
Your account has been created.
You can change your {{SITENAME}} [[Special:Preferences|preferences]] if you wish.
Choose one of the village pumps below to start or join a discussion.
Get help in familiarising yourself with the Bole language or you need help with grammer, vocabulary and more.
Discuss or request for improvements or changes to the Main Page.
Discuss or request for improvements or changes to the Village pump
Discuss existing and proposed policies
Discuss technical issues about Wikipedia
Discuss new proposals that are not policy-related
Test new ideas before implementing them
For discussions relating to requesting/revoking permissions, e.g., adminship, importer.
</nowiki>
For all discussions that do not fit onto any other dedicated noticeboards
As these are a crucial system messages and front-page texts, I might need it to be translated as soon as possible.
Secondly, the Bole Wikipedia is receiving not very high viewership from natives. Could you maybe help spread the wikipedia awareness and get more peiple to also contribute? (It has stagnated at ~473 articles).
Thirdly, I have done a massive overhaul of the system messages, including stuling, cleaning up some spare pages left behind during the incubator stage. I have also overhauled the Bole Wikimedians User Group site, hope you like it!
Lastly, as the wikipedia grows, there are still little online resources regarding the vocabulary, (i looked at the Bole-English-Hausa dictionary, it was not cery useful). However, on the bright side, i found out there's this sister project of the Wikimedia Foundation, called Wiktionary (https://www.wiktionary.org). It can be localised into the Bole language, though we need to go trhough the second round of requesting, just like the wikipedia, where you go to incubator, contribute and all that.
I hope you can take some time to review and look through. Sorry for the inconvenience caused, and thank you! [[Ruta:RAPTOR7762|RAPTOR7762]] ([[Rutta mossa:RAPTOR7762|mossa]]) 00:11, 25 Agusta 2026 (WAT)
h6ose4zaw1x3p50cvamjgjomrgsgp9w
10482
10481
2026-08-24T23:12:45Z
RAPTOR7762
18
/* Bole Wikipedia help and Updates */
10482
wikitext
text/x-wiki
== Welcome! ==
Congratulations on the creation of Bole Wikipedia! However, this Wikipedia needs your help to get started;
* Please check that '''all pages are imported''' from Wikimedia incubator; I recommend that the community begin editing after all of this has been verified.
* Please check that '''there are no other problems with the wiki settings'''. Of course, statistics will not work properly now. Or, some features of the visual editor may not work. This usually resolves automatically within 2 weeks.
Thank you for your efforts, and congratulations once again. I look forward to your cooperation :D --[[Ruta:Sotiale|Sotiale]] ([[Rutta mossa:Sotiale|mossa]]) 13:31, 1 Agusta 2026 (WAT)
:Thank you so much sir for the good job. [[Ruta:El-hussain14|El-hussain14]] ([[Rutta mossa:El-hussain14|mossa]]) 14:13, 1 Agusta 2026 (WAT)
:Thank you so much sir, I have confirmed that all pages are imported. [[Ruta:El-hussain14|El-hussain14]] ([[Rutta mossa:El-hussain14|mossa]]) 00:58, 5 Agusta 2026 (WAT)
:: Thank you. I hope you have a pleasant editing on this wiki :) --[[Ruta:Sotiale|Sotiale]] ([[Rutta mossa:Sotiale|mossa]]) 11:54, 8 Agusta 2026 (WAT)
== Bole Wikipedia help and Updates ==
Dear Elhussaini4, I would like to enquire about an urgent translation of the following message:
This is a file from the Wikimedia Commons. Information from its description page thereis shown below.
Commons is a freely licensed media file repository. You can help.
<br>
<br>
<nowiki>
Your account has been created.
You can change your {{SITENAME}} [[Special:Preferences|preferences]] if you wish.</nowiki>
<br>
<br>
Choose one of the village pumps below to start or join a discussion.
Get help in familiarising yourself with the Bole language or you need help with grammer, vocabulary and more.
Discuss or request for improvements or changes to the Main Page.
Discuss or request for improvements or changes to the Village pump
Discuss existing and proposed policies
Discuss technical issues about Wikipedia
Discuss new proposals that are not policy-related
Test new ideas before implementing them
For discussions relating to requesting/revoking permissions, e.g., adminship, importer.
For all discussions that do not fit onto any other dedicated noticeboards
As these are a crucial system messages and front-page texts, I might need it to be translated as soon as possible.
Secondly, the Bole Wikipedia is receiving not very high viewership from natives. Could you maybe help spread the wikipedia awareness and get more peiple to also contribute? (It has stagnated at ~473 articles).
Thirdly, I have done a massive overhaul of the system messages, including stuling, cleaning up some spare pages left behind during the incubator stage. I have also overhauled the Bole Wikimedians User Group site, hope you like it!
Lastly, as the wikipedia grows, there are still little online resources regarding the vocabulary, (i looked at the Bole-English-Hausa dictionary, it was not cery useful). However, on the bright side, i found out there's this sister project of the Wikimedia Foundation, called Wiktionary (https://www.wiktionary.org). It can be localised into the Bole language, though we need to go trhough the second round of requesting, just like the wikipedia, where you go to incubator, contribute and all that.
I hope you can take some time to review and look through. Sorry for the inconvenience caused, and thank you! [[Ruta:RAPTOR7762|RAPTOR7762]] ([[Rutta mossa:RAPTOR7762|mossa]]) 00:11, 25 Agusta 2026 (WAT)
lbyld3am4l4cvx2v9jq095ihkc1i3yi
10483
10482
2026-08-24T23:13:23Z
RAPTOR7762
18
/* Bole Wikipedia help and Updates */
10483
wikitext
text/x-wiki
== Welcome! ==
Congratulations on the creation of Bole Wikipedia! However, this Wikipedia needs your help to get started;
* Please check that '''all pages are imported''' from Wikimedia incubator; I recommend that the community begin editing after all of this has been verified.
* Please check that '''there are no other problems with the wiki settings'''. Of course, statistics will not work properly now. Or, some features of the visual editor may not work. This usually resolves automatically within 2 weeks.
Thank you for your efforts, and congratulations once again. I look forward to your cooperation :D --[[Ruta:Sotiale|Sotiale]] ([[Rutta mossa:Sotiale|mossa]]) 13:31, 1 Agusta 2026 (WAT)
:Thank you so much sir for the good job. [[Ruta:El-hussain14|El-hussain14]] ([[Rutta mossa:El-hussain14|mossa]]) 14:13, 1 Agusta 2026 (WAT)
:Thank you so much sir, I have confirmed that all pages are imported. [[Ruta:El-hussain14|El-hussain14]] ([[Rutta mossa:El-hussain14|mossa]]) 00:58, 5 Agusta 2026 (WAT)
:: Thank you. I hope you have a pleasant editing on this wiki :) --[[Ruta:Sotiale|Sotiale]] ([[Rutta mossa:Sotiale|mossa]]) 11:54, 8 Agusta 2026 (WAT)
== Bole Wikipedia help and Updates ==
Dear [[Ruta:Elhussain4|Elhussain4, I would like to enquire about an urgent translation of the following message:
This is a file from the Wikimedia Commons. Information from its description page thereis shown below.
Commons is a freely licensed media file repository. You can help.
<br>
<br>
<nowiki>
Your account has been created.
You can change your {{SITENAME}} [[Special:Preferences|preferences]] if you wish.</nowiki>
<br>
<br>
Choose one of the village pumps below to start or join a discussion.
Get help in familiarising yourself with the Bole language or you need help with grammer, vocabulary and more.
Discuss or request for improvements or changes to the Main Page.
Discuss or request for improvements or changes to the Village pump
Discuss existing and proposed policies
Discuss technical issues about Wikipedia
Discuss new proposals that are not policy-related
Test new ideas before implementing them
For discussions relating to requesting/revoking permissions, e.g., adminship, importer.
For all discussions that do not fit onto any other dedicated noticeboards
As these are a crucial system messages and front-page texts, I might need it to be translated as soon as possible.
Secondly, the Bole Wikipedia is receiving not very high viewership from natives. Could you maybe help spread the wikipedia awareness and get more peiple to also contribute? (It has stagnated at ~473 articles).
Thirdly, I have done a massive overhaul of the system messages, including stuling, cleaning up some spare pages left behind during the incubator stage. I have also overhauled the Bole Wikimedians User Group site, hope you like it!
Lastly, as the wikipedia grows, there are still little online resources regarding the vocabulary, (i looked at the Bole-English-Hausa dictionary, it was not cery useful). However, on the bright side, i found out there's this sister project of the Wikimedia Foundation, called Wiktionary (https://www.wiktionary.org). It can be localised into the Bole language, though we need to go trhough the second round of requesting, just like the wikipedia, where you go to incubator, contribute and all that.
I hope you can take some time to review and look through. Sorry for the inconvenience caused, and thank you! [[Ruta:RAPTOR7762|RAPTOR7762]] ([[Rutta mossa:RAPTOR7762|mossa]]) 00:11, 25 Agusta 2026 (WAT)
qkmw1yl5tnh2w94kxfks361vnzz8cv5
10484
10483
2026-08-24T23:14:02Z
RAPTOR7762
18
/* Bole Wikipedia help and Updates */
10484
wikitext
text/x-wiki
== Welcome! ==
Congratulations on the creation of Bole Wikipedia! However, this Wikipedia needs your help to get started;
* Please check that '''all pages are imported''' from Wikimedia incubator; I recommend that the community begin editing after all of this has been verified.
* Please check that '''there are no other problems with the wiki settings'''. Of course, statistics will not work properly now. Or, some features of the visual editor may not work. This usually resolves automatically within 2 weeks.
Thank you for your efforts, and congratulations once again. I look forward to your cooperation :D --[[Ruta:Sotiale|Sotiale]] ([[Rutta mossa:Sotiale|mossa]]) 13:31, 1 Agusta 2026 (WAT)
:Thank you so much sir for the good job. [[Ruta:El-hussain14|El-hussain14]] ([[Rutta mossa:El-hussain14|mossa]]) 14:13, 1 Agusta 2026 (WAT)
:Thank you so much sir, I have confirmed that all pages are imported. [[Ruta:El-hussain14|El-hussain14]] ([[Rutta mossa:El-hussain14|mossa]]) 00:58, 5 Agusta 2026 (WAT)
:: Thank you. I hope you have a pleasant editing on this wiki :) --[[Ruta:Sotiale|Sotiale]] ([[Rutta mossa:Sotiale|mossa]]) 11:54, 8 Agusta 2026 (WAT)
== Bole Wikipedia help and Updates ==
Dear [[Ruta:El-hussain14|El-hussain14]], I would like to enquire about an urgent translation of the following message:
This is a file from the Wikimedia Commons. Information from its description page thereis shown below.
Commons is a freely licensed media file repository. You can help.
<br>
<br>
<nowiki>
Your account has been created.
You can change your {{SITENAME}} [[Special:Preferences|preferences]] if you wish.</nowiki>
<br>
<br>
Choose one of the village pumps below to start or join a discussion.
Get help in familiarising yourself with the Bole language or you need help with grammer, vocabulary and more.
Discuss or request for improvements or changes to the Main Page.
Discuss or request for improvements or changes to the Village pump
Discuss existing and proposed policies
Discuss technical issues about Wikipedia
Discuss new proposals that are not policy-related
Test new ideas before implementing them
For discussions relating to requesting/revoking permissions, e.g., adminship, importer.
For all discussions that do not fit onto any other dedicated noticeboards
As these are a crucial system messages and front-page texts, I might need it to be translated as soon as possible.
Secondly, the Bole Wikipedia is receiving not very high viewership from natives. Could you maybe help spread the wikipedia awareness and get more peiple to also contribute? (It has stagnated at ~473 articles).
Thirdly, I have done a massive overhaul of the system messages, including stuling, cleaning up some spare pages left behind during the incubator stage. I have also overhauled the Bole Wikimedians User Group site, hope you like it!
Lastly, as the wikipedia grows, there are still little online resources regarding the vocabulary, (i looked at the Bole-English-Hausa dictionary, it was not cery useful). However, on the bright side, i found out there's this sister project of the Wikimedia Foundation, called Wiktionary (https://www.wiktionary.org). It can be localised into the Bole language, though we need to go trhough the second round of requesting, just like the wikipedia, where you go to incubator, contribute and all that.
I hope you can take some time to review and look through. Sorry for the inconvenience caused, and thank you! [[Ruta:RAPTOR7762|RAPTOR7762]] ([[Rutta mossa:RAPTOR7762|mossa]]) 00:11, 25 Agusta 2026 (WAT)
dsu2ppdp4rl9dkcicfv5otqhpqybmjg
Module:Navbox/styles.css
828
1010
10387
2021-11-13T21:29:29Z
meta>Izno
0
Created page with "/* Default style for navigation boxes */ .navbox { /* Navbox container style */ border: 1px solid #a2a9b1; width: 100%; margin: auto; clear: both; font-size: 88%; text-align: center; padding: 1px; } .navbox-inner, .navbox-subgroup { width: 100%; } .navbox-group, .navbox-title, .navbox-abovebelow { padding: 0.25em 1em; /* Title, group and above/below styles */ line-height: 1.5em; text-align: center; }..."
10387
sanitized-css
text/css
/* Default style for navigation boxes */
.navbox { /* Navbox container style */
border: 1px solid #a2a9b1;
width: 100%;
margin: auto;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox-group,
.navbox-title,
.navbox-abovebelow {
padding: 0.25em 1em; /* Title, group and above/below styles */
line-height: 1.5em;
text-align: center;
}
th.navbox-group { /* Group style */
white-space: nowrap;
/* @noflip */
text-align: right;
}
.navbox,
.navbox-subgroup {
background: #fdfdfd; /* Background color */
}
.navbox-list {
line-height: 1.8em;
border-color: #fdfdfd; /* Must match background color */
}
.navbox th,
.navbox-title {
background: #ccccff; /* Level 1 color */
}
.navbox-abovebelow,
th.navbox-group,
.navbox-subgroup .navbox-title {
background: #ddddff; /* Level 2 color */
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
background: #e6e6ff; /* Level 3 color */
}
.navbox-even {
background: #f7f7f7; /* Even row striping */
}
.navbox-odd {
background: transparent; /* Odd row striping */
}
.navbox + .navbox { /* Single pixel border between adjacent navboxes */
margin-top: -1px; /* (doesn't work for IE6, but that's okay) */
}
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
padding: 0.125em 0; /* Adjust hlist padding in navboxes */
}
ol + .navbox,
ul + .navbox {
margin-top: 0.5em; /* Prevent lists from clinging to navboxes */
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
width: 6em;
}
erw6j00iwao2eim42422d6a09xvbg68
10388
10387
2022-08-18T12:59:40Z
meta>Pols12
0
Consistency with [[mw:Module:Navbox/styles.css]]
10388
sanitized-css
text/css
.navbox {
border: 1px solid #aaa;
box-sizing: border-box;
width: 100%;
margin: auto;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox + .navbox-styles + .navbox {
/* Single pixel border between adjacent navboxes */
margin-top: -1px;
}
.navbox th,
.navbox-title,
.navbox-abovebelow {
/* Title and above/below styles */
text-align: center;
padding-left: 1em;
padding-right: 1em;
}
th.navbox-group {
/* Group style */
white-space: nowrap;
/* @noflip */
text-align: right;
}
.navbox,
.navbox-subgroup {
background: #fdfdfd;
}
.navbox-list {
/* Must match background color */
border-color: #fdfdfd;
}
.navbox th,
.navbox-title {
/* Level 1 color */
background: #eaeeff;
}
.navbox-abovebelow,
th.navbox-group,
.navbox-subgroup .navbox-title {
/* Level 2 color */
background: #ddddff;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
/* Level 3 color */
background: #e6e6ff;
}
.navbox-even {
/* Even row striping */
background: #f7f7f7;
}
.navbox-odd {
/* Odd row striping */
background: transparent;
}
th.navbox-title1 {
border-left: 2px solid #fdfdfd;
width: 100%;
}
td.navbox-list1 {
text-align: left;
border-left-width: 2px;
border-left-style: solid;
}
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
/* Adjust hlist padding in navboxes */
padding: 0.125em 0;
}
.navbox .hlist dd,
.navbox .hlist dt,
.navbox .hlist li {
/* Nowrap list items in navboxes */
white-space: nowrap;
}
.navbox .hlist dd dl,
.navbox .hlist dt dl,
.navbox .hlist li ol,
.navbox .hlist li ul {
/* But allow parent list items to be wrapped */
white-space: normal;
}
ol + .navbox-styles + .navbox,
ul + .navbox-styles + .navbox {
/* Prevent lists from clinging to navboxes */
margin-top: 0.5em;
}
/* @FIXME: Should be handled in navbar styles */
.navbox .navbar {
display: block;
font-size: 100%;
}
/* @FIXME: Should be handled in navbar styles */
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
width: 6em;
}
3zkr04ufhswj7m65vktcccw1d0b2b7t
10389
10388
2022-08-18T14:27:27Z
meta>Pols12
0
Consistency with [[:en:Module:Navbox/styles.css]]
10389
sanitized-css
text/css
.navbox {
box-sizing: border-box;
border: 1px solid #a2a9b1;
width: 100%;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
margin: 1em auto 0; /* Prevent preceding content from clinging to navboxes */
}
.navbox .navbox {
margin-top: 0; /* No top margin for nested navboxes */
}
.navbox + .navbox-styles + .navbox {
margin-top: -1px; /* Single pixel border between adjacent navboxes */
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox-group,
.navbox-title,
.navbox-abovebelow {
padding: 0.25em 1em;
line-height: 1.5em;
text-align: center;
}
.navbox-group {
white-space: nowrap;
/* @noflip */
text-align: right;
}
.navbox,
.navbox-subgroup {
background-color: #fdfdfd;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
}
.navbox-list-with-group {
text-align: left;
border-left-width: 2px;
border-left-style: solid;
}
/* cell spacing for navbox cells */
/* Borders above 2nd, 3rd, etc. rows */
/* TODO: figure out how to replace tr as structure;
* with div structure it should be just a matter of first-child */
tr + tr > .navbox-abovebelow,
tr + tr > .navbox-group,
tr + tr > .navbox-image,
tr + tr > .navbox-list {
border-top: 2px solid #fdfdfd; /* Must match background color */
}
.navbox-title {
/* Level 1 color */
background-color: #ccf;
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
/* Level 2 color */
background-color: #ddf;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
/* Level 3 color */
background-color: #e6e6ff;
}
.navbox-even {
background-color: #f7f7f7;
}
.navbox-odd {
background-color: transparent;
}
/* TODO: figure out how to remove reliance on td as structure */
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
padding: 0.125em 0;
}
/* @FIXME: Should be handled in navbar styles */
.navbox .navbar {
display: block;
font-size: 100%;
}
/* @FIXME: Should be handled in navbar styles */
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
width: 6em;
}
ou577sil29nnphvw5hr6r21rx1enu96
10390
10389
2022-08-18T22:09:25Z
meta>Pols12
0
−FIXME, navbar inside navbox styles are well expected here
10390
sanitized-css
text/css
.navbox {
box-sizing: border-box;
border: 1px solid #a2a9b1;
width: 100%;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
margin: 1em auto 0; /* Prevent preceding content from clinging to navboxes */
}
.navbox .navbox {
margin-top: 0; /* No top margin for nested navboxes */
}
.navbox + .navbox-styles + .navbox {
margin-top: -1px; /* Single pixel border between adjacent navboxes */
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox-group,
.navbox-title,
.navbox-abovebelow {
padding: 0.25em 1em;
line-height: 1.5em;
text-align: center;
}
.navbox-group {
white-space: nowrap;
/* @noflip */
text-align: right;
}
.navbox,
.navbox-subgroup {
background-color: #fdfdfd;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
}
.navbox-list-with-group {
text-align: left;
border-left-width: 2px;
border-left-style: solid;
}
/* cell spacing for navbox cells */
/* Borders above 2nd, 3rd, etc. rows */
/* TODO: figure out how to replace tr as structure;
* with div structure it should be just a matter of first-child */
tr + tr > .navbox-abovebelow,
tr + tr > .navbox-group,
tr + tr > .navbox-image,
tr + tr > .navbox-list {
border-top: 2px solid #fdfdfd; /* Must match background color */
}
.navbox-title {
/* Level 1 color */
background-color: #ccf;
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
/* Level 2 color */
background-color: #ddf;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
/* Level 3 color */
background-color: #e6e6ff;
}
.navbox-even {
background-color: #f7f7f7;
}
.navbox-odd {
background-color: transparent;
}
/* TODO: figure out how to remove reliance on td as structure */
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
padding: 0.125em 0;
}
/*** Navbar styles ****/
/* Styles for all navbars, including outside of navboxes, should
* go to Module:Navbar/styles.css
*/
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
width: 6em;
}
dyb1inv1a70c6z70kqj2ui7mrb71com
10391
10390
2022-08-19T23:27:19Z
meta>Pols12
0
−noflips (legacy from :en:Common.css); −navbar width (useless)
10391
sanitized-css
text/css
.navbox {
box-sizing: border-box;
border: 1px solid #a2a9b1;
width: 100%;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
margin: 1em auto 0; /* Prevent preceding content from clinging to navboxes */
}
.navbox .navbox {
margin-top: 0; /* No top margin for nested navboxes */
}
.navbox + .navbox-styles + .navbox {
margin-top: -1px; /* Single pixel border between adjacent navboxes */
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox-group,
.navbox-title,
.navbox-abovebelow {
padding: 0.25em 1em;
line-height: 1.5em;
text-align: center;
}
.navbox-group {
white-space: nowrap;
text-align: right;
}
.navbox,
.navbox-subgroup {
background-color: #fdfdfd;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
}
.navbox-list-with-group {
text-align: left;
border-left-width: 2px;
border-left-style: solid;
}
/* cell spacing for navbox cells */
/* Borders above 2nd, 3rd, etc. rows */
/* TODO: figure out how to replace tr as structure;
* with div structure it should be just a matter of first-child */
tr + tr > .navbox-abovebelow,
tr + tr > .navbox-group,
tr + tr > .navbox-image,
tr + tr > .navbox-list {
border-top: 2px solid #fdfdfd; /* Must match background color */
}
.navbox-title {
/* Level 1 color */
background-color: #ccf;
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
/* Level 2 color */
background-color: #ddf;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
/* Level 3 color */
background-color: #e6e6ff;
}
.navbox-even {
background-color: #f7f7f7;
}
.navbox-odd {
background-color: transparent;
}
/* TODO: figure out how to remove reliance on td as structure */
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
padding: 0.125em 0;
}
/*** Navbar styles ****/
/* Styles for all navbars, including outside of navboxes, should
* go to Module:Navbar/styles.css
*/
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
float: left;
text-align: left;
margin-right: 0.5em;
}
jitbh4uyg107u57t8gm8duiph1hesml
10392
10391
2023-03-09T08:02:19Z
meta>Izno
0
no, that's fine here; these styles only applicable in the context of module:navbox
10392
sanitized-css
text/css
.navbox {
box-sizing: border-box;
border: 1px solid #a2a9b1;
width: 100%;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
margin: 1em auto 0; /* Prevent preceding content from clinging to navboxes */
}
.navbox .navbox {
margin-top: 0; /* No top margin for nested navboxes */
}
.navbox + .navbox-styles + .navbox {
margin-top: -1px; /* Single pixel border between adjacent navboxes */
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox-group,
.navbox-title,
.navbox-abovebelow {
padding: 0.25em 1em;
line-height: 1.5em;
text-align: center;
}
.navbox-group {
white-space: nowrap;
text-align: right;
}
.navbox,
.navbox-subgroup {
background-color: #fdfdfd;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
}
.navbox-list-with-group {
text-align: left;
border-left-width: 2px;
border-left-style: solid;
}
/* cell spacing for navbox cells */
/* Borders above 2nd, 3rd, etc. rows */
/* TODO: figure out how to replace tr as structure;
* with div structure it should be just a matter of first-child */
tr + tr > .navbox-abovebelow,
tr + tr > .navbox-group,
tr + tr > .navbox-image,
tr + tr > .navbox-list {
border-top: 2px solid #fdfdfd; /* Must match background color */
}
.navbox-title {
/* Level 1 color */
background-color: #ccf;
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
/* Level 2 color */
background-color: #ddf;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
/* Level 3 color */
background-color: #e6e6ff;
}
.navbox-even {
background-color: #f7f7f7;
}
.navbox-odd {
background-color: transparent;
}
/* TODO: figure out how to remove reliance on td as structure */
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
padding: 0.125em 0;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
float: left;
text-align: left;
margin-right: 0.5em;
}
ld6tqz3c8swwnagxxwnk8hm7iwkmo06
10393
10392
2023-03-12T18:01:18Z
meta>MusikBot II
0
Protected "[[Module:Navbox/styles.css]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
10392
sanitized-css
text/css
.navbox {
box-sizing: border-box;
border: 1px solid #a2a9b1;
width: 100%;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
margin: 1em auto 0; /* Prevent preceding content from clinging to navboxes */
}
.navbox .navbox {
margin-top: 0; /* No top margin for nested navboxes */
}
.navbox + .navbox-styles + .navbox {
margin-top: -1px; /* Single pixel border between adjacent navboxes */
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox-group,
.navbox-title,
.navbox-abovebelow {
padding: 0.25em 1em;
line-height: 1.5em;
text-align: center;
}
.navbox-group {
white-space: nowrap;
text-align: right;
}
.navbox,
.navbox-subgroup {
background-color: #fdfdfd;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
}
.navbox-list-with-group {
text-align: left;
border-left-width: 2px;
border-left-style: solid;
}
/* cell spacing for navbox cells */
/* Borders above 2nd, 3rd, etc. rows */
/* TODO: figure out how to replace tr as structure;
* with div structure it should be just a matter of first-child */
tr + tr > .navbox-abovebelow,
tr + tr > .navbox-group,
tr + tr > .navbox-image,
tr + tr > .navbox-list {
border-top: 2px solid #fdfdfd; /* Must match background color */
}
.navbox-title {
/* Level 1 color */
background-color: #ccf;
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
/* Level 2 color */
background-color: #ddf;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
/* Level 3 color */
background-color: #e6e6ff;
}
.navbox-even {
background-color: #f7f7f7;
}
.navbox-odd {
background-color: transparent;
}
/* TODO: figure out how to remove reliance on td as structure */
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
padding: 0.125em 0;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
float: left;
text-align: left;
margin-right: 0.5em;
}
ld6tqz3c8swwnagxxwnk8hm7iwkmo06
10394
8937
2026-08-24T13:01:01Z
RAPTOR7762
18
7 revisions imported from [[:meta:Module:Navbox/styles.css]]
8936
sanitized-css
text/css
/* {{pp|small=y}} */
.navbox {
box-sizing: border-box;
border: 1px solid #a2a9b1;
width: 100%;
clear: both;
font-size: 88%;
text-align: center;
padding: 1px;
margin: 1em auto 0; /* Prevent preceding content from clinging to navboxes */
}
.navbox .navbox {
margin-top: 0; /* No top margin for nested navboxes */
}
.navbox + .navbox-styles + .navbox,
/* category positions are wrapped in an "empty" span in Parsoid [[phab:T378906]] */
.navbox + span.mw-empty-elt + .navbox-styles + .navbox {
margin-top: -1px; /* Single pixel border between adjacent navboxes */
}
.navbox-inner,
.navbox-subgroup {
width: 100%;
}
.navbox-group,
.navbox-title,
.navbox-abovebelow {
padding: 0.25em 1em;
line-height: 1.5em;
text-align: center;
}
.navbox-group {
white-space: nowrap;
/* @noflip */
text-align: right;
}
.navbox,
.navbox-subgroup {
background-color: #fdfdfd;
color:inherit;
}
.navbox-list {
line-height: 1.5em;
border-color: #fdfdfd; /* Must match background color */
}
.navbox-list-with-group {
text-align: left;
border-left-width: 2px;
border-left-style: solid;
}
/* cell spacing for navbox cells */
/* Borders above 2nd, 3rd, etc. rows */
/* TODO: figure out how to replace tr as structure;
* with div structure it should be just a matter of first-child */
tr + tr > .navbox-abovebelow,
tr + tr > .navbox-group,
tr + tr > .navbox-image,
tr + tr > .navbox-list {
border-top: 2px solid #fdfdfd; /* Must match background color */
}
.navbox-title {
background-color: #ccf; /* Level 1 color */
color:inherit;
}
.navbox-abovebelow,
.navbox-group,
.navbox-subgroup .navbox-title {
background-color: #ddf; /* Level 2 color */
color:inherit;
}
.navbox-subgroup .navbox-group,
.navbox-subgroup .navbox-abovebelow {
background-color: #e6e6ff; /* Level 3 color */
color:inherit;
}
.navbox-even {
background-color: #f7f7f7;
color:inherit;
}
.navbox-odd {
background-color: transparent;
color:inherit;
}
/* TODO: figure out how to remove reliance on td as structure */
.navbox .hlist td dl,
.navbox .hlist td ol,
.navbox .hlist td ul,
.navbox td.hlist dl,
.navbox td.hlist ol,
.navbox td.hlist ul {
padding: 0.125em 0;
}
.navbox .navbar {
display: block;
font-size: 100%;
}
.navbox-title .navbar {
/* @noflip */
float: left;
/* @noflip */
text-align: left;
/* @noflip */
margin-right: 0.5em;
}
/** T367463 */
body.skin--responsive .navbox-image img {
max-width: none !important;
}
@media print {
body.ns-0 .navbox {
display: none !important;
}
}
ku94g873nj9xaasowc6yies69ls74c5
Tempilet:Navbox
10
1040
9723
2008-08-29T15:52:23Z
meta>Cirt
0
trying this out - from [[w:Template:Navbox]]
9723
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state|}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft|}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">}}{{{list1|}}}{{#if:{{{list1|}}}|</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image|}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list2|}}}{{#if:{{{list2|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list3|}}}{{#if:{{{list3|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list4|}}}{{#if:{{{list4|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list5|}}}{{#if:{{{list5|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6|}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7|}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8|}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9|}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10|}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11|}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12|}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13|}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14|}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15|}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16|}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17|}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18|}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19|}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20|}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
4njvcphhbo11b1ylzb1ww5ceerze5pg
9724
9723
2008-08-29T16:05:11Z
meta>Cbrown1023
0
Protected "[[Template:Navbox]]": Requested by [[User:Cirt|Cirt]]: "because the code is very very complex and it is going to be used in lots of places" [edit=autoconfirmed:move=sysop]
9723
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state|}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft|}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">}}{{{list1|}}}{{#if:{{{list1|}}}|</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image|}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list2|}}}{{#if:{{{list2|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list3|}}}{{#if:{{{list3|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list4|}}}{{#if:{{{list4|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list5|}}}{{#if:{{{list5|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6|}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7|}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8|}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9|}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10|}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11|}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12|}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13|}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14|}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15|}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16|}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17|}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18|}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19|}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20|}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
4njvcphhbo11b1ylzb1ww5ceerze5pg
9725
9724
2009-05-21T16:40:17Z
meta>Frank Schulenburg
0
9725
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state|}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft|}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">}}{{{list1|}}}{{#if:{{{list1|}}}|</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image|}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list2|}}}{{#if:{{{list2|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list3|}}}{{#if:{{{list3|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list4|}}}{{#if:{{{list4|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list5|}}}{{#if:{{{list5|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6|}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7|}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8|}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9|}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10|}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11|}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12|}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13|}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14|}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15|}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16|}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17|}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18|}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19|}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20|}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>[[Category:Navbox (navigational) templates]]</noinclude>
ligebri1b6yies2ih4yqkbh2lsc0wzh
9726
9725
2012-03-13T16:24:11Z
meta>Beria
0
testing
9726
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = [[Category:Navigational boxes without horizontal lists]]
}}
}}
}}
}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|line-height:1.4em;
|line-height:1.5em;
|padding:0.25em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<noinclude>[[Category:Navbox (navigational) templates]]</noinclude>
gvru93qne0ohkwnhbqg2vap5ow5rip6
9727
9726
2012-03-13T16:25:07Z
meta>Beria
0
9727
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default =
}}
}}
}}
}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|line-height:1.4em;
|line-height:1.5em;
|padding:0.25em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<noinclude>[[Category:Navbox (navigational) templates]]</noinclude>
c0qrbrxxkqfbhwt2hhsicejijpoidsl
9728
9727
2012-03-13T16:32:45Z
meta>Beria
0
Reverted changes by [[Special:Contributions/Beria|Beria]] ([[User talk:Beria|talk]]) to last version by Frank Schulenburg
9728
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state|}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft|}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">}}{{{list1|}}}{{#if:{{{list1|}}}|</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image|}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list2|}}}{{#if:{{{list2|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list3|}}}{{#if:{{{list3|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list4|}}}{{#if:{{{list4|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list5|}}}{{#if:{{{list5|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6|}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7|}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8|}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9|}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10|}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11|}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12|}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13|}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14|}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15|}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16|}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17|}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18|}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19|}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20|}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>[[Category:Navbox (navigational) templates]]</noinclude>
ligebri1b6yies2ih4yqkbh2lsc0wzh
9729
9728
2013-05-13T16:37:55Z
meta>Frietjes
0
trying new Lua version
9729
wikitext
text/x-wiki
{{#invoke: Navbox | navbox }}<noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
lxoimlqslukeym1vcyobh3pyhtcmwci
9730
9729
2013-05-13T16:45:03Z
meta>Frietjes
0
Undo revision 5482176 by [[Special:Contributions/Frietjes|Frietjes]] ([[User talk:Frietjes|talk]]) revert for now
9730
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state|}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft|}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">}}{{{list1|}}}{{#if:{{{list1|}}}|</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image|}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list2|}}}{{#if:{{{list2|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list3|}}}{{#if:{{{list3|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list4|}}}{{#if:{{{list4|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list5|}}}{{#if:{{{list5|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6|}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7|}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8|}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9|}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10|}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11|}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12|}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13|}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14|}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15|}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16|}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17|}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18|}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19|}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20|}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>[[Category:Navbox (navigational) templates]]</noinclude>
ligebri1b6yies2ih4yqkbh2lsc0wzh
9731
9730
2013-05-14T20:35:37Z
meta>Frietjes
0
trying a new LUA version imported from [[:en:Template:Navbox]]
9731
wikitext
text/x-wiki
{{#invoke: Navbox | navbox }}<noinclude>[[Category:Navbox (navigational) templates]]</noinclude>
ko5mzo7ms3kk4q8nr7fbcv3xml4yq54
9732
9731
2014-01-25T08:35:26Z
meta>Verdy p
0
9732
wikitext
text/x-wiki
{{#invoke: Navbox | navbox }}<noinclude>{{documentation}}</noinclude>
r559d18z5ouc3wiwuekakf5ihlqt7ws
9733
9031
2021-08-23T18:00:44Z
meta>MusikBot II
0
Changed protection settings for "[[Template:Navbox]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9733
wikitext
text/x-wiki
{{#invoke: Navbox | navbox }}<noinclude>{{documentation}}</noinclude>
r559d18z5ouc3wiwuekakf5ihlqt7ws
9734
2004-09-18T14:47:15Z
w>Anthony
0
9734
wikitext
text/x-wiki
{| align="center" cellpadding="2" border="2"
|-
| width="30%" align="center" | Preceded by:<br>'''{{{1}}}'''
| width="40%" align="center" | '''{{{2}}}'''
| width="30%" align="center" | Succeeded by:<br>'''{{{3}}}'''
|}
7rewwzqgyk8tfhrjvazh6h89yan0z82
9735
9734
2004-09-18T14:56:27Z
w>Anthony
0
9735
wikitext
text/x-wiki
#REDIRECT: [[Template:Succession]]
cu6u7f05n0x7yinucvnkq0zl4o7ikky
9736
9735
2006-10-24T07:18:51Z
w>Luna Santin
0
redirecting to [[Template:NavigationBox]]
9736
wikitext
text/x-wiki
#REDIRECT: [[Template:NavigationBox]]
6ilnq23tk62pjhc38om65w024skzyqp
9737
9736
2007-08-04T06:03:56Z
w>CapitalR
0
[[WP:AES|←]]Redirected page to [[Template:Navbox generic]]
9737
wikitext
text/x-wiki
#REDIRECT: [[Template:Navbox generic]]
tlg9wjf069c3a37at4o19c0z8njvjos
9738
9737
2007-08-11T05:44:56Z
w>CapitalR
0
9738
wikitext
text/x-wiki
{{Navbox generic
|name = {{{name|}}}
|state = {{{state|}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle =
|style =
|titlestyle = {{{titlestyle|}}}
|titlegroupstyle = background:#ccccff; {{{titlegroupstyle|}}}
|imagestyle =
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = width:100%; text-align:{{#if:{{{group1|}}}{{{group2|}}}|left|center}}; {{{liststyle|}}}
|oddstyle =
|evenstyle = background:#eee;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}
<!-- Add cats and interwikis to the /doc subpage, not here! -->
</noinclude>
2lobg9as5hr4i71j4kjv5rmknks67uc
9739
9738
2007-08-11T05:47:07Z
w>CapitalR
0
9739
wikitext
text/x-wiki
{{Navbox generic
|name = {{{name|Navbox}}}
|state = {{{state|}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle =
|style =
|titlestyle = {{{titlestyle|}}}
|titlegroupstyle = background:#ccccff; {{{titlegroupstyle|}}}
|imagestyle =
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = width:100%; text-align:{{#if:{{{group1|}}}{{{group2|}}}|left|center}}; {{{liststyle|}}}
|oddstyle =
|evenstyle = background:#eee;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}
<!-- Add cats and interwikis to the /doc subpage, not here! -->
</noinclude>
nnaf7udha9zf5bk6lja8n57m0wujmc0
9740
9739
2007-08-11T06:34:58Z
w>CapitalR
0
9740
wikitext
text/x-wiki
{{Navbox generic
|name = {{{name|Navbox}}}
|navbox = {{{navbox|}}}
|state = {{{state|}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center}}; {{{liststyle|}}}
|oddstyle =
|evenstyle = background:#eee;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}
<!-- Add cats and interwikis to the /doc subpage, not here! -->
</noinclude>
6ro16s223jsyffu1ta0horv9k2g9298
9741
9740
2007-08-11T06:41:58Z
w>CapitalR
0
9741
wikitext
text/x-wiki
<!--
Please do not modify without discussion first!
-->{{Navbox generic
|name = {{{name|Navbox}}}
|navbar = {{{navbar|}}}
|state = {{{state|}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center}}; {{{liststyle|}}}
|oddstyle = <!--Nothing-->
|evenstyle = background:#eee;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
egaat4g93v04po0ej98jbauga5xrj65
9742
9741
2007-08-13T01:01:12Z
w>CapitalR
0
9742
wikitext
text/x-wiki
<!--
Please do not modify without discussion first!
-->{{Navbox generic
|name = {{{name|Navbox}}}
|navbar = {{{navbar|}}}
|state = {{{state|}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center; font-size:95%}}; {{{liststyle|}}}
|oddstyle = <!--Nothing-->
|evenstyle = background:#eee;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
ktrq23mc2aao2oetscawkff67y7rblq
9743
9742
2007-08-13T13:28:11Z
w>CapitalR
0
9743
wikitext
text/x-wiki
<!--
Please do not modify without discussion first!
-->{{Navbox generic
|name = {{{name|Navbox}}}
|navbar = {{{navbar|}}}
|state = {{{state|}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center; font-size:95%}}; {{{liststyle|}}}
|oddstyle = <!--Nothing-->
|evenstyle = background:#f5f5f5;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
rwyzjl7j588sj3c1apissnsstiks86j
9744
9743
2007-08-13T13:31:42Z
w>CapitalR
0
9744
wikitext
text/x-wiki
<!--
Please do not modify without discussion first!
-->{{Navbox generic
|name = {{{name|Navbox}}}
|navbar = {{{navbar|}}}
|state = {{{state|}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center; font-size:95%}}; {{{liststyle|}}}
|oddstyle = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}| background:white;}}
|evenstyle = background:#f5f5f5;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
rueg8nc9j1yzmx2sx3snc620796rysy
9745
9744
2007-08-13T13:32:55Z
w>CapitalR
0
9745
wikitext
text/x-wiki
<!--
Please do not modify without discussion first!
-->{{Navbox generic
|name = {{{name|Navbox}}}
|navbar = {{{navbar|}}}
|state = {{{state|}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}| background:white;}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center; font-size:95%}}; {{{liststyle|}}}
|oddstyle =
|evenstyle = background:#f5f5f5;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
8stzihwumh7kr77fq7m0zh8yykncaey
9746
9745
2007-08-13T13:34:28Z
w>CapitalR
0
9746
wikitext
text/x-wiki
<!--
Please do not modify without discussion first!
-->{{Navbox generic
|name = {{{name|Navbox}}}
|navbar = {{{navbar|}}}
|state = {{{state|}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}| background:white;}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center; font-size:95%}}; {{{liststyle|}}}
|oddstyle =
|evenstyle = background:#f7f7f7;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
ol32gtlek43n8qz1p1czxenc6ebbrcr
9747
9746
2007-08-13T13:56:21Z
w>CapitalR
0
9747
wikitext
text/x-wiki
<!--
Please do not modify without discussion first!
-->{{Navbox generic
|name = {{{name|Navbox}}}
|navbar = {{{navbar|}}}
|state = {{{state|}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}| background:white;}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center; font-size:95%}}; {{{liststyle|}}}
|oddstyle =
|evenstyle = background:#f9f9f9;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
iighrb6yyw0yv1v4w4aarsrn1zp4rgk
9748
9747
2007-08-13T17:40:29Z
w>CapitalR
0
9748
wikitext
text/x-wiki
<!--
Please do not modify without discussion first!
-->{{Navbox generic
|name = {{{name|Navbox}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}| background:white;}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center; font-size:95%}}; {{{liststyle|}}}
|oddstyle =
|evenstyle = background:#f9f9f9;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
1xqt2pq5tvqrqfpykjl3l9nfpk0kro9
9749
9748
2007-08-13T18:45:31Z
w>CapitalR
0
9749
wikitext
text/x-wiki
<!--
Please do not modify without discussion first!
-->{{Navbox generic
|name = {{{name|Navbox}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}| background:white;}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center}}; font-size:95%;{{{liststyle|}}}
|oddstyle =
|evenstyle = background:#f9f9f9;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
dczj0te5r3s4qvfx43oyefn0w6d9zdz
9750
9749
2007-08-14T04:55:51Z
w>CapitalR
0
9750
wikitext
text/x-wiki
<!--
This template is waiting for changes to be made to {{Navbox generic}}, which it will soon transclude instead of {{User:CapitalR/Test}}. This should be fixed within a matter of days (today being 8/14/2007). Please refrain from changing to Navbox generic at this time, as it will cause problems in some browsers.
-->{{User:CapitalR/Test
|name = {{{name|Navbox}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|bodystyle = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}| background:white;}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff; text-align:center; {{{abovestyle|}}}
|belowstyle = background:#ddddff; text-align:center; {{{belowstyle|}}}
|groupstyle = background:#ddddff; text-align:right; vertical-align:top; {{{groupstyle|}}}
|liststyle = text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center}}; font-size:95%;{{{liststyle|}}}
|oddstyle =
|evenstyle = background:#f9f9f9;
|above = {{{above|}}}
|below = {{{below|}}}
|group1 = {{{group1|}}}
|list1 = {{{list1|}}}
|group2 = {{{group2|}}}
|list2 = {{{list2|}}}
|group3 = {{{group3|}}}
|list3 = {{{list3|}}}
|group4 = {{{group4|}}}
|list4 = {{{list4|}}}
|group5 = {{{group5|}}}
|list5 = {{{list5|}}}
|group6 = {{{group6|}}}
|list6 = {{{list6|}}}
|group7 = {{{group7|}}}
|list7 = {{{list7|}}}
|group8 = {{{group8|}}}
|list8 = {{{list8|}}}
|group9 = {{{group9|}}}
|list9 = {{{list9|}}}
|group10 = {{{group10|}}}
|list10 = {{{list10|}}}
|group11 = {{{group11|}}}
|list11 = {{{list11|}}}
|group12 = {{{group12|}}}
|list12 = {{{list12|}}}
|group13 = {{{group13|}}}
|list13 = {{{list13|}}}
|group14 = {{{group14|}}}
|list14 = {{{list14|}}}
|group15 = {{{group15|}}}
|list15 = {{{list15|}}}
|group16 = {{{group16|}}}
|list16 = {{{list16|}}}
|group17 = {{{group17|}}}
|list17 = {{{list17|}}}
|group18 = {{{group18|}}}
|list18 = {{{list18|}}}
|group19 = {{{group19|}}}
|list19 = {{{list19|}}}
|group20 = {{{group20|}}}
|list20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
q6bs0mqjic7j1okof3b7dlahkkjt8p5
9751
9750
2007-08-15T01:57:51Z
w>CapitalR
0
Major upgrade
9751
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{User:CapitalR/Test2/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;vertical-align:top;{{{groupstyle|}}}
|ls = width:100%;font-size:95%;text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center}};{{{liststyle|}}}
|os = {{{oddstyle|}}}
|es = background:#f7f7f7;{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{list1|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
ojlq7pzoessb1vz8jxtcqe61aj9umxe
9752
9751
2007-08-15T02:05:26Z
w>CapitalR
0
9752
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;vertical-align:top;{{{groupstyle|}}}
|ls = width:100%;font-size:95%;text-align:{{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|left|center}};{{{liststyle|}}}
|os = {{{oddstyle|}}}
|es = background:#f7f7f7;{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{list1|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
dqtspm0ni38n2bnsbohp7ex6ptacybg
9753
9752
2007-08-15T05:01:43Z
w>CapitalR
0
9753
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;vertical-align:top;{{{groupstyle|}}}
|os = width:100%;font-size:95%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;font-size:95%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{list1|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
0uchjfwgw9pmws1galxfhldl4al9p6q
9754
9753
2007-08-16T06:48:12Z
w>BenB4
0
make compatible with {{Navigation}} and {{Dynamic navigation box}}
9754
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{body|}}}{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;vertical-align:top;{{{groupstyle|}}}
|os = width:100%;font-size:95%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;font-size:95%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{body|}}}{{{list1|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>{{{{FULLPAGENAME}}/doc}}</noinclude>
cwahbc0a2n9j9ems98h4vqqyv0we9ll
9755
9754
2007-08-18T07:13:16Z
w>Alison
0
+prot
9755
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{body|}}}{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;vertical-align:top;{{{groupstyle|}}}
|os = width:100%;font-size:95%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;font-size:95%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{body|}}}{{{list1|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>
{{protected template}}
{{{{FULLPAGENAME}}/doc}}</noinclude>
06t5jmo36hy088uu6emjhgkkimsvt4h
9756
9755
2007-08-18T07:13:48Z
w>Alison
0
Protected Template:Navbox: High risk template / requested at [[WP:RPP]] [edit=sysop:move=sysop]
9755
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{body|}}}{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;vertical-align:top;{{{groupstyle|}}}
|os = width:100%;font-size:95%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;font-size:95%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{body|}}}{{{list1|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>
{{protected template}}
{{{{FULLPAGENAME}}/doc}}</noinclude>
06t5jmo36hy088uu6emjhgkkimsvt4h
9757
9756
2007-08-19T15:53:50Z
w>MZMcBride
0
made change per talk request
9757
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{body|}}}{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;vertical-align:top;{{{groupstyle|}}}
|os = width:100%;font-size:95%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;font-size:95%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{body|}}}{{{list1|}}}{{{category|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>
{{protected template}}
{{{{FULLPAGENAME}}/doc}}</noinclude>
e3infp9t579wtcoi0l2olv8a66jit8p
9758
9757
2007-08-20T03:59:55Z
w>MZMcBride
0
made change per talk request
9758
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{body|}}}{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;vertical-align:top;{{{groupstyle|}}}
|os = width:100%;font-size:95%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;font-size:95%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{body|}}}{{{list1|}}}{{{category|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>
{{pp-template|small=yes}}
{{template doc}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
rwwh5sqt4vtd0n78on11o60t3hqp9og
9759
9758
2007-09-02T23:59:51Z
w>Kirill Lokshin
0
Per talk page
9759
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{body|}}}{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;{{{groupstyle|}}}
|os = width:100%;font-size:95%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;font-size:95%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{body|}}}{{{list1|}}}{{{category|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>
{{pp-template|small=yes}}
{{template doc}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
ny5chgcym8d36irx1pcb1zcx3su1u2v
9760
9759
2007-10-02T02:46:06Z
w>Pathoschild
0
{{documentation}}
9760
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{body|}}}{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;{{{groupstyle|}}}
|os = width:100%;font-size:95%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;font-size:95%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{body|}}}{{{list1|}}}{{{category|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
19kg0fp9tr447mf4j5sn8r9dasaw3p2
9761
9760
2007-10-24T10:12:05Z
w>Violetriga
0
try to implement VDE colour parameter
9761
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{body|}}}{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|VDEcolor = {{{VDEcolor|}}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;{{{groupstyle|}}}
|os = width:100%;font-size:95%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;font-size:95%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{body|}}}{{{list1|}}}{{{category|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
8rpidd8dp7feve9tlrmlbogxvrlnzq6
9762
9761
2007-11-05T17:22:36Z
w>Edokter
0
Removing VDEcolor parameter; titlestyle now works on VDE links.
9762
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{body|}}}{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;{{{groupstyle|}}}
|os = width:100%;font-size:95%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;font-size:95%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{body|}}}{{{list1|}}}{{{category|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
19kg0fp9tr447mf4j5sn8r9dasaw3p2
9763
9762
2008-04-17T14:34:49Z
w>Edokter
0
Removing font-size in os= and es=; decrapated (and possibly interfering) with new .navbox class in [[Common.css]]
9763
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{Navbox/core
|name = {{{name<noinclude>|{{FULLPAGENAME}}</noinclude>}}}
|navbar = {{{navbar|}}}
|state = {{{state|autocollapse}}}
|title = {{{title|}}}
|image = {{{image|}}}
|imageleft = {{{imageleft|}}}
|imagespan = {{#expr:{{#if:{{{body|}}}{{{list1|}}}|1|0}} +{{#if:{{{list2|}}}|1|0}} +{{#if:{{{list3|}}}|1|0}} +{{#if:{{{list4|}}}|1|0}} +{{#if:{{{list5|}}}|1|0}} +{{#if:{{{list6|}}}|1|0}} +{{#if:{{{list7|}}}|1|0}} +{{#if:{{{list8|}}}|1|0}} +{{#if:{{{list9|}}}|1|0}} +{{#if:{{{list10|}}}|1|0}} +{{#if:{{{list11|}}}|1|0}} +{{#if:{{{list12|}}}|1|0}} +{{#if:{{{list13|}}}|1|0}} +{{#if:{{{list14|}}}|1|0}} +{{#if:{{{list15|}}}|1|0}} +{{#if:{{{list16|}}}|1|0}} +{{#if:{{{list17|}}}|1|0}} +{{#if:{{{list18|}}}|1|0}} +{{#if:{{{list19|}}}|1|0}} +{{#if:{{{list20|}}}|1|0}}}}
|span = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}{{{imageleft|}}}|{{#if:{{{image|}}}|3|2}}|{{#if:{{{image|}}}|2|1}}}}
|nogroups = {{#if:{{{group1|}}}{{{group2|}}}{{{group3|}}}{{{group4|}}}{{{group5|}}}{{{group6|}}}{{{group7|}}}{{{group8|}}}{{{group9|}}}{{{group10|}}}{{{group11|}}}{{{group12|}}}{{{group13|}}}{{{group14|}}}{{{group15|}}}{{{group16|}}}{{{group17|}}}{{{group18|}}}{{{group19|}}}{{{group20|}}}|false|true}}
|bodystyle = {{{style|}}}{{{bodystyle|}}}
|titlestyle = {{{titlestyle|}}}
|abovestyle = background:#ddddff;{{{abovestyle|}}}
|belowstyle = background:#ddddff;{{{belowstyle|}}}
|above = {{{above|}}}
|below = {{{below|}}}
|gs = white-space:nowrap;background:#ddddff;text-align:right;{{{groupstyle|}}}
|os = width:100%;{{{liststyle|}}}{{{oddstyle|}}}
|es = width:100%;background:#f7f7f7;{{{liststyle|}}}{{{evenstyle|}}}
|g1 = {{{group1|}}}
|g2 = {{{group2|}}}
|g3 = {{{group3|}}}
|g4 = {{{group4|}}}
|g5 = {{{group5|}}}
|g6 = {{{group6|}}}
|g7 = {{{group7|}}}
|g8 = {{{group8|}}}
|g9 = {{{group9|}}}
|g10 = {{{group10|}}}
|g11 = {{{group11|}}}
|g12 = {{{group12|}}}
|g13 = {{{group13|}}}
|g14 = {{{group14|}}}
|g15 = {{{group15|}}}
|g16 = {{{group16|}}}
|g17 = {{{group17|}}}
|g18 = {{{group18|}}}
|g19 = {{{group19|}}}
|g20 = {{{group20|}}}
|l1 = {{{body|}}}{{{list1|}}}{{{category|}}}
|l2 = {{{list2|}}}
|l3 = {{{list3|}}}
|l4 = {{{list4|}}}
|l5 = {{{list5|}}}
|l6 = {{{list6|}}}
|l7 = {{{list7|}}}
|l8 = {{{list8|}}}
|l9 = {{{list9|}}}
|l10 = {{{list10|}}}
|l11 = {{{list11|}}}
|l12 = {{{list12|}}}
|l13 = {{{list13|}}}
|l14 = {{{list14|}}}
|l15 = {{{list15|}}}
|l16 = {{{list16|}}}
|l17 = {{{list17|}}}
|l18 = {{{list18|}}}
|l19 = {{{list19|}}}
|l20 = {{{list20|}}}
}}<noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
te2lgbclw426gikzhd2gf6yvcxaez07
9764
9763
2008-05-02T02:47:56Z
w>CapitalR
0
Major upgrade to new internal code
9764
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state|}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft|}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">}}{{{list1|}}}{{#if:{{{list1|}}}|</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image|}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list2|}}}{{#if:{{{list2|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list3|}}}{{#if:{{{list3|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list4|}}}{{#if:{{{list4|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list5|}}}{{#if:{{{list5|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6|}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7|}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8|}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9|}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10|}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11|}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12|}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13|}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14|}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15|}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16|}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17|}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18|}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19|}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20|}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
gp8bq4tnuzna8yr8rmvvxl70lq34yxb
9765
9724
2009-02-22T14:17:32Z
w>Edokter
0
Remove redundant code: closing "#if:{{{lintN}}}..." in list 1-5; {{{list1padding}}} parameter; redundant pipes.
9765
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
dk584ba8t6sbwrtl6xbtyjv0mma0roe
9766
9765
2009-03-01T11:12:13Z
w>CapitalR
0
Reverting; unfortunately, the edit had adverse effects on a number of Navbox with columns and Navbox with collapsible groups templates. The extra code does serve a specific purpose.
9766
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state|}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft|}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">}}{{{list1|}}}{{#if:{{{list1|}}}|</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image|}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list2|}}}{{#if:{{{list2|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list3|}}}{{#if:{{{list3|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list4|}}}{{#if:{{{list4|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">}}{{{list5|}}}{{#if:{{{list5|}}}|</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6|}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7|}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8|}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9|}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10|}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11|}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12|}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13|}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14|}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15|}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16|}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17|}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18|}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19|}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20|}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
gp8bq4tnuzna8yr8rmvvxl70lq34yxb
9767
9766
2009-03-02T00:00:20Z
w>Edokter
0
Reinstating fixes, except removal of {{{list1padding}}}, which is required by {{Navbox with columns}}. Tested in sandbox.
9767
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
p1hf2533fshyfqrq68k7xrxh82uokks
9768
9767
2009-03-03T17:33:55Z
w>Happy-melon
0
update parameter in {{tnavbar}} call
9768
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|style={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
6ree73m86z42c9p56gtrv7gllzpbode
9769
9768
2009-03-03T19:58:20Z
w>Edokter
0
Revert, as Tnavbar has been reverted. Sorry about the job queue exploding.
9769
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Tnavbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
p1hf2533fshyfqrq68k7xrxh82uokks
9770
9769
2009-04-21T19:56:55Z
w>Happy-melon
0
expand redirect
9770
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{navbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left:2px solid #fdfdfd;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
k7q4ohsq4ta9gdlah1nwqtn2j3990hi
9771
9770
2009-05-02T17:38:27Z
w>Edokter
0
Removing duplicate (from Common.css) color declarations for border-left of navbox-list cells with groups. Tested in IE and Firefox.
9771
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{Navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Navbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
bmdi6heer6pu20qio2513oh1zxdcp89
9772
9771
2009-05-02T19:45:44Z
w>TheDJ
0
try to fix navbar option.
9772
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Navbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
ceda0do1jdv1hlpfm7iq7r7nl6gnyeb
9773
9725
2009-07-30T09:51:54Z
w>MSGJ
0
add titleclass and bodyclass parameters, per request on talk page
9773
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Navbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
qqn85orwa26e35dgqjutye13k43ng22
9774
9773
2009-11-06T08:53:04Z
w>MZMcBride
0
to kill the <span> / <span /> hack
9774
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Navbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}
</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
ipyb8lypi332m6nrgem1pocme35e5rx
9775
9774
2009-11-11T02:31:03Z
w>Edokter
0
[[WP:UNDO|Undid]] revision 324244092 by [[Special:Contributions/MZMcBride|MZMcBride]] ([[User talk:MZMcBride|talk]]) Causes height problems in list1
9775
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Navbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
qqn85orwa26e35dgqjutye13k43ng22
9776
9775
2009-11-11T21:53:13Z
w>Edokter
0
Restoring MZMcBride's fix (sans the trailing linebreak), applying to all lists.
9776
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Navbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->width:100%;padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
rzk73swpiwylmxba3c1jye11tvl9a90
9777
9776
2010-08-31T18:05:24Z
w>WOSlinker
0
add groupwidth parameter
9777
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Navbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth|}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
87dlusqowqg5lt1zku1ar24cgot6rq6
9778
9777
2010-08-31T20:11:22Z
w>Edokter
0
Remove duplicate variable defaults/evaluations.
9778
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Navbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{pp-template|small=yes}}
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
dv9ec4601qex5jhr6xykhxx0b9e3ghx
9779
9778
2010-10-02T18:51:35Z
w>WOSlinker
0
remove {{pp-template}}
9779
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<div style="float:left; width:6em;text-align:left;"> </div>}}}}|<!--
--><div style="float:left; width:6em;text-align:left;"><!--
-->{{Navbar|{{{name}}}|fontstyle={{{basestyle|}}};{{{titlestyle|}}};border:none;|mini=1}}<!--
--></div>{{#ifeq:{{{state|}}}|plain|<div style="float:right;width:6em;"> </div>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
lvdp3i0h93nrd4q26ixmke65c5bj9mt
9780
9779
2011-01-07T00:05:13Z
w>Edokter
0
Update from sandbox: new code for navbar.
9780
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
--><span style="float:left;width:6em;text-align:left;">{{#if:{{{name|}}}|<!--
-->{{Navbar|{{{name}}}|mini=1|fontstyle={{{basestyle|}}};{{{titlestyle|}}};<!--
-->background:none transparent;border:none;font-size:100%;}}|<!--
--><span class="error" style="white-space:nowrap;">Error: No name provided</span>}}</span><!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
hbcpkecr7q8wpjh9f5utltrujy0ap0v
9781
9780
2011-06-25T21:25:08Z
w>Plastikspork
0
Add more classes, since we already have several
9781
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group {{{titlegroupclass|}}}" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
--><span style="float:left;width:6em;text-align:left;">{{#if:{{{name|}}}|<!--
-->{{Navbar|{{{name}}}|mini=1|fontstyle={{{basestyle|}}};{{{titlestyle|}}};<!--
-->background:none transparent;border:none;font-size:100%;}}|<!--
--><span class="error" style="white-space:nowrap;">Error: No name provided</span>}}</span><!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
iv2ap5gqaefpxrr2b528zebzhdk9i5h
9782
9781
2011-11-10T08:59:13Z
w>Edokter
0
Add {{{listclass|}}}
9782
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group {{{titlegroupclass|}}}" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
--><span style="float:left;width:6em;text-align:left;">{{#if:{{{name|}}}|<!--
-->{{Navbar|{{{name}}}|mini=1|fontstyle={{{basestyle|}}};{{{titlestyle|}}};<!--
-->background:none transparent;border:none;font-size:100%;}}|<!--
--><span class="error" style="white-space:nowrap;">Error: No name provided</span>}}</span><!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
oj02bolmx3j0he1ww6bd66cuxedpxmb
9783
9782
2011-11-10T13:18:04Z
w>Edokter
0
Make above and below start on new line
9783
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group {{{titlegroupclass|}}}" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
--><span style="float:left;width:6em;text-align:left;">{{#if:{{{name|}}}|<!--
-->{{Navbar|{{{name}}}|mini=1|fontstyle={{{basestyle|}}};{{{titlestyle|}}};<!--
-->background:none transparent;border:none;font-size:100%;}}|<!--
--><span class="error" style="white-space:nowrap;">Error: No name provided</span>}}</span><!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><!--
-->{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><!--
-->{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
5rz256mj0nvqwzhlha8tdqedky6grj7
9784
9783
2011-11-10T13:20:13Z
w>Edokter
0
+{{{aboveclass}}}
9784
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group {{{titlegroupclass|}}}" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
--><span style="float:left;width:6em;text-align:left;">{{#if:{{{name|}}}|<!--
-->{{Navbar|{{{name}}}|mini=1|fontstyle={{{basestyle|}}};{{{titlestyle|}}};<!--
-->background:none transparent;border:none;font-size:100%;}}|<!--
--><span class="error" style="white-space:nowrap;">Error: No name provided</span>}}</span><!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;"><!--
-->{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><!--
-->{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><!--
-->{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
aiz8cxkcty0u8csr8cwnyc3lkrsbtx8
9785
9784
2011-11-10T13:29:59Z
w>Edokter
0
What works in an edit window, does not work here; removing comment marks before title, below and after.
9785
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox {{{bodyclass|}}}" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group {{{titlegroupclass|}}}" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
--><span style="float:left;width:6em;text-align:left;">{{#if:{{{name|}}}|<!--
-->{{Navbar|{{{name}}}|mini=1|fontstyle={{{basestyle|}}};{{{titlestyle|}}};<!--
-->background:none transparent;border:none;font-size:100%;}}|<!--
--><span class="error" style="white-space:nowrap;">Error: No name provided</span>}}</span><!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;">
{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">
{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">
{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
hxc3ez2iao8xcngdq62k7is7wecykec
9786
9785
2011-11-11T11:22:59Z
w>Edokter
0
Move {{{bodyclass}}} to inner table
9786
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group {{{titlegroupclass|}}}" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
--><span style="float:left;width:6em;text-align:left;">{{#if:{{{name|}}}|<!--
-->{{Navbar|{{{name}}}|mini=1|fontstyle={{{basestyle|}}};{{{titlestyle|}}};<!--
-->background:none transparent;border:none;font-size:100%;}}|<!--
--><span class="error" style="white-space:nowrap;">Error: No name provided</span>}}</span><!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=100|#default=110}}%;">
{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">
{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">
{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
jihpp3h16i5gzwyx1j8yo1273fsgita
9787
9786
2011-11-13T19:08:00Z
w>Edokter
0
no longer needed
9787
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group {{{titlegroupclass|}}}" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
--><span style="float:left;width:6em;text-align:left;">{{#if:{{{name|}}}|<!--
-->{{Navbar|{{{name}}}|mini=1|fontstyle={{{basestyle|}}};{{{titlestyle|}}};<!--
-->background:none transparent;border:none;font-size:100%;}}|<!--
--><span class="error" style="white-space:nowrap;">Error: No name provided</span>}}</span><!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">
{{{above}}}</td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}">
{{{below}}}</td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
ord85xtg4zh85lyoxtkw583tsxiu9sk
9788
9787
2011-11-19T13:53:04Z
w>Edokter
0
add div for above/below to fix nested lists in below
9788
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><td class="navbox-group {{{titlegroupclass|}}}" style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}">{{{titlegroup|}}}</td><!--
--><th style="border-left:2px solid #fdfdfd;width:100%;|<th style="}}{{{basestyle|}}};{{{titlestyle|}}}" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}} <!--
-->class="navbox-title"><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
--><span style="float:left;width:6em;text-align:left;">{{#if:{{{name|}}}|<!--
-->{{Navbar|{{{name}}}|mini=1|fontstyle={{{basestyle|}}};{{{titlestyle|}}};<!--
-->background:none transparent;border:none;font-size:100%;}}|<!--
--><span class="error" style="white-space:nowrap;">Error: No name provided</span>}}</span><!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><span class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</span></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{imageleft}}}</td>}}<!--
-->{{#if:{{{group1|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><!--
-->{{{image}}}</td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<td class="navbox-group {{{groupclass|}}}" style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</td><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
a34kodnj3i26pzhd40iif0rm56wxdyo
9789
9788
2011-12-07T11:50:56Z
w>Edokter
0
Update from sandbox: groups are now headers with proper scopes; moved out inline CSS; several other small fixes.
9789
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar/sandbox|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
80kddoltcdmw498rz7wkhov55vuqwat
9790
9789
2011-12-07T12:46:10Z
w>Edokter
0
Fix navbar link (should not have caused any trouble)
9790
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table class="navbox" cellspacing="0" <!--
-->style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|plain|off=|<!--
-->#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="width:100%;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=" style="width:100%;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
cjklrqthmkpufqj4c3k7fhd9ad2398n
9791
9790
2012-01-15T11:52:03Z
w>Edokter
0
Move some CSS to common.css
9791
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|<!--
-->{{#switch:{{{state|}}}|plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} <!--
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=navbox-subgroup" style="{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
amcp3l6n5a6jg5mvkzioi1vmrwt3as1
9792
9791
2012-01-15T12:54:42Z
w>Edokter
0
Other tables with navbox class need border spacing
9792
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
qk8xrrkz4usykcix8ovihe3m65d5x70
9793
9792
2012-03-04T10:55:54Z
w>WOSlinker
0
add tracking for hlists and padding
9793
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = [[Category:Navigational boxes without horizontal lists]]
}}
}}
}}
}}}}<!--
-->{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|line-height:1.4em;
|line-height:1.5em;
|padding:0.25em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
4y5lcutfyuzwcdd0u8jig3x6xkxoqeq
9794
9793
2012-03-04T10:56:50Z
w>WOSlinker
0
add tracking for hlists and padding
9794
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = [[Category:Navigational boxes without horizontal lists]]
}}
}}
}}
}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|line-height:1.4em;
|line-height:1.5em;
|padding:0.25em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
dvg74g4vwcscuwbec3w6s47ypvodi6u
9795
9728
2012-03-15T14:07:35Z
w>WOSlinker
0
more tracking
9795
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = [[Category:Navigational boxes without horizontal lists]]
}}
}}
}}
}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|line-height:1.4em;
|line-height:1.5em;
|padding:0.25em 0; text-align:left; line-height:1.4em;
|padding:0.25em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
3mok9qk5v5kghmpow0gk98xetcl7zci
9796
9795
2012-03-18T14:07:32Z
w>WOSlinker
0
tracking
9796
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = [[Category:Navigational boxes without horizontal lists]]
}}
}}
}}
}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|line-height:1.4em;
|line-height:1.5em;
|padding:0.25em 0; text-align:left; line-height:1.4em;
|padding:0.15em 0; line-height:1.4em;
|padding:0.25em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
gafhhikwjcj6hfjlkife1brwdzh2xtl
9797
9796
2012-03-21T19:33:09Z
w>WOSlinker
0
remove liststyle tracking
9797
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = [[Category:Navigational boxes without horizontal lists]]
}}
}}
}}
}}}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
feoio8oors336pm3l1t2dl7wqfxhqkb
9798
9797
2012-04-06T19:53:04Z
w>WOSlinker
0
don't add navboxes with border=subgroup to tracking cat and also /doc pages
9798
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = [[Category:Navigational boxes without horizontal lists]]
}}
}}
}}
}}}}}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
0f20i4e7adhp3n8lfu3uq5frk20a3dh
9799
9798
2012-04-09T06:24:54Z
w>WOSlinker
0
don't track [[Template:Navbox with columns]]
9799
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
kb1k6jlxtaj1wqqst5epholda75plvv
9800
9799
2012-05-04T19:22:48Z
w>WOSlinker
0
don't track plainlist class
9800
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|plainlist
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|plainlist
|hlist
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
pq1ubfns14ve9jcwwngdsry74ag7xgl
9801
9800
2012-06-29T21:06:07Z
w>WOSlinker
0
more hlist tracking options
9801
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
n1xwf2wf0hsinmaqpohehp82o2hh7cc
9802
9801
2012-09-18T16:01:36Z
w>WOSlinker
0
liststyle padding tracking
9802
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|padding:0.25em 0; line-height:1.4em; width:auto;
|padding:0.4em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
9qkwzv5pj4k45n5imep95jrhz5jenhz
9803
9802
2012-09-18T16:05:25Z
w>WOSlinker
0
liststyle padding tracking
9803
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|padding:0.25em 0; line-height:1.4em; width:auto;
|padding:0.4em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
2g2oupyp9em1bm3ldeunctbxuepbx3x
9804
9803
2012-09-18T16:16:05Z
w>WOSlinker
0
liststyle padding tracking
9804
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|padding: 0.25em 0; line-height: 1.3em;
|padding:0.25em 0; line-height:1.4em; width:auto;
|padding:0.4em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc subpage, not here! -->
</noinclude>
h6spa9wwwzckr7108dyrwnsyi2qpg0a
9805
9804
2012-10-22T12:44:22Z
w>Thumperward
0
adding very basic tracking of titlestyle / groupstyle to measure overall use. see [[Template talk:Red Dwarf#Template styling]]
9805
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|padding: 0.25em 0; line-height: 1.3em;
|padding:0.25em 0; line-height:1.4em; width:auto;
|padding:0.4em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<includeonly>{{{titlestyle|}}}{{{groupstyle|}}}|[[Category:Navboxes using background colours]]}}</includeonly><noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
aqi3dprxf1llao8n7cz9oko152w3reo
9806
9805
2012-10-22T12:46:15Z
w>Thumperward
0
fix
9806
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|padding: 0.25em 0; line-height: 1.3em;
|padding:0.25em 0; line-height:1.4em; width:auto;
|padding:0.4em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<includeonly>{{#if:{{{titlestyle|}}}{{{groupstyle|}}}|[[Category:Navboxes using background colours]]}}</includeonly><noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
eeypa6as8vycx863miiq2vdhom17su6
9807
9806
2012-10-22T12:52:00Z
w>Thumperward
0
namespace filtering for tracking cat
9807
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|padding: 0.25em 0; line-height: 1.3em;
|padding:0.25em 0; line-height:1.4em; width:auto;
|padding:0.4em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<includeonly>{{template other|{{#if:{{{titlestyle|}}}{{{groupstyle|}}}|[[Category:Navboxes using background colours]]}}}}</includeonly><noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
8ewtyninvloe0f10jj9n3fm77jyq3ae
9808
9807
2013-02-24T22:08:19Z
w>Nyttend
0
Removing tracking category: it was added without discussion, despite the instructions at this page, and it's being used by a tiny minority of editors to force their will on everyone else
9808
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->}}}}<includeonly>{{template other|{{#if:{{{titlestyle|}}}{{{groupstyle|}}}|[[Category:Navboxes using background colours]]}}}}</includeonly><noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
o3nbnusr1k4mh8xhwu3uo1373u5jt84
9809
9808
2013-02-24T22:12:24Z
w>Nyttend
0
Remove stray brackets. Apologies for not making enough sandbox tests
9809
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><includeonly>{{template other|{{#if:{{{titlestyle|}}}{{{groupstyle|}}}|[[Category:Navboxes using background colours]]}}}}</includeonly><noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
7l4q9bwerlr37ikkjvigii8saq8o9d5
9810
9809
2013-02-24T22:25:32Z
w>WOSlinker
0
Adding back tracking category, this is still useful for now. There is not really a need to have discussions for adding tracking categories.But there is a need to discuss before removing useful things.
9810
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|padding: 0.25em 0; line-height: 1.3em;
|padding:0.25em 0; line-height:1.4em; width:auto;
|padding:0.4em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<includeonly>{{template other|{{#if:{{{titlestyle|}}}{{{groupstyle|}}}|[[Category:Navboxes using background colours]]}}}}</includeonly><noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
8ewtyninvloe0f10jj9n3fm77jyq3ae
9811
9810
2013-02-28T22:34:08Z
w>Nyttend
0
Re-remove category; its sole purpose is to permit a tiny minority to impose non-policy on the vast majority of editors who disagree
9811
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
--><includeonly>{{template other|{{#if:{{{titlestyle|}}}{{{groupstyle|}}}|[[Category:Navboxes using background colours]]}}}}</includeonly><noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
7l4q9bwerlr37ikkjvigii8saq8o9d5
9812
9811
2013-03-06T14:01:24Z
w>De728631
0
Restored tracking category per [[Template talk:Navbox#wheel warring?]] There is consensus to have this implemented.
9812
wikitext
text/x-wiki
<!--
Please do not edit without discussion first as this is a VERY complex template.
-->{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=</div>|none=|#default=<table cellspacing="0" <!--
-->class="navbox" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}"><tr><td style="padding:2px;">}}<!--
--><table cellspacing="0" class="nowraplinks {{{bodyclass|}}} {{#if:{{{title|}}}|{{#switch:{{{state|}}}|<!--
-->plain|off=|#default=collapsible {{#if:{{{state|}}}|{{{state}}}|autocollapse}}}}}} {{#switch:{{{border|{{{1|}}}}}}|<!--
-->subgroup|child|none=navbox-subgroup" style="border-spacing:0;{{{bodystyle|}}};{{{style|}}}|<!--
-->#default=navbox-inner" style="border-spacing:0;background:transparent;color:inherit}};{{{innerstyle|}}};"><!--
---Title and Navbar---
-->{{#if:{{{title|}}}|<tr>{{#if:{{{titlegroup|}}}|<!--
--><th scope="row" class="navbox-group {{{titlegroupclass|}}}" <!--
-->style="{{{basestyle|}}};{{{groupstyle|}}};{{{titlegroupstyle|}}}"><!--
-->{{{titlegroup|}}}</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;|<!--
--><th scope="col" style="}}{{{basestyle|}}};{{{titlestyle|}}}" class="navbox-title" <!--
-->colspan={{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}{{#if:{{{titlegroup|}}}|-1}}}}><!--
-->{{#if:{{#switch:{{{navbar|}}}|plain|off=1}}<!--
-->{{#if:{{{name|}}}||{{#switch:{{{border|{{{1|}}}}}}|subgroup|child|none=1}}}}|<!--
-->{{#ifeq:{{{navbar|}}}|off|{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}|<!--
-->{{#ifeq:{{{state|}}}|plain||<span style="float:left;width:6em;"> </span>}}}}|<!--
-->{{#if:{{{name|}}}|{{Navbar|{{{name}}}|mini=1|<!--
-->fontstyle={{{basestyle|}}};{{{titlestyle|}}};background:none transparent;border:none;}}|<!--
--><span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>}}<!--
-->{{#ifeq:{{{state|}}}|plain|<span style="float:right;width:6em;"> </span>}}}}<!--
--><div class="{{{titleclass|}}}" style="font-size:110%;">
{{{title}}}</div></th></tr>}}<!--
---Above---
-->{{#if:{{{above|}}}|<!--
-->{{#if:{{{title|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{aboveclass|}}}" style="{{{basestyle|}}};{{{abovestyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{above}}}</div></td></tr>}}<!--
---Body---
---First group/list and images---
-->{{#if:{{{list1|}}}|{{#if:{{{title|}}}{{{above|}}}|<tr style="height:2px;"><td></td></tr>}}<tr><!--
-->{{#if:{{{imageleft|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 2px 0px 0px;{{{imageleftstyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{imageleft}}}</div></td>}}<!--
-->{{#if:{{{group1|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group1style|}}}"><!--
-->{{{group1}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list1style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{list1padding|{{{listpadding|0em 0.25em}}}}}}">
{{{list1}}}</div></td><!--
-->{{#if:{{{image|}}}|<!--
--><td class="navbox-image {{{imageclass|}}}" style="width:0%;padding:0px 0px 0px 2px;{{{imagestyle|}}}" <!--
-->rowspan={{#expr:1{{#if:{{{list2|}}}|+2}}{{#if:{{{list3|}}}|+2}}{{#if:{{{list4|}}}|+2}}<!--
-->{{#if:{{{list5|}}}|+2}}{{#if:{{{list6|}}}|+2}}{{#if:{{{list7|}}}|+2}}{{#if:{{{list8|}}}|+2}}<!--
-->{{#if:{{{list9|}}}|+2}}{{#if:{{{list10|}}}|+2}}{{#if:{{{list11|}}}|+2}}{{#if:{{{list12|}}}|+2}}<!--
-->{{#if:{{{list13|}}}|+2}}{{#if:{{{list14|}}}|+2}}{{#if:{{{list15|}}}|+2}}{{#if:{{{list16|}}}|+2}}<!--
-->{{#if:{{{list17|}}}|+2}}{{#if:{{{list18|}}}|+2}}{{#if:{{{list19|}}}|+2}}{{#if:{{{list20|}}}|+2}}}}><div>
{{{image}}}</div></td>}}<!--
--></tr>}}<!--
---Remaining groups/lists---
-->{{#if:{{{list2|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group2|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group2style|}}}"><!--
-->{{{group2}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list2style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list2}}}</div></td></tr>}}<!--
-->{{#if:{{{list3|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}|<tr style="height:2px"><td></td></tr>}}<tr><!--
-->{{#if:{{{group3|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group3style|}}}"><!--
-->{{{group3}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list3style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list3}}}</div></td></tr>}}<!--
-->{{#if:{{{list4|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group4|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group4style|}}}"><!--
-->{{{group4}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list4style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list4}}}</div></td></tr>}}<!--
-->{{#if:{{{list5|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group5|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group5style|}}}"><!--
-->{{{group5}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list5style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list5}}}</div></td></tr>}}<!--
-->{{#if:{{{list6|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group6|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group6style|}}}"><!--
-->{{{group6}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list6style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list6}}}</div></td></tr>}}<!--
-->{{#if:{{{list7|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group7|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group7style|}}}"><!--
-->{{{group7}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list7style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list7}}}</div></td></tr>}}<!--
-->{{#if:{{{list8|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group8|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group8style|}}}"><!--
-->{{{group8}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list8style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list8}}}</div></td></tr>}}<!--
-->{{#if:{{{list9|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group9|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group9style|}}}"><!--
-->{{{group9}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list9style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list9}}}</div></td></tr>}}<!--
-->{{#if:{{{list10|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group10|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group10style|}}}"><!--
-->{{{group10}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list10style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list10}}}</div></td></tr>}}<!--
-->{{#if:{{{list11|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group11|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group11style|}}}"><!--
-->{{{group11}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list11style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list11}}}</div></td></tr>}}<!--
-->{{#if:{{{list12|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group12|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group12style|}}}"><!--
-->{{{group12}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list12style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list12}}}</div></td></tr>}}<!--
-->{{#if:{{{list13|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group13|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group13style|}}}"><!--
-->{{{group13}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list13style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list13}}}</div></td></tr>}}<!--
-->{{#if:{{{list14|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group14|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group14style|}}}"><!--
-->{{{group14}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list14style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list14}}}</div></td></tr>}}<!--
-->{{#if:{{{list15|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group15|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group15style|}}}"><!--
-->{{{group15}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list15style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list15}}}</div></td></tr>}}<!--
-->{{#if:{{{list16|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group16|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group16style|}}}"><!--
-->{{{group16}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list16style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list16}}}</div></td></tr>}}<!--
-->{{#if:{{{list17|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group17|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group17style|}}}"><!--
-->{{{group17}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list17style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list17}}}</div></td></tr>}}<!--
-->{{#if:{{{list18|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group18|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group18style|}}}"><!--
-->{{{group18}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list18style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list18}}}</div></td></tr>}}<!--
-->{{#if:{{{list19|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group19|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group19style|}}}"><!--
-->{{{group19}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{oddstyle|}}};{{{list19style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|even|{{{evenodd|odd}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list19}}}</div></td></tr>}}<!--
-->{{#if:{{{list20|}}}|<!--
--><tr style="height:2px"><td></td></tr><tr><!--
-->{{#if:{{{group20|}}}|<th scope="row" class="navbox-group {{{groupclass|}}}" <!--
-->style="{{{basestyle|}}};{{#if:{{{groupwidth|}}}|width:{{{groupwidth}}};}}{{{groupstyle|}}};{{{group20style|}}}"><!--
-->{{{group20}}}</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;|<td colspan=2 style="}}<!--
-->{{#if:{{{groupwidth|}}}||width:100%;}}padding:0px;{{{liststyle|}}};{{{evenstyle|}}};{{{list20style|}}}" <!--
-->class="navbox-list navbox-{{#ifeq:{{{evenodd|}}}|swap|odd|{{{evenodd|even}}}}} {{{listclass|}}}"><!--
--><div style="padding:{{{listpadding|0em 0.25em}}}">
{{{list20}}}</div></td></tr>}}<!--
---Below---
-->{{#if:{{{below|}}}|<!--
-->{{#if:{{{title|}}}{{{above|}}}{{{list1|}}}{{{list2|}}}{{{list3|}}}|<tr style="height:2px;"><td></td></tr>}}<!--
--><tr><td class="navbox-abovebelow {{{belowclass|}}}" style="{{{basestyle|}}};{{{belowstyle|}}}" <!--
-->colspan="{{#expr:2{{#if:{{{imageleft|}}}|+1}}{{#if:{{{image|}}}|+1}}}}"><div>
{{{below}}}</div></td></tr>}}<!--
--></table>{{#switch:{{{border|{{{1|}}}}}}|subgroup|child=<div>|none=|#default=</td></tr></table>}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#ifeq:{{{border|{{{1|}}}}}}|child||{{#ifeq:{{{border|{{{1|}}}}}}|subgroup||{{#switch:{{lc:{{SUBPAGENAME}}}}
|doc
|sandbox
|testcases =
|#default = {{#switch:{{{bodyclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#switch:{{{listclass|}}}
|plainlist
|hlist
|hlist hnum
|hlist vcard
|vcard hlist =
|#default = {{#ifeq:{{{tracking|}}}|no||[[Category:Navigational boxes without horizontal lists]]}}
}}
}}
}}
}}}}}}<!--
-->{{#ifeq:{{NAMESPACE}}|{{ns:10}}|{{#switch:{{lc:{{SUBPAGENAME}}}}
|sandbox
|testcases =
|#default = {{#switch:{{{liststyle|}}}
|padding: 0.25em 0; line-height: 1.3em;
|padding:0.25em 0; line-height:1.4em; width:auto;
|padding:0.4em 0; line-height:1.4em; = [[Category:Navigational boxes with custom list spacing]]
|#default =
}}
}}}}<includeonly>{{template other|{{#if:{{{titlestyle|}}}{{{groupstyle|}}}|[[Category:Navboxes using background colours]]}}}}</includeonly><noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
8ewtyninvloe0f10jj9n3fm77jyq3ae
9813
9812
2013-03-26T02:45:11Z
w>Dragons flight
0
Installing Lua version
9813
wikitext
text/x-wiki
{{#invoke: Navbox | navbox }}<noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
lxoimlqslukeym1vcyobh3pyhtcmwci
9814
9731
2013-10-29T19:54:41Z
w>Mark Arsten
0
Changed protection level of Template:Navbox: Allowing Protected Template editors ([Edit=Allow only template editors and admins] (indefinite) [Move=Allow only template editors and admins] (indefinite))
9814
wikitext
text/x-wiki
{{#invoke: Navbox | navbox }}<noinclude>{{documentation}}<!-- Add categories and interwikis to the /doc sub-page --></noinclude>
lxoimlqslukeym1vcyobh3pyhtcmwci
9815
9732
2014-06-19T19:02:02Z
w>Edokter
0
NO reason to bunch on one line!
9815
wikitext
text/x-wiki
{{#invoke: Navbox | navbox }}<noinclude>
{{documentation}}
<!-- Add categories and interwikis to the /doc sub-page -->
</noinclude>
44zubrs25q6q1lt1z6910q72aj1hegg
9816
9815
2014-08-24T09:21:56Z
w>Sardanaphalus
0
includeonly
9816
wikitext
text/x-wiki
<includeonly>{{#invoke:Navbox|navbox}}</includeonly><noinclude>{{Documentation}}</noinclude>
dr9taljloc9vbjgtoyg2hsc6fu5njvp
9817
9816
2014-10-18T12:29:00Z
w>Edokter
0
linebreaks
9817
wikitext
text/x-wiki
<includeonly>{{#invoke:Navbox|navbox}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
tqodcaa2vvhehqaod229udlla0wimek
9818
9817
2020-04-01T06:12:36Z
w>MusikAnimal
0
1 revision imported
9817
wikitext
text/x-wiki
<includeonly>{{#invoke:Navbox|navbox}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
tqodcaa2vvhehqaod229udlla0wimek
9819
9818
2021-06-26T18:04:38Z
w>Trialpears
0
Listed for merging with [[:Template:Navbox Canada]]; see [[:Wikipedia:Templates for discussion/Log/2021 June 26#Template:Navbox Canada]].
9819
wikitext
text/x-wiki
{{Tfm/dated|page=Navbox|otherpage=Navbox Canada|link=Wikipedia:Templates for discussion/Log/2021 June 26#Template:Navbox|help=off|bigbox={{#invoke:Noinclude|noinclude|text=yes}}}}
<includeonly>{{#invoke:Navbox|navbox}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
bpd7la2708wv2xe2xxnw46fz0e3vx3e
9820
9733
2021-10-29T20:00:55Z
meta>GeneralNotability
0
87 revisions imported from [[:w:Template:Navbox]]: blame [[User:Barkeep49]]
9733
wikitext
text/x-wiki
{{#invoke: Navbox | navbox }}<noinclude>{{documentation}}</noinclude>
r559d18z5ouc3wiwuekakf5ihlqt7ws
9821
9032
2026-08-24T13:00:40Z
RAPTOR7762
18
98 revisions imported from [[:meta:Template:Navbox]]
9031
wikitext
text/x-wiki
<includeonly>{{#invoke:Navbox|navbox}}</includeonly><noinclude>
{{Documentation}}
</noinclude>
tqodcaa2vvhehqaod229udlla0wimek
Module:Navbox
828
1047
9830
2013-05-13T16:33:42Z
meta>Frietjes
0
imported from [[:en:Module:Navbox]]
9830
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
if5nsvmxdkb37mht3b6u1h5ouzk6htq
9831
9830
2013-05-13T16:43:04Z
meta>Frietjes
0
9831
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
9l6kirr0nabulnw56nbrrj7wwltbshk
9832
9831
2013-05-13T16:44:05Z
meta>Frietjes
0
9832
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
gmjf9fia4aoexssvna62ns5dfbwjx7x
9833
9832
2013-06-28T18:40:31Z
meta>Frietjes
0
9833
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
.css('border-left-color', '#fdfdfd')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
6akfe0bv4z85xmgkm9hjlsfuyj8i8n9
9834
9833
2013-06-28T20:26:58Z
meta>Frietjes
0
9834
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left', '2px solid #fdfdfd')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
ik4snwsm7mm6jqp4mhuw2y0xb3fj1hz
9835
9834
2014-07-07T00:54:05Z
meta>Verdy p
0
left/right alignments/margins/paddings are dependant on value of "dir" argument (="rtl" or "ltr", default is "ltr")
9835
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-' .. args.left, '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = args.right end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = args.left end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = args.right end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', args.left)
.css('border-' .. args.left, '2px solid #fdfdfd')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
if (args.dir ~= 'rtl') then
args.left = 'left'
args.right = 'right'
else
args.right = 'left'
args.left = 'right'
end
return p._navbox(args)
end
return p
136t41me8sj3v8xlv6lqj9rc3pznxf3
9836
9835
2014-07-07T01:01:42Z
meta>Verdy p
0
9836
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-' .. args.left, '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = args.right end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = args.left end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = args.right end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', args.left)
.css('border-' .. args.left, '2px solid #fdfdfd')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
if (args.dir ~= 'rtl') then
args.left = 'left'
args.right = 'right'
else
args.right = 'left'
args.left = 'right'
end
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
p5lcu4ef8tr4ht4whxdvomonda5gs3m
9837
9836
2015-06-24T02:41:00Z
meta>Jackmcbarn
0
update from enwiki
9837
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
0xz6w9qh3qly5ymbn3g095ijl4yfqxn
9838
9837
2018-05-17T10:54:19Z
meta>TheDJ
0
use mw-collapsed
9838
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
local state = args.state;
if state and state == 'collapsed' then
state = 'mw-collapsed'
end
tbl
:addClass('mw-collapsible')
:addClass(state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
lueokrd5tvdv7z282y8esj7lo7e35zu
9839
9838
2019-11-07T01:08:21Z
meta>MusikAnimal
0
Protected "[[Module:Navbox]]": High-risk Lua module ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
9838
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
local state = args.state;
if state and state == 'collapsed' then
state = 'mw-collapsed'
end
tbl
:addClass('mw-collapsible')
:addClass(state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
lueokrd5tvdv7z282y8esj7lo7e35zu
9840
9839
2021-04-01T12:49:35Z
meta>Tacsipacsi
0
add {{{lang}}} and {{{dir}}} parameters to accommodate to multilinguality
9840
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
:attr('lang', args.lang)
:attr('dir', args.dir or (args.lang and 'auto' or nil))
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
local state = args.state;
if state and state == 'collapsed' then
state = 'mw-collapsed'
end
tbl
:addClass('mw-collapsible')
:addClass(state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
3ryaegl66ic8ej1b5vptp9zotk9pt21
9841
9840
2021-07-05T20:52:52Z
meta>ExE Boss
0
Use [[mw:Special:MyLanguage/Help:TemplateStyles|TemplateStyles]] ([[Template:Flatlist/styles.css]] and [[Template:Plainlist/styles.css]])
9841
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
-- Separate function so that we can evaluate properly whether hlist should
-- be added by the module
local function has_navbar()
return not (
args.navbar == 'off'
or args.navbar == 'plain'
or (
not args.name
and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox'
)
)
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
-- there are a lot of list classes in the wild, so we have a function to find
-- them and add their TemplateStyles
local function addListStyles()
local frame = mw.getCurrentFrame()
-- TODO?: Should maybe take a table of classes for e.g. hnum, hwrap as above
-- I'm going to do the stupid thing first though
-- Also not sure hnum and hwrap are going to live in the same TemplateStyles
-- as hlist
local function _addListStyles(htmlclass, templatestyles)
local class_args = { -- rough order of probability of use
'bodyclass', 'listclass', 'aboveclass', 'belowclass', 'titleclass',
'navboxclass', 'groupclass', 'titlegroupclass', 'imageclass'
}
local patterns = {
'^' .. htmlclass .. '$',
'%s' .. htmlclass .. '$',
'^' .. htmlclass .. '%s',
'%s' .. htmlclass .. '%s'
}
local found = false
for _, arg in ipairs(class_args) do
for _, pattern in ipairs(patterns) do
if mw.ustring.find(args[arg] or '', pattern) then
found = true
break
end
end
if found then break end
end
if found then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
else
return ''
end
end
local hlist_styles = ''
-- navbar always has mini = 1, so here (on this wiki) we can assume that
-- we don't need to output hlist styles in navbox again.
if not has_navbar() then
hlist_styles = _addListStyles('hlist', 'Template:Flatlist/styles.css')
end
local plainlist_styles = _addListStyles('plainlist', 'Template:Plainlist/styles.css')
return hlist_styles .. plainlist_styles
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
:attr('lang', args.lang)
:attr('dir', args.dir or (args.lang and 'auto' or nil))
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
local state = args.state;
if state and state == 'collapsed' then
state = 'mw-collapsed'
end
tbl
:addClass('mw-collapsible')
:addClass(state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res
:wikitext(addListStyles())
:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:wikitext(addListStyles())
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:wikitext(addListStyles())
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
98sj4miuqmbmt9ovsoubzb61dbn7nmf
9842
9841
2021-07-07T14:29:07Z
meta>Tacsipacsi
0
adding the same TemplateStyles stylesheet twice doesn’t hurt, it’s deduplicated anyways, while calculating the same thing (whether there’s a navbar) twice inevitably leads these calculations to diverge at some point
9842
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
-- there are a lot of list classes in the wild, so we have a function to find
-- them and add their TemplateStyles
local function addListStyles()
local frame = mw.getCurrentFrame()
-- TODO?: Should maybe take a table of classes for e.g. hnum, hwrap as above
-- I'm going to do the stupid thing first though
-- Also not sure hnum and hwrap are going to live in the same TemplateStyles
-- as hlist
local function _addListStyles(htmlclass, templatestyles)
local class_args = { -- rough order of probability of use
'bodyclass', 'listclass', 'aboveclass', 'belowclass', 'titleclass',
'navboxclass', 'groupclass', 'titlegroupclass', 'imageclass'
}
local patterns = {
'^' .. htmlclass .. '$',
'%s' .. htmlclass .. '$',
'^' .. htmlclass .. '%s',
'%s' .. htmlclass .. '%s'
}
local found = false
for _, arg in ipairs(class_args) do
for _, pattern in ipairs(patterns) do
if mw.ustring.find(args[arg] or '', pattern) then
found = true
break
end
end
if found then break end
end
if found then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
else
return ''
end
end
local hlist_styles = _addListStyles('hlist', 'Template:Flatlist/styles.css')
local plainlist_styles = _addListStyles('plainlist', 'Template:Plainlist/styles.css')
return hlist_styles .. plainlist_styles
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
:attr('lang', args.lang)
:attr('dir', args.dir or (args.lang and 'auto' or nil))
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
local state = args.state;
if state and state == 'collapsed' then
state = 'mw-collapsed'
end
tbl
:addClass('mw-collapsible')
:addClass(state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res
:wikitext(addListStyles())
:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:wikitext(addListStyles())
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:wikitext(addListStyles())
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
dybtqkrazhidr0oonuj0ixbrkempa36
9843
9842
2021-08-23T18:01:09Z
meta>MusikBot II
0
Changed protection settings for "[[Module:Navbox]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9842
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
-- there are a lot of list classes in the wild, so we have a function to find
-- them and add their TemplateStyles
local function addListStyles()
local frame = mw.getCurrentFrame()
-- TODO?: Should maybe take a table of classes for e.g. hnum, hwrap as above
-- I'm going to do the stupid thing first though
-- Also not sure hnum and hwrap are going to live in the same TemplateStyles
-- as hlist
local function _addListStyles(htmlclass, templatestyles)
local class_args = { -- rough order of probability of use
'bodyclass', 'listclass', 'aboveclass', 'belowclass', 'titleclass',
'navboxclass', 'groupclass', 'titlegroupclass', 'imageclass'
}
local patterns = {
'^' .. htmlclass .. '$',
'%s' .. htmlclass .. '$',
'^' .. htmlclass .. '%s',
'%s' .. htmlclass .. '%s'
}
local found = false
for _, arg in ipairs(class_args) do
for _, pattern in ipairs(patterns) do
if mw.ustring.find(args[arg] or '', pattern) then
found = true
break
end
end
if found then break end
end
if found then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
else
return ''
end
end
local hlist_styles = _addListStyles('hlist', 'Template:Flatlist/styles.css')
local plainlist_styles = _addListStyles('plainlist', 'Template:Plainlist/styles.css')
return hlist_styles .. plainlist_styles
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
:attr('lang', args.lang)
:attr('dir', args.dir or (args.lang and 'auto' or nil))
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
local state = args.state;
if state and state == 'collapsed' then
state = 'mw-collapsed'
end
tbl
:addClass('mw-collapsible')
:addClass(state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res
:wikitext(addListStyles())
:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:wikitext(addListStyles())
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:wikitext(addListStyles())
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
dybtqkrazhidr0oonuj0ixbrkempa36
9844
2013-02-25T08:35:02Z
w>Toohool
0
[[WP:AES|←]]Created page with '-- -- This module will implement {{Navbox}} -- local p = {} local gutterRow = '<tr style="height:2px;"><td></td></tr>' local ret = {} function add(...) fo...'
9844
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local gutterRow = '<tr style="height:2px;"><td></td></tr>'
local ret = {}
function add(...)
for i, s in ipairs({...}) do
if s then
table.insert(ret, s)
end
end
end
function renderList(args, listnum)
if args.title or args.above or args.list1 then
add(gutterRow)
end
add('<tr>')
if args['group' .. listnum] then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args['group' .. listnum .. 'style'], '">')
add(args['group' .. listnum])
add('</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
add('padding:0px;', args.liststyle, ';', rowstyle, ';', args['list' .. listnum .. 'style'], '" ')
add('class="navbox-list navbox-')
if args.evenodd == 'swap' then
if isOdd then add('even') else add('odd') end
else
if isOdd then add(args.evenodd or 'odd') else add(args.evenodd or 'even') end
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.listpadding or '0em 0.25em', '">', args['list' .. listnum], '</div></td></tr>')
end
function p._navbox(args)
local listnums = {}
for k, v in pairs(args) do
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
local border = args.border or args[1]
if border == 'subgroup' or border == 'child' then
add('</div>')
elseif border ~= 'none' then
add('<table cellspacing="0" class="navbox" style="border-spacing:0;', args.bodystyle, ';', args.style, '"><tr><td style="padding:2px;">')
end
add('<table cellspacing="0" class="nowraplinks ', args.bodyclass, ' ')
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
add('collapsible ', args.state or 'autocollapse', ' ')
end
if border == 'subgroup' or border == 'child' or border == 'none' then
add('navbox-subgroup" style="border-spacing:0;', args.bodystyle, ';', args.style)
else
add('navbox-inner" style="border-spacing:0;background:transparent;color:inherit')
end
add(';', args.innerstyle, ';">')
if args.title then
if args.titlegroup then
add('<th scope="row" class="navbox-group ', args.titlegroupclass, '" style="', args.basestyle, ';', args.groupstyle, ';', args.titlegroupstyle, '">', args.titlegroup, '</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;')
else
add('<th scope="col" style="')
end
local colspan = 2
if args.imageleft then colspan = colspan + 1 end
if args.image then colspan = colspan + 1 end
if args.titlegroup then colspan = colspan - 1 end
add(args.basestyle, ';', args.titlestyle, '" class="navbox-title" colspan=', colspan, '>')
local stateLinkPlaceholder = '<span style="float:right;width:6em;"> </span>'
if args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
if args.navbar == 'off' then
if args.state == 'plain' then add(stateLinkPlaceholder) end
else
if args.state ~= 'plain' then add(stateLinkPlaceholder) end
end
else
if args.name then
add(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
add('<span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>')
if args.state == 'plain' then add(stateLinkPlaceholder) end
end
end
add('<div class="', args.titleclass, '" style="font-size:110%;">')
add(args.title)
add('</div></th></tr>')
end
local aboveBelowColspan = 2
if args.imageleft then aboveBelowColspan = aboveBelowColspan + 1 end
if args.image then aboveBelowColspan = aboveBelowColspan + 1 end
if args.above then
if args.title then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.aboveclass, '" style="', args.basestyle, ';', args.abovestyle, '" colspan="', aboveBelowColspan, '">')
add('<div>', args.above, '</div></td></tr>')
end
if args.list1 then
if args.title or args.above then add(gutterRow) end
add('<tr>')
if args.imageleft then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 2px 0px 0px;', args.imageleftstyle, '"')
add(' rowspan=', (2 * #listnums - 1), '><div>', args.imageleft, '</div></td>')
end
if args.group1 then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args.group1style, '">')
add(args.group1, '</th>')
add('<td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
add('padding:0px;', args.liststyle, ';', args.oddstyle, ';', args.list1style, '" class="navbox-list navbox-')
if args.evenodd == 'swap' then
add('even')
else
add(args.evenodd or 'odd')
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.list1padding or args.listpadding or '0em 0.25em', '">')
add(args.list1)
add('</div></td>')
if args.image then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 0px 0px 2px;', args.imagestyle, '" ')
add(' rowspan=', (2 * #listnums - 1), '>')
add('<div>', args.image, '</div></td>')
end
add('</tr>')
end
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderList(args, listnum)
end
end
if args.below then
if args.title or args.above or #listnums > 0 then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.belowclass, '" style="', args.basestyle, ';', args.belowstyle, '" colspan="', aboveBelowColspan, '">')
add('<div>', args.below, '</div></td></tr>')
end
add('</table>')
if border == 'subgroup' or border == 'child' then
add('<div>')
elseif border ~= 'none' then
add('</td></tr></table>')
end
-- TODO: add tracking categories
return table.concat(ret, '')
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
a0pfzmb46jf8slic3w739o77x7np4o6
9845
9844
2013-02-25T08:49:10Z
w>Toohool
0
refactoring
9845
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local gutterRow = '<tr style="height:2px;"><td></td></tr>'
local ret = {}
function add(...)
for i, s in ipairs({...}) do
if s then
table.insert(ret, s)
end
end
end
function renderTitleRow(args)
if not args.title then return end
add('<tr>')
if args.titlegroup then
add('<th scope="row" class="navbox-group ', args.titlegroupclass, '" style="', args.basestyle, ';', args.groupstyle, ';', args.titlegroupstyle, '">', args.titlegroup, '</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;')
else
add('<th scope="col" style="')
end
local colspan = 2
if args.imageleft then colspan = colspan + 1 end
if args.image then colspan = colspan + 1 end
if args.titlegroup then colspan = colspan - 1 end
add(args.basestyle, ';', args.titlestyle, '" class="navbox-title" colspan=', colspan, '>')
local stateLinkPlaceholder = '<span style="float:right;width:6em;"> </span>'
if args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
if args.navbar == 'off' then
if args.state == 'plain' then add(stateLinkPlaceholder) end
else
if args.state ~= 'plain' then add(stateLinkPlaceholder) end
end
else
if args.name then
add(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
add('<span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>')
if args.state == 'plain' then add(stateLinkPlaceholder) end
end
end
add('<div class="', args.titleclass, '" style="font-size:110%;">')
add(args.title)
add('</div></th></tr>')
end
function renderAboveRow(args)
if not args.above then return end
if args.title then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.aboveclass, '" style="', args.basestyle, ';', args.abovestyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>', args.above, '</div></td></tr>')
end
function renderBelowRow(args)
if args.below then
if args.title or args.above or #listnums > 0 then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.belowclass, '" style="', args.basestyle, ';', args.belowstyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>', args.below, '</div></td></tr>')
end
end
function getAboveBelowColspan(args)
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
function renderFirstListRow(args)
if not args.list1 then return end
if args.title or args.above then add(gutterRow) end
add('<tr>')
if args.imageleft then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 2px 0px 0px;', args.imageleftstyle, '"')
add(' rowspan=', (2 * #listnums - 1), '><div>', args.imageleft, '</div></td>')
end
if args.group1 then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args.group1style, '">')
add(args.group1, '</th>')
add('<td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
add('padding:0px;', args.liststyle, ';', args.oddstyle, ';', args.list1style, '" class="navbox-list navbox-')
if args.evenodd == 'swap' then
add('even')
else
add(args.evenodd or 'odd')
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.list1padding or args.listpadding or '0em 0.25em', '">')
add(args.list1)
add('</div></td>')
if args.image then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 0px 0px 2px;', args.imagestyle, '" ')
add(' rowspan=', (2 * #listnums - 1), '>')
add('<div>', args.image, '</div></td>')
end
add('</tr>')
end
function renderNthListRow(args, listnum)
if args.title or args.above or args.list1 then
add(gutterRow)
end
add('<tr>')
if args['group' .. listnum] then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args['group' .. listnum .. 'style'], '">')
add(args['group' .. listnum])
add('</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
add('padding:0px;', args.liststyle, ';', rowstyle, ';', args['list' .. listnum .. 'style'], '" ')
add('class="navbox-list navbox-')
if args.evenodd == 'swap' then
if isOdd then add('even') else add('odd') end
else
if isOdd then add(args.evenodd or 'odd') else add(args.evenodd or 'even') end
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.listpadding or '0em 0.25em', '">', args['list' .. listnum], '</div></td></tr>')
end
function p._navbox(args)
local listnums = {}
for k, v in pairs(args) do
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
local border = args.border or args[1]
if border == 'subgroup' or border == 'child' then
add('</div>')
elseif border ~= 'none' then
add('<table cellspacing="0" class="navbox" style="border-spacing:0;', args.bodystyle, ';', args.style, '"><tr><td style="padding:2px;">')
end
add('<table cellspacing="0" class="nowraplinks ', args.bodyclass, ' ')
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
add('collapsible ', args.state or 'autocollapse', ' ')
end
if border == 'subgroup' or border == 'child' or border == 'none' then
add('navbox-subgroup" style="border-spacing:0;', args.bodystyle, ';', args.style)
else
add('navbox-inner" style="border-spacing:0;background:transparent;color:inherit')
end
add(';', args.innerstyle, ';">')
renderTitleRow(args)
renderAboveRow(args)
renderFirstListRow(args)
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderNthListRow(args, listnum)
end
end
renderBelowRow(args)
add('</table>')
if border == 'subgroup' or border == 'child' then
add('<div>')
elseif border ~= 'none' then
add('</td></tr></table>')
end
-- TODO: add tracking categories
return table.concat(ret, '')
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
nu7tggez2rsv8f5i43wxu5lknfwbpig
9846
9845
2013-02-25T20:38:25Z
w>Toohool
0
fix string building
9846
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local gutterRow = '<tr style="height:2px;"><td></td></tr>'
local ret = {}
function add(...)
local args = {...}
for i = 1, #args do
if args[i] then
table.insert(ret, args[i])
end
end
end
function renderTitleRow(args)
if not args.title then return end
add('<tr>')
if args.titlegroup then
add('<th scope="row" class="navbox-group ', args.titlegroupclass, '" style="', args.basestyle, ';', args.groupstyle, ';', args.titlegroupstyle, '">', args.titlegroup, '</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;')
else
add('<th scope="col" style="')
end
local colspan = 2
if args.imageleft then colspan = colspan + 1 end
if args.image then colspan = colspan + 1 end
if args.titlegroup then colspan = colspan - 1 end
add(args.basestyle, ';', args.titlestyle, '" class="navbox-title" colspan=', colspan, '>')
local stateLinkPlaceholder = '<span style="float:right;width:6em;"> </span>'
if args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
if args.navbar == 'off' then
if args.state == 'plain' then add(stateLinkPlaceholder) end
else
if args.state ~= 'plain' then add(stateLinkPlaceholder) end
end
else
if args.name then
add(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
add('<span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>')
if args.state == 'plain' then add(stateLinkPlaceholder) end
end
end
add('<div class="', args.titleclass, '" style="font-size:110%;">')
add(args.title)
add('</div></th></tr>')
end
function renderAboveRow(args)
if not args.above then return end
if args.title then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.aboveclass, '" style="', args.basestyle, ';', args.abovestyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>', args.above, '</div></td></tr>')
end
function renderBelowRow(args)
if args.below then
if args.title or args.above or #listnums > 0 then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.belowclass, '" style="', args.basestyle, ';', args.belowstyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>', args.below, '</div></td></tr>')
end
end
function getAboveBelowColspan(args)
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
function renderFirstListRow(args)
if not args.list1 then return end
if args.title or args.above then add(gutterRow) end
add('<tr>')
if args.imageleft then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 2px 0px 0px;', args.imageleftstyle, '"')
add(' rowspan=', (2 * #listnums - 1), '><div>', args.imageleft, '</div></td>')
end
if args.group1 then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args.group1style, '">')
add(args.group1, '</th>')
add('<td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
add('padding:0px;', args.liststyle, ';', args.oddstyle, ';', args.list1style, '" class="navbox-list navbox-')
if args.evenodd == 'swap' then
add('even')
else
add(args.evenodd or 'odd')
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.list1padding or args.listpadding or '0em 0.25em', '">')
add(args.list1)
add('</div></td>')
if args.image then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 0px 0px 2px;', args.imagestyle, '" ')
add(' rowspan=', (2 * #listnums - 1), '>')
add('<div>', args.image, '</div></td>')
end
add('</tr>')
end
function renderNthListRow(args, listnum)
if args.title or args.above or args.list1 then
add(gutterRow)
end
add('<tr>')
if args['group' .. listnum] then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args['group' .. listnum .. 'style'], '">')
add(args['group' .. listnum])
add('</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
add('padding:0px;', args.liststyle, ';', rowstyle, ';', args['list' .. listnum .. 'style'], '" ')
add('class="navbox-list navbox-')
if args.evenodd == 'swap' then
if isOdd then add('even') else add('odd') end
else
if isOdd then add(args.evenodd or 'odd') else add(args.evenodd or 'even') end
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.listpadding or '0em 0.25em', '">', args['list' .. listnum], '</div></td></tr>')
end
function p._navbox(args)
local listnums = {}
for k, v in pairs(args) do
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
local border = args.border or args[1]
if border == 'subgroup' or border == 'child' then
add('</div>')
elseif border ~= 'none' then
add('<table cellspacing="0" class="navbox" style="border-spacing:0;', args.bodystyle, ';', args.style, '"><tr><td style="padding:2px;">')
end
add('<table cellspacing="0" class="nowraplinks ', args.bodyclass, ' ')
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
add('collapsible ', args.state or 'autocollapse', ' ')
end
if border == 'subgroup' or border == 'child' or border == 'none' then
add('navbox-subgroup" style="border-spacing:0;', args.bodystyle, ';', args.style)
else
add('navbox-inner" style="border-spacing:0;background:transparent;color:inherit')
end
add(';', args.innerstyle, ';">')
renderTitleRow(args)
renderAboveRow(args)
renderFirstListRow(args)
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderNthListRow(args, listnum)
end
end
renderBelowRow(args)
add('</table>')
if border == 'subgroup' or border == 'child' then
add('<div>')
elseif border ~= 'none' then
add('</td></tr></table>')
end
-- TODO: add tracking categories
return table.concat(ret, '')
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
pv1iai2tuiayw1p3g5xasfkn4dmx1sh
9847
9846
2013-02-25T21:15:29Z
w>Toohool
0
fix errors
9847
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local gutterRow = '<tr style="height:2px;"><td></td></tr>'
local listnums = {}
local ret = {}
function add(...)
local args = {...}
for i = 1, #args do
if args[i] then
table.insert(ret, args[i])
end
end
end
function renderTitleRow(args)
if not args.title then return end
add('<tr>')
if args.titlegroup then
add('<th scope="row" class="navbox-group ', args.titlegroupclass, '" style="', args.basestyle, ';', args.groupstyle, ';', args.titlegroupstyle, '">', args.titlegroup, '</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;')
else
add('<th scope="col" style="')
end
local colspan = 2
if args.imageleft then colspan = colspan + 1 end
if args.image then colspan = colspan + 1 end
if args.titlegroup then colspan = colspan - 1 end
add(args.basestyle, ';', args.titlestyle, '" class="navbox-title" colspan=', colspan, '>')
local stateLinkPlaceholder = '<span style="float:right;width:6em;"> </span>'
if args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
if args.navbar == 'off' then
if args.state == 'plain' then add(stateLinkPlaceholder) end
else
if args.state ~= 'plain' then add(stateLinkPlaceholder) end
end
else
if args.name then
add(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
add('<span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>')
if args.state == 'plain' then add(stateLinkPlaceholder) end
end
end
add('<div class="', args.titleclass, '" style="font-size:110%;">')
add(args.title)
add('</div></th></tr>')
end
function renderAboveRow(args)
if not args.above then return end
if args.title then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.aboveclass, '" style="', args.basestyle, ';', args.abovestyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>', args.above, '</div></td></tr>')
end
function renderBelowRow(args)
if args.below then
if args.title or args.above or #listnums > 0 then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.belowclass, '" style="', args.basestyle, ';', args.belowstyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>', args.below, '</div></td></tr>')
end
end
function getAboveBelowColspan(args)
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
function renderFirstListRow(args)
if not args.list1 then return end
if args.title or args.above then add(gutterRow) end
add('<tr>')
if args.imageleft then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 2px 0px 0px;', args.imageleftstyle, '"')
add(' rowspan=', (2 * #listnums - 1), '><div>', args.imageleft, '</div></td>')
end
if args.group1 then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args.group1style, '">')
add(args.group1, '</th>')
add('<td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
add('padding:0px;', args.liststyle, ';', args.oddstyle, ';', args.list1style, '" class="navbox-list navbox-')
if args.evenodd == 'swap' then
add('even')
else
add(args.evenodd or 'odd')
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.list1padding or args.listpadding or '0em 0.25em', '">')
add(args.list1)
add('</div></td>')
if args.image then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 0px 0px 2px;', args.imagestyle, '" ')
add(' rowspan=', (2 * #listnums - 1), '>')
add('<div>', args.image, '</div></td>')
end
add('</tr>')
end
function renderNthListRow(args, listnum)
if args.title or args.above or args.list1 then
add(gutterRow)
end
add('<tr>')
if args['group' .. listnum] then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args['group' .. listnum .. 'style'], '">')
add(args['group' .. listnum])
add('</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
add('padding:0px;', args.liststyle, ';', rowstyle, ';', args['list' .. listnum .. 'style'], '" ')
add('class="navbox-list navbox-')
if args.evenodd == 'swap' then
if isOdd then add('even') else add('odd') end
else
if isOdd then add(args.evenodd or 'odd') else add(args.evenodd or 'even') end
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.listpadding or '0em 0.25em', '">', args['list' .. listnum], '</div></td></tr>')
end
function p._navbox(args)
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
local border = args.border or args[1]
if border == 'subgroup' or border == 'child' then
add('</div>')
elseif border ~= 'none' then
add('<table cellspacing="0" class="navbox" style="border-spacing:0;', args.bodystyle, ';', args.style, '"><tr><td style="padding:2px;">')
end
add('<table cellspacing="0" class="nowraplinks ', args.bodyclass, ' ')
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
add('collapsible ', args.state or 'autocollapse', ' ')
end
if border == 'subgroup' or border == 'child' or border == 'none' then
add('navbox-subgroup" style="border-spacing:0;', args.bodystyle, ';', args.style)
else
add('navbox-inner" style="border-spacing:0;background:transparent;color:inherit')
end
add(';', args.innerstyle, ';">')
renderTitleRow(args)
renderAboveRow(args)
renderFirstListRow(args)
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderNthListRow(args, listnum)
end
end
renderBelowRow(args)
add('</table>')
if border == 'subgroup' or border == 'child' then
add('<div>')
elseif border ~= 'none' then
add('</td></tr></table>')
end
-- TODO: add tracking categories
return table.concat(ret, '')
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
htxn6kseqegk97v5rvi8c5nitf025jk
9848
9847
2013-02-25T23:08:05Z
w>WOSlinker
0
add \n to make navboxes with class hlist work for fist item in list
9848
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local gutterRow = '<tr style="height:2px;"><td></td></tr>'
local listnums = {}
local ret = {}
function add(...)
local args = {...}
for i = 1, #args do
if args[i] then
table.insert(ret, args[i])
end
end
end
function renderTitleRow(args)
if not args.title then return end
add('<tr>')
if args.titlegroup then
add('<th scope="row" class="navbox-group ', args.titlegroupclass, '" style="', args.basestyle, ';', args.groupstyle, ';', args.titlegroupstyle, '">', args.titlegroup, '</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;')
else
add('<th scope="col" style="')
end
local colspan = 2
if args.imageleft then colspan = colspan + 1 end
if args.image then colspan = colspan + 1 end
if args.titlegroup then colspan = colspan - 1 end
add(args.basestyle, ';', args.titlestyle, '" class="navbox-title" colspan=', colspan, '>')
local stateLinkPlaceholder = '<span style="float:right;width:6em;"> </span>'
if args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
if args.navbar == 'off' then
if args.state == 'plain' then add(stateLinkPlaceholder) end
else
if args.state ~= 'plain' then add(stateLinkPlaceholder) end
end
else
if args.name then
add(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
add('<span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>')
if args.state == 'plain' then add(stateLinkPlaceholder) end
end
end
add('<div class="', args.titleclass, '" style="font-size:110%;">')
add(args.title)
add('</div></th></tr>')
end
function renderAboveRow(args)
if not args.above then return end
if args.title then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.aboveclass, '" style="', args.basestyle, ';', args.abovestyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>\n', args.above, '</div></td></tr>')
end
function renderBelowRow(args)
if args.below then
if args.title or args.above or #listnums > 0 then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.belowclass, '" style="', args.basestyle, ';', args.belowstyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>\n', args.below, '</div></td></tr>')
end
end
function getAboveBelowColspan(args)
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
function renderFirstListRow(args)
if not args.list1 then return end
if args.title or args.above then add(gutterRow) end
add('<tr>')
if args.imageleft then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 2px 0px 0px;', args.imageleftstyle, '"')
add(' rowspan=', (2 * #listnums - 1), '><div>', args.imageleft, '</div></td>')
end
if args.group1 then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args.group1style, '">')
add(args.group1, '</th>')
add('<td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
add('padding:0px;', args.liststyle, ';', args.oddstyle, ';', args.list1style, '" class="navbox-list navbox-')
if args.evenodd == 'swap' then
add('even')
else
add(args.evenodd or 'odd')
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.list1padding or args.listpadding or '0em 0.25em', '">\n')
add(args.list1)
add('</div></td>')
if args.image then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 0px 0px 2px;', args.imagestyle, '" ')
add(' rowspan=', (2 * #listnums - 1), '>')
add('<div>', args.image, '</div></td>')
end
add('</tr>')
end
function renderNthListRow(args, listnum)
if args.title or args.above or args.list1 then
add(gutterRow)
end
add('<tr>')
if args['group' .. listnum] then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args['group' .. listnum .. 'style'], '">')
add(args['group' .. listnum])
add('</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
add('padding:0px;', args.liststyle, ';', rowstyle, ';', args['list' .. listnum .. 'style'], '" ')
add('class="navbox-list navbox-')
if args.evenodd == 'swap' then
if isOdd then add('even') else add('odd') end
else
if isOdd then add(args.evenodd or 'odd') else add(args.evenodd or 'even') end
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.listpadding or '0em 0.25em', '">\n', args['list' .. listnum], '</div></td></tr>')
end
function p._navbox(args)
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
local border = args.border or args[1]
if border == 'subgroup' or border == 'child' then
add('</div>')
elseif border ~= 'none' then
add('<table cellspacing="0" class="navbox" style="border-spacing:0;', args.bodystyle, ';', args.style, '"><tr><td style="padding:2px;">')
end
add('<table cellspacing="0" class="nowraplinks ', args.bodyclass, ' ')
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
add('collapsible ', args.state or 'autocollapse', ' ')
end
if border == 'subgroup' or border == 'child' or border == 'none' then
add('navbox-subgroup" style="border-spacing:0;', args.bodystyle, ';', args.style)
else
add('navbox-inner" style="border-spacing:0;background:transparent;color:inherit')
end
add(';', args.innerstyle, ';">')
renderTitleRow(args)
renderAboveRow(args)
renderFirstListRow(args)
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderNthListRow(args, listnum)
end
end
renderBelowRow(args)
add('</table>')
if border == 'subgroup' or border == 'child' then
add('<div>')
elseif border ~= 'none' then
add('</td></tr></table>')
end
-- TODO: add tracking categories
return table.concat(ret, '')
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
2vf1cnwubqeqtl5gb5k34701zn339h6
9849
9848
2013-02-27T05:22:15Z
w>Toohool
0
fix handling of the border param
9849
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local gutterRow = '<tr style="height:2px;"><td></td></tr>'
local border
local listnums = {}
local ret = {}
function add(...)
local args = {...}
for i = 1, #args do
if args[i] then
table.insert(ret, args[i])
end
end
end
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function renderTitleRow(args)
if not args.title then return end
add('<tr>')
if args.titlegroup then
add('<th scope="row" class="navbox-group ', args.titlegroupclass, '" style="', args.basestyle, ';', args.groupstyle, ';', args.titlegroupstyle, '">', args.titlegroup, '</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;')
else
add('<th scope="col" style="')
end
local colspan = 2
if args.imageleft then colspan = colspan + 1 end
if args.image then colspan = colspan + 1 end
if args.titlegroup then colspan = colspan - 1 end
add(args.basestyle, ';', args.titlestyle, '" class="navbox-title" colspan=', colspan, '>')
local stateLinkPlaceholder = '<span style="float:right;width:6em;"> </span>'
if args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
if args.navbar == 'off' then
if args.state == 'plain' then add(stateLinkPlaceholder) end
else
if args.state ~= 'plain' then add(stateLinkPlaceholder) end
end
else
if args.name then
add(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
add('<span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>')
if args.state == 'plain' then add(stateLinkPlaceholder) end
end
end
add('<div class="', args.titleclass, '" style="font-size:110%;">')
add(args.title)
add('</div></th></tr>')
end
function renderAboveRow(args)
if not args.above then return end
if args.title then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.aboveclass, '" style="', args.basestyle, ';', args.abovestyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>\n', args.above, '</div></td></tr>')
end
function renderBelowRow(args)
if args.below then
if args.title or args.above or #listnums > 0 then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.belowclass, '" style="', args.basestyle, ';', args.belowstyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>\n', args.below, '</div></td></tr>')
end
end
function getAboveBelowColspan(args)
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
function renderFirstListRow(args)
if not args.list1 then return end
if args.title or args.above then add(gutterRow) end
add('<tr>')
if args.imageleft then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 2px 0px 0px;', args.imageleftstyle, '"')
add(' rowspan=', (2 * #listnums - 1), '><div>', args.imageleft, '</div></td>')
end
if args.group1 then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args.group1style, '">')
add(args.group1, '</th>')
add('<td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
add('padding:0px;', args.liststyle, ';', args.oddstyle, ';', args.list1style, '" class="navbox-list navbox-')
if args.evenodd == 'swap' then
add('even')
else
add(args.evenodd or 'odd')
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.list1padding or args.listpadding or '0em 0.25em', '">\n')
add(args.list1)
add('</div></td>')
if args.image then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 0px 0px 2px;', args.imagestyle, '" ')
add(' rowspan=', (2 * #listnums - 1), '>')
add('<div>', args.image, '</div></td>')
end
add('</tr>')
end
function renderNthListRow(args, listnum)
if args.title or args.above or args.list1 then
add(gutterRow)
end
add('<tr>')
if args['group' .. listnum] then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args['group' .. listnum .. 'style'], '">')
add(args['group' .. listnum])
add('</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
add('padding:0px;', args.liststyle, ';', rowstyle, ';', args['list' .. listnum .. 'style'], '" ')
add('class="navbox-list navbox-')
if args.evenodd == 'swap' then
if isOdd then add('even') else add('odd') end
else
if isOdd then add(args.evenodd or 'odd') else add(args.evenodd or 'even') end
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.listpadding or '0em 0.25em', '">\n', args['list' .. listnum], '</div></td></tr>')
end
function p._navbox(args)
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
if border == 'subgroup' or border == 'child' then
add('</div>')
elseif border ~= 'none' then
add('<table cellspacing="0" class="navbox" style="border-spacing:0;', args.bodystyle, ';', args.style, '"><tr><td style="padding:2px;">')
end
add('<table cellspacing="0" class="nowraplinks ', args.bodyclass, ' ')
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
add('collapsible ', args.state or 'autocollapse', ' ')
end
if border == 'subgroup' or border == 'child' or border == 'none' then
add('navbox-subgroup" style="border-spacing:0;', args.bodystyle, ';', args.style)
else
add('navbox-inner" style="border-spacing:0;background:transparent;color:inherit')
end
add(';', args.innerstyle, ';">')
renderTitleRow(args)
renderAboveRow(args)
renderFirstListRow(args)
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderNthListRow(args, listnum)
end
end
renderBelowRow(args)
add('</table>')
if border == 'subgroup' or border == 'child' then
add('<div>')
elseif border ~= 'none' then
add('</td></tr></table>')
end
-- TODO: add tracking categories
return table.concat(ret, '')
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
2zfb8cqpcr948pcfqqhbq67l6x58h05
9850
9849
2013-02-27T08:30:39Z
w>Toohool
0
fix for lists in image and imageleft
9850
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local gutterRow = '<tr style="height:2px;"><td></td></tr>'
local border
local listnums = {}
local ret = {}
function add(...)
local args = {...}
for i = 1, #args do
if args[i] then
table.insert(ret, args[i])
end
end
end
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function renderTitleRow(args)
if not args.title then return end
add('<tr>')
if args.titlegroup then
add('<th scope="row" class="navbox-group ', args.titlegroupclass, '" style="', args.basestyle, ';', args.groupstyle, ';', args.titlegroupstyle, '">', args.titlegroup, '</th><th scope="col" style="border-left:2px solid #fdfdfd;width:100%;')
else
add('<th scope="col" style="')
end
local colspan = 2
if args.imageleft then colspan = colspan + 1 end
if args.image then colspan = colspan + 1 end
if args.titlegroup then colspan = colspan - 1 end
add(args.basestyle, ';', args.titlestyle, '" class="navbox-title" colspan=', colspan, '>')
local stateLinkPlaceholder = '<span style="float:right;width:6em;"> </span>'
if args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
if args.navbar == 'off' then
if args.state == 'plain' then add(stateLinkPlaceholder) end
else
if args.state ~= 'plain' then add(stateLinkPlaceholder) end
end
else
if args.name then
add(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
add('<span class="error" style="float:left;white-space:nowrap;">Error: No name provided</span>')
if args.state == 'plain' then add(stateLinkPlaceholder) end
end
end
add('<div class="', args.titleclass, '" style="font-size:110%;">')
add(args.title)
add('</div></th></tr>')
end
function renderAboveRow(args)
if not args.above then return end
if args.title then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.aboveclass, '" style="', args.basestyle, ';', args.abovestyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>\n', args.above, '</div></td></tr>')
end
function renderBelowRow(args)
if args.below then
if args.title or args.above or #listnums > 0 then add(gutterRow) end
add('<tr><td class="navbox-abovebelow ', args.belowclass, '" style="', args.basestyle, ';', args.belowstyle, '" colspan="', getAboveBelowColspan(args), '">')
add('<div>\n', args.below, '</div></td></tr>')
end
end
function getAboveBelowColspan(args)
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
function renderFirstListRow(args)
if not args.list1 then return end
if args.title or args.above then add(gutterRow) end
add('<tr>')
if args.imageleft then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 2px 0px 0px;', args.imageleftstyle, '"')
add(' rowspan=', (2 * #listnums - 1), '><div>\n', args.imageleft, '</div></td>')
end
if args.group1 then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args.group1style, '">')
add(args.group1, '</th>')
add('<td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
add('padding:0px;', args.liststyle, ';', args.oddstyle, ';', args.list1style, '" class="navbox-list navbox-')
if args.evenodd == 'swap' then
add('even')
else
add(args.evenodd or 'odd')
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.list1padding or args.listpadding or '0em 0.25em', '">\n')
add(args.list1)
add('</div></td>')
if args.image then
add('<td class="navbox-image ', args.imageclass, '" style="width:0%;padding:0px 0px 0px 2px;', args.imagestyle, '" ')
add(' rowspan=', (2 * #listnums - 1), '>')
add('<div>\n', args.image, '</div></td>')
end
add('</tr>')
end
function renderNthListRow(args, listnum)
if args.title or args.above or args.list1 then
add(gutterRow)
end
add('<tr>')
if args['group' .. listnum] then
add('<th scope="row" class="navbox-group ', args.groupclass, '" style="', args.basestyle, ';')
if args.groupwidth then add('width:', args.groupwidth, ';') end
add(args.groupstyle, ';', args['group' .. listnum .. 'style'], '">')
add(args['group' .. listnum])
add('</th><td style="text-align:left;border-left-width:2px;border-left-style:solid;')
else
add('<td colspan=2 style="')
end
if not args.groupwidth then add('width:100%;') end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
add('padding:0px;', args.liststyle, ';', rowstyle, ';', args['list' .. listnum .. 'style'], '" ')
add('class="navbox-list navbox-')
if args.evenodd == 'swap' then
if isOdd then add('even') else add('odd') end
else
if isOdd then add(args.evenodd or 'odd') else add(args.evenodd or 'even') end
end
add(' ', args.listclass, '">')
add('<div style="padding:', args.listpadding or '0em 0.25em', '">\n', args['list' .. listnum], '</div></td></tr>')
end
function p._navbox(args)
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
if border == 'subgroup' or border == 'child' then
add('</div>')
elseif border ~= 'none' then
add('<table cellspacing="0" class="navbox" style="border-spacing:0;', args.bodystyle, ';', args.style, '"><tr><td style="padding:2px;">')
end
add('<table cellspacing="0" class="nowraplinks ', args.bodyclass, ' ')
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
add('collapsible ', args.state or 'autocollapse', ' ')
end
if border == 'subgroup' or border == 'child' or border == 'none' then
add('navbox-subgroup" style="border-spacing:0;', args.bodystyle, ';', args.style)
else
add('navbox-inner" style="border-spacing:0;background:transparent;color:inherit')
end
add(';', args.innerstyle, ';">')
renderTitleRow(args)
renderAboveRow(args)
renderFirstListRow(args)
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderNthListRow(args, listnum)
end
end
renderBelowRow(args)
add('</table>')
if border == 'subgroup' or border == 'child' then
add('<div>')
elseif border ~= 'none' then
add('</td></tr></table>')
end
-- TODO: add tracking categories
return table.concat(ret, '')
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
jnqanbvnv1sg01b7p1cfklb5l9ihvie
9851
9850
2013-03-01T04:36:41Z
w>Toohool
0
rewrite with htmlbuilder
9851
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:Sandbox/Toohool/HtmlBuilder')
local args
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
local addStateLinkPlaceholder = false
if args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
if args.navbar == 'off' then
addStateLinkPlaceholder = (args.state == 'plain')
else
addStateLinkPlaceholder = (args.state ~= 'plain')
end
else
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
addStateLinkPlaceholder = (args.state == 'plain')
end
end
if addStateLinkPlaceholder then
titleCell
.tag('span')
.css('float', 'right')
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderFirstListRow(tbl)
if not args.list1 then return end
local row = addTableRow(tbl)
if args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args.group1 then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args.group1style)
.wikitext(args.group1)
end
local listCell = row.tag('td')
if args.group1 then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local evenOdd = args.evenodd or 'odd'
if args.evenodd == 'swap' then evenOdd = 'even' end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(args.oddstyle)
.cssText(args.list1style)
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.list1padding or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args.list1)
if args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
function renderNthListRow(tbl, listnum)
local row = addTableRow(tbl)
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
renderFirstListRow(tbl)
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderNthListRow(tbl, listnum)
end
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'subgroup' or border == 'child' then
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
elseif border ~= 'none' then
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
-- TODO: add tracking categories
return tostring(res)
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
2kp4abeq87yq89jq1jodusin6p273e3
9852
9851
2013-03-01T05:37:29Z
w>Toohool
0
whitespace
9852
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:Sandbox/Toohool/HtmlBuilder')
local args
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
local addStateLinkPlaceholder = false
if args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
if args.navbar == 'off' then
addStateLinkPlaceholder = (args.state == 'plain')
else
addStateLinkPlaceholder = (args.state ~= 'plain')
end
else
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
addStateLinkPlaceholder = (args.state == 'plain')
end
end
if addStateLinkPlaceholder then
titleCell
.tag('span')
.css('float', 'right')
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderFirstListRow(tbl)
if not args.list1 then return end
local row = addTableRow(tbl)
if args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args.group1 then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args.group1style)
.wikitext(args.group1)
end
local listCell = row.tag('td')
if args.group1 then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local evenOdd = args.evenodd or 'odd'
if args.evenodd == 'swap' then evenOdd = 'even' end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(args.oddstyle)
.cssText(args.list1style)
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.list1padding or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args.list1)
if args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
function renderNthListRow(tbl, listnum)
local row = addTableRow(tbl)
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
renderFirstListRow(tbl)
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderNthListRow(tbl, listnum)
end
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'subgroup' or border == 'child' then
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
elseif border ~= 'none' then
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
-- TODO: add tracking categories
return tostring(res)
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
p6nh364x2xlyhkje65qyvp3qeg7uxva
9853
9852
2013-03-06T08:16:06Z
w>Toohool
0
htmlbuilder moved
9853
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
local addStateLinkPlaceholder = false
if args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
if args.navbar == 'off' then
addStateLinkPlaceholder = (args.state == 'plain')
else
addStateLinkPlaceholder = (args.state ~= 'plain')
end
else
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
addStateLinkPlaceholder = (args.state == 'plain')
end
end
if addStateLinkPlaceholder then
titleCell
.tag('span')
.css('float', 'right')
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderFirstListRow(tbl)
if not args.list1 then return end
local row = addTableRow(tbl)
if args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args.group1 then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args.group1style)
.wikitext(args.group1)
end
local listCell = row.tag('td')
if args.group1 then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local evenOdd = args.evenodd or 'odd'
if args.evenodd == 'swap' then evenOdd = 'even' end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(args.oddstyle)
.cssText(args.list1style)
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.list1padding or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args.list1)
if args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
function renderNthListRow(tbl, listnum)
local row = addTableRow(tbl)
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
renderFirstListRow(tbl)
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderNthListRow(tbl, listnum)
end
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'subgroup' or border == 'child' then
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
elseif border ~= 'none' then
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
-- TODO: add tracking categories
return tostring(res)
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
kd89a6zyme9lba339l71d3417u8pygo
9854
9853
2013-03-06T08:49:39Z
w>Toohool
0
fix title centering
9854
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderFirstListRow(tbl)
if not args.list1 then return end
local row = addTableRow(tbl)
if args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args.group1 then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args.group1style)
.wikitext(args.group1)
end
local listCell = row.tag('td')
if args.group1 then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local evenOdd = args.evenodd or 'odd'
if args.evenodd == 'swap' then evenOdd = 'even' end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(args.oddstyle)
.cssText(args.list1style)
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.list1padding or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args.list1)
if args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
function renderNthListRow(tbl, listnum)
local row = addTableRow(tbl)
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
renderFirstListRow(tbl)
-- render lists 2 through N
for i, listnum in ipairs(listnums) do
if listnum > 1 then
renderNthListRow(tbl, listnum)
end
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'subgroup' or border == 'child' then
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
elseif border ~= 'none' then
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
-- TODO: add tracking categories
return tostring(res)
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
qvix1t6ohzq8wzlb7wpbd5y76vjsy5m
9855
9854
2013-03-06T09:20:39Z
w>Toohool
0
don't need a special function for the list1 row, and fix for border=none
9855
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'subgroup' or border == 'child' then
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
elseif border ~= 'none' then
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
else -- border == 'none'
res.node(tbl)
end
-- TODO: add tracking categories
return tostring(res)
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
rqw3ardeq893frmbk8ymmzv6y1s7pf9
9856
9855
2013-03-06T09:23:51Z
w>Toohool
0
clarify
9856
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
-- TODO: add tracking categories
return tostring(res)
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
8khkzylhllm6a1l4kpszbz76orb1p6p
9857
9856
2013-03-06T21:42:57Z
w>Toohool
0
add comment
9857
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
-- TODO: add tracking categories
return tostring(res)
end
function p.navbox(frame)
return p._navbox(frame:getParent().args)
end
return p
fq87x10af680ssdxiqeopx9vyqee6gs
9858
9857
2013-03-06T22:18:18Z
w>Toohool
0
add tracking categories
9858
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colors') end
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frm)
frame = frm
return p._navbox(frame:getParent().args)
end
return p
j938lrckva8289drjg8r6v49r72d3w9
9859
9858
2013-03-06T22:20:08Z
w>Toohool
0
9859
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colors') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frm)
frame = frm
return p._navbox(frame:getParent().args)
end
return p
bseii7fx42t6ygvgznui0g2q86mswvp
9860
9859
2013-03-07T00:19:18Z
w>Toohool
0
testing tracking categories
9860
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colors') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
--renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frm)
frame = frm
return p._navbox(frame:getParent().args)
end
return p
o87dmcbxnry8maqhhwd3iytdsuxhltx
9861
9860
2013-03-07T00:24:39Z
w>Toohool
0
testing tracking categories
9861
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
--if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[:Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frm)
frame = frm
return p._navbox(frame:getParent().args)
end
return p
7dgrs1x8ljcsoa8iey67z3zocujmi2z
9862
9861
2013-03-07T00:27:45Z
w>Toohool
0
undo test
9862
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frm)
frame = frm
return p._navbox(frame:getParent().args)
end
return p
od0srh1mkpuh9hz6qminteksxvtl4bk
9863
9862
2013-03-07T02:26:38Z
w>Toohool
0
fix for empty params
9863
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodyStyle)
.cssText(args.style)
else -- regular navobx - bodyStyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
if v == '' then
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args[k] = nil
else
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frm)
frame = frm
return p._navbox(frame:getParent().args)
end
return p
lirl4h9emdd7fsr3n5d2l00yj5erigi
9864
9863
2013-03-09T00:29:44Z
w>Toohool
0
bodystyle fix
9864
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
if v == '' then
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
args[k] = nil
else
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frm)
frame = frm
return p._navbox(frame:getParent().args)
end
return p
otwgp640voi4xiywtvvljw9g4pqbiou
9865
9864
2013-03-09T01:07:14Z
w>Toohool
0
correct fix for empty args
9865
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
6nbwzoh48uodqh7btmyzd8aslqdt8zh
9866
9865
2013-03-09T01:15:10Z
w>Toohool
0
add support for list1padding param
9866
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
titleCell.wikitext(mw.getCurrentFrame():expandTemplate{ title = 'navbar', args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}})
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
8ws05lctxmim47pl9lkxfiglcp58g0y
9867
9866
2013-03-16T00:04:26Z
w>Dragons flight
0
pull navbar completely inside Lua
9867
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function formNavBar( div, args )
local class = 'noprint plainlinks hlist navbar';
local title;
if args[1] == '' then
title = mw.title.new( '' );
elseif args[1]:sub(1,1) == ':' then
title = mw.title.new( args[1] );
else
title = mw.title.new( 'Template:' .. args[1] );
end
local mainpage, talkpage, editurl;
mainpage = title.fullText;
talkpage = title.talkPageTitle;
talkpage = talkpage.fullText or '';
editurl = title:fullUrl( 'action=edit' );
if args.mini ~= nil then
class = class .. ' mini';
end
div
.addClass( class )
.cssText( args.style or '' )
if args.mini == nil and args.plain == nil then
div.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle or '' )
.wikitext( args.text or 'This box:' );
end
if args.brackets ~= nil then
div.wikitext(' ');
div.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
local inner
if args.mini ~= nil then
inner = 'v';
else
inner = 'view';
end
ul.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']]' );
if args.mini ~= nil then
inner = 't';
else
inner = 'talk';
end
ul.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']]' );
if args.mini ~= nil then
inner = 'e';
else
inner = 'edit';
end
ul.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']' );
if args.brackets ~= nil then
div.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return div;
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
local div = HtmlBuilder.create('div');
local args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
};
div = formNavBar( div, args );
titleCell.node( div )
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
function p.navbar(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
local div = HtmlBuilder.create('div')
return tostring( formNavBar( div, args ) )
end
return p
r602v48jspaohnbg1vp312gxdg08mws
9868
9867
2013-03-16T00:30:59Z
w>Dragons flight
0
edge cases
9868
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function formNavBar( div, args )
local class = 'noprint plainlinks hlist navbar';
local title;
args[1] = trim( args[1] or '' );
if args[1] == '' then
title = mw.title.new( '' );
elseif args[1]:sub(1,1) == ':' then
title = mw.title.new( args[1]:sub(2) );
else
title = mw.title.new( 'Template:' .. args[1] );
end
local mainpage, talkpage, editurl;
mainpage = title.fullText;
talkpage = title.talkPageTitle;
talkpage = talkpage.fullText or '';
editurl = title:fullUrl( 'action=edit' );
if args.mini ~= nil then
class = class .. ' mini';
end
div
.addClass( class )
.cssText( args.style or '' )
if args.mini == nil and args.plain == nil then
div.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle or '' )
.wikitext( args.text or 'This box:' );
end
if args.brackets ~= nil then
div.wikitext(' ');
div.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
local inner
if args.mini ~= nil then
inner = 'v';
else
inner = 'view';
end
ul.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']]' );
if args.mini ~= nil then
inner = 't';
else
inner = 'talk';
end
ul.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']]' );
if args.mini ~= nil then
inner = 'e';
else
inner = 'edit';
end
ul.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']' );
if args.brackets ~= nil then
div.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return div;
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
local div = HtmlBuilder.create('div');
local args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
};
div = formNavBar( div, args );
titleCell.node( div )
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
function p.navbar(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
local div = HtmlBuilder.create('div')
return tostring( formNavBar( div, args ) )
end
return p
bcosape731o27cad3rs83nc2e77yxph
9869
9868
2013-03-16T00:39:59Z
w>Dragons flight
0
hmmm, not my smartest moment
9869
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function formNavBar( div, args )
local class = 'noprint plainlinks hlist navbar';
local title;
args[1] = trim( args[1] or '' );
if args[1] == '' then
title = mw.title.new( '' );
elseif args[1]:sub(1,1) == ':' then
title = mw.title.new( args[1]:sub(2) );
else
title = mw.title.new( args[1] );
if title.namespace == 0 then
title = mw.title.new( 'Template:' .. args[1] );
end
end
local mainpage, talkpage, editurl;
mainpage = title.fullText;
talkpage = title.talkPageTitle;
talkpage = talkpage.fullText or '';
editurl = title:fullUrl( 'action=edit' );
if args.mini ~= nil then
class = class .. ' mini';
end
div
.addClass( class )
.cssText( args.style or '' )
if args.mini == nil and args.plain == nil then
div.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle or '' )
.wikitext( args.text or 'This box:' );
end
if args.brackets ~= nil then
div.wikitext(' ');
div.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
local inner
if args.mini ~= nil then
inner = 'v';
else
inner = 'view';
end
ul.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']]' );
if args.mini ~= nil then
inner = 't';
else
inner = 'talk';
end
ul.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']]' );
if args.mini ~= nil then
inner = 'e';
else
inner = 'edit';
end
ul.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']' );
if args.brackets ~= nil then
div.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return div;
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
local div = HtmlBuilder.create('div');
local args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
};
div = formNavBar( div, args );
titleCell.node( div )
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
function p.navbar(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
local div = HtmlBuilder.create('div')
return tostring( formNavBar( div, args ) )
end
return p
on5gm5e6k6c5tke101h3an2xsx2fv5v
9870
9869
2013-03-16T00:43:30Z
w>Dragons flight
0
missed an option
9870
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function formNavBar( div, args )
local class = 'noprint plainlinks hlist navbar';
local title;
args[1] = trim( args[1] or '' );
if args[1] == '' then
title = mw.title.new( '' );
elseif args[1]:sub(1,1) == ':' then
title = mw.title.new( args[1]:sub(2) );
else
title = mw.title.new( args[1] );
if title.namespace == 0 then
title = mw.title.new( 'Template:' .. args[1] );
end
end
local mainpage, talkpage, editurl;
mainpage = title.fullText;
talkpage = title.talkPageTitle;
talkpage = talkpage.fullText or '';
editurl = title:fullUrl( 'action=edit' );
if args.mini ~= nil then
class = class .. ' mini';
end
div
.addClass( class )
.cssText( args.style or '' )
if args.mini == nil and args.plain == nil then
div.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle or '' )
.wikitext( args.text or 'This box:' );
end
if args.brackets ~= nil then
div.wikitext(' ');
div.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
local inner
if args.mini ~= nil then
inner = 'v';
else
inner = 'view';
end
ul.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']]' );
if args.mini ~= nil then
inner = 't';
else
inner = 'talk';
end
ul.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']]' );
if args.noedit == nil then
if args.mini ~= nil then
inner = 'e';
else
inner = 'edit';
end
ul.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( inner )
.done()
.wikitext( ']' );
end
if args.brackets ~= nil then
div.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return div;
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
if args.name then
local div = HtmlBuilder.create('div');
local args = {
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
};
div = formNavBar( div, args );
titleCell.node( div )
else
titleCell
.tag('span')
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
end
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
function p.navbar(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
local div = HtmlBuilder.create('div')
return tostring( formNavBar( div, args ) )
end
return p
acs23fmxz9elonjfawaletf3vd6iryb
9871
9870
2013-03-16T01:45:21Z
w>Toohool
0
edit for succinctness
9871
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function formNavBar( args )
if not args[1] then
local span = HtmlBuilder.create('span')
span
.addClass('error')
.css('float', 'left')
.css('white-space', 'nowrap')
.wikitext('Error: No name provided')
return span
end
local title;
local pageName = trim( args[1] )
if pageName:sub(1,1) == ':' then
title = mw.title.new( pageName:sub(2) );
else
title = mw.title.new( pageName );
if title.namespace == 0 then
title = mw.title.makeTitle( 'Template', pageName );
end
end
local mainpage = title.fullText;
local talkpage = title.talkPageTitle and title.talkPageTitle.fullText or ''
local editurl = title:fullUrl( 'action=edit' );
local viewLink, talkLink, editLink = 'view', 'talk', 'edit'
if args.mini then
viewLink, talkLink, editLink = 'v', 't', 'e'
end
local div = HtmlBuilder.create( 'div' )
div
.addClass( 'noprint' )
.addClass( 'plainlinks' )
.addClass( 'hlist' )
.addClass( 'navbar')
.cssText( args.style )
if args.mini then div.addClass('mini') end
if not (args.mini or args.plain) then
div
.tag( 'span' )
.css( 'word-spacing', 0 )
.cssText( args.fontstyle )
.wikitext( args.text or 'This box:' )
.wikitext( ' ' )
end
if args.brackets then
div
.tag('span')
.css('margin-right', '-0.125em')
.cssText( args.fontstyle )
.wikitext( '[' )
.newline();
end
local ul = div.tag('ul');
ul
.tag( 'li' )
.addClass( 'nv-view' )
.wikitext( '[[' .. mainpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'View this template' )
.cssText( args.fontstyle or '' )
.wikitext( viewLink )
.done()
.wikitext( ']]' )
.done()
.tag( 'li' )
.addClass( 'nv-talk' )
.wikitext( '[[' .. talkpage .. '|' )
.tag( 'span ' )
.attr( 'title', 'Discuss this template' )
.cssText( args.fontstyle or '' )
.wikitext( talkLink )
.done()
.wikitext( ']]' );
if not args.noedit then
ul
.tag( 'li' )
.addClass( 'nv-edit' )
.wikitext( '[' .. editurl .. ' ' )
.tag( 'span ' )
.attr( 'title', 'Edit this template' )
.cssText( args.fontstyle or '' )
.wikitext( editLink )
.done()
.wikitext( ']' );
end
if args.brackets then
div
.tag('span')
.css('margin-left', '-0.125em')
.cssText( args.fontstyle or '' )
.wikitext( ']' )
.newline();
end
return div;
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.node(formNavBar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
function p.navbar(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return tostring( formNavBar( args ) )
end
return p
8deal6fesyyj1a8sxu5uvet6lxlq03g
9872
9871
2013-03-16T02:49:32Z
w>Toohool
0
navbar code moved to [[Module:Navbar]]
9872
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
lx0mr0vqhndoc36mxv320d9wj0wvs2h
9873
9872
2013-03-19T00:58:25Z
w>Dragons flight
0
Protected Module:Navbox: [[WP:High-risk templates|Highly visible template]]: Used on a significant number of pages, but also still in testing. ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
9872
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
lx0mr0vqhndoc36mxv320d9wj0wvs2h
9874
9873
2013-03-26T02:45:35Z
w>Dragons flight
0
Changed protection level of Module:Navbox: [[WP:High-risk templates|Highly visible template or Lua module]] ([Edit=Block all non-admin users] (indefinite) [Move=Block all non-admin users] (indefinite))
9872
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
for k, v in pairs(frame:getParent().args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
lx0mr0vqhndoc36mxv320d9wj0wvs2h
9875
9874
2013-03-26T14:06:01Z
w>Dragons flight
0
Manually force in order parsing of key fields
9875
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasCustomListSpacing() then table.insert(cats, 'Navigational boxes with custom list spacing') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasCustomListSpacing()
return args.liststyle == 'padding: 0.25em 0; line-height: 1.3em;' or
args.liststyle == 'padding:0.25em 0; line-height:1.4em; width:auto;' or
args.liststyle == 'padding:0.4em 0; line-height:1.4em;'
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
if5nsvmxdkb37mht3b6u1h5ouzk6htq
9876
9832
2013-05-20T15:25:36Z
w>Nyttend
0
Not needed; we deleted this tracking category because it wasn't being used
9876
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
9t8usp6ywmzxmpld8jcunt6ye409jdg
9877
9834
2013-09-29T12:13:40Z
w>Edokter
0
Force closing </div> tags to new line; fixes wiki list rendering.
9877
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
.newline()
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
.newline()
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
.newline()
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
.newline()
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
.newline()
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
.newline()
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
8pm8vxk80i5xi1ebm9bpwho9ueqe721
9878
9877
2013-09-29T12:15:43Z
w>Edokter
0
but not here...
9878
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
.newline()
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
.newline()
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
.newline()
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
.newline()
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
.newline()
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
20acf5qtj3kbqrp768savi2trbhr3i0
9879
9878
2013-10-03T19:22:04Z
w>Edokter
0
Revert my fix; causes unwanted linebreaks that triggers <p>s. Needs a different solution.
9879
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
9t8usp6ywmzxmpld8jcunt6ye409jdg
9880
9879
2013-10-09T13:17:44Z
w>De728631
0
per edit request at template talk
9880
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
ab4gpdpd3br3u5g9c8fpbd53jnasie6
9881
9880
2013-11-21T22:41:58Z
w>WOSlinker
0
add hlist vevent to tracking options as per edit request
9881
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
lc7dg62zlhmriz1nt6clcvp9ujupy8s
9882
9881
2014-02-25T22:53:48Z
w>TheDJ
0
Template:Navbox/testcases
9882
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td').attr('colspan', getAboveBelowColspan())
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
2fr90wdoymnmkgdl1q1mton1y1tjbsw
9883
9882
2014-02-25T22:54:42Z
w>TheDJ
0
that was not "show preview" button
9883
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.newline()
.wikitext(args.title)
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.above)
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.newline()
.wikitext(args.below)
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.imageleft)
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.newline()
.wikitext(args['list' .. listnum])
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.newline()
.wikitext(args.image)
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
lc7dg62zlhmriz1nt6clcvp9ujupy8s
9884
9883
2014-03-14T16:36:10Z
w>Edokter
0
Update from sandbox
9884
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
.attr('colspan',2)
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.wikitext(addNewline(args.title))
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.above))
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.below))
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
jdvfqqyspcigotxwr887ml3ybc6igrm
9885
9884
2014-05-07T12:09:13Z
w>Ged UK
0
Changed protection level of Module:Navbox: lowering to template protection ([Edit=Allow only template editors and admins] (indefinite) [Move=Allow only template editors and admins] (indefinite))
9884
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
.attr('colspan',2)
end
tableRowAdded = true
return tbl.tag('tr')
end
--
-- Title row
--
function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.wikitext(addNewline(args.title))
end
function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Above/Below rows
--
function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.above))
end
function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.below))
end
function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
--
-- List rows
--
function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
jdvfqqyspcigotxwr887ml3ybc6igrm
9886
9885
2014-05-07T16:59:40Z
w>Jackmcbarn
0
don't use globals
9886
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
.attr('colspan',2)
end
tableRowAdded = true
return tbl.tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
k56d3r60toypdxhrgnfte6l7o5vf8wc
9887
9886
2014-05-07T17:09:32Z
w>Jackmcbarn
0
apparently none of the test cases test tracking categories. fix a bunch of script errors
9887
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local Navbar = require('Module:Navbar')
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
.attr('colspan',2)
end
tableRowAdded = true
return tbl.tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(Navbar.navbar({
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
}))
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
3cuqaswwjkpq3axf9sw4rade8v99rld
9888
9887
2014-05-23T21:14:08Z
w>Jackmcbarn
0
use _navbar (copied from sandbox)
9888
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local navbar = require('Module:Navbar')._navbar
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
.attr('colspan',2)
end
tableRowAdded = true
return tbl.tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or args.navbar == 'off' or (not args.name and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
hbs2c6whhvjf52xewo181mrcc6qve9y
9889
9888
2014-05-24T16:41:12Z
w>Jackmcbarn
0
it's possible for Module:Navbar to autodetect the name sometimes. also, remove check that can never be true
9889
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local navbar = require('Module:Navbar')._navbar
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
.attr('colspan',2)
end
tableRowAdded = true
return tbl.tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle() ~= 'Template:Navbox' and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
jkqdse6s8z5leghaoh27r1bflmk1l0u
9890
9889
2014-05-24T16:42:34Z
w>Jackmcbarn
0
check is inverted
9890
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local navbar = require('Module:Navbar')._navbar
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
.attr('colspan',2)
end
tableRowAdded = true
return tbl.tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle() == 'Template:Navbox' and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parent_args = frame:getParent().args;
-- Out of order parsing bug.
local temp;
temp = parent_args.title;
temp = parent_args.above;
for i = 1, 20 do
temp = parent_args["group" .. tostring(i)];
temp = parent_args["list" .. tostring(i)];
end
temp = parent_args.below;
for k, v in pairs(parent_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
32ckkphn9945tkbsahd06jfctiddfim
9891
9890
2014-05-24T20:37:57Z
w>Jackmcbarn
0
don't require the wrapper template
9891
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local navbar = require('Module:Navbar')._navbar
local args
local frame
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
.attr('colspan',2)
end
tableRowAdded = true
return tbl.tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle() == 'Template:Navbox' and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local frame = mw.getCurrentFrame()
if not frame then return end
local s = frame:preprocess('{{#ifeq:{{NAMESPACE}}|{{ns:10}}|1|0}}{{SUBPAGENAME}}')
if mw.ustring.sub(s, 1, 1) == '0' then return end -- not in template space
local subpage = mw.ustring.lower(mw.ustring.sub(s, 2))
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
-- ParserFunctions considers the empty string to be false, so to preserve the previous
-- behavior of {{navbox}}, change any empty arguments to nil, so Lua will consider
-- them false too.
local args = {}
local parentTitle = frame:getParent():getTitle()
local frame_args = (parentTitle == 'Template:Navbox' or parentTitle == 'Template:Navbox/sandbox') and frame:getParent().args or frame.args;
-- Out of order parsing bug.
local temp;
temp = frame_args.title;
temp = frame_args.above;
for i = 1, 20 do
temp = frame_args["group" .. tostring(i)];
temp = frame_args["list" .. tostring(i)];
end
temp = frame_args.below;
for k, v in pairs(frame_args) do
if v ~= '' then
args[k] = v
end
end
return p._navbox(args)
end
return p
31l17gofozy0oqtrwmgd1axmtq4rvzw
9892
9891
2014-06-14T14:55:42Z
w>Jackmcbarn
0
various fixes from sandbox
9892
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
.attr('colspan',2)
end
tableRowAdded = true
return tbl.tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle() == 'Template:Navbox' and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return args.titlestyle or args.groupstyle
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
igxqdo7p0p0dc30nz8t68ewo6gpwh7v
9893
9892
2014-06-15T16:56:01Z
w>WOSlinker
0
change hasBackgroundColors to check titlestyle/groupstyle/basestyle contains the word background
9893
Scribunto
text/plain
--
-- This module will implement {{Navbox}}
--
local p = {}
local HtmlBuilder = require('Module:HtmlBuilder')
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
.tag('tr')
.css('height', '2px')
.tag('td')
.attr('colspan',2)
end
tableRowAdded = true
return tbl.tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle() == 'Template:Navbox' and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell.wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
.tag('span')
.css('float', spacerSide)
.css('width', '6em')
.wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
.tag('th')
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.titlegroupclass)
.cssText(args.basestyle)
.cssText(args.groupstyle)
.cssText(args.titlegroupstyle)
.wikitext(args.titlegroup)
end
local titleCell = titleRow.tag('th').attr('scope', 'col')
if args.titlegroup then
titleCell
.css('border-left', '2px solid #fdfdfd')
.css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
.cssText(args.basestyle)
.cssText(args.titlestyle)
.addClass('navbox-title')
.attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
.tag('div')
.addClass(args.titleclass)
.css('font-size', '110%')
.wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.aboveclass)
.cssText(args.basestyle)
.cssText(args.abovestyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
.tag('td')
.addClass('navbox-abovebelow')
.addClass(args.belowclass)
.cssText(args.basestyle)
.cssText(args.belowstyle)
.attr('colspan', getAboveBelowColspan())
.tag('div')
.wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 2px 0px 0px')
.cssText(args.imageleftstyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row.tag('th')
groupCell
.attr('scope', 'row')
.addClass('navbox-group')
.addClass(args.groupclass)
.cssText(args.basestyle)
if args.groupwidth then
groupCell.css('width', args.groupwidth)
end
groupCell
.cssText(args.groupstyle)
.cssText(args['group' .. listnum .. 'style'])
.wikitext(args['group' .. listnum])
end
local listCell = row.tag('td')
if args['group' .. listnum] then
listCell
.css('text-align', 'left')
.css('border-left-width', '2px')
.css('border-left-style', 'solid')
else
listCell.attr('colspan', 2)
end
if not args.groupwidth then
listCell.css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
.css('padding', '0px')
.cssText(args.liststyle)
.cssText(rowstyle)
.cssText(args['list' .. listnum .. 'style'])
.addClass('navbox-list')
.addClass('navbox-' .. evenOdd)
.addClass(args.listclass)
.tag('div')
.css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
.wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
.tag('td')
.addClass('navbox-image')
.addClass(args.imageclass)
.css('width', '0%')
.css('padding', '0px 0px 0px 2px')
.cssText(args.imagestyle)
.attr('rowspan', 2 * #listnums - 1)
.tag('div')
.wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder.wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = HtmlBuilder.create('table')
.attr('cellspacing', 0)
.addClass('nowraplinks')
.addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
.addClass('collapsible')
.addClass(args.state or 'autocollapse')
end
tbl.css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
.addClass('navbox-subgroup')
.cssText(args.bodystyle)
.cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
.addClass('navbox-inner')
.css('background', 'transparent')
.css('color', 'inherit')
end
tbl.cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = HtmlBuilder.create()
if border == 'none' then
res.node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
.tag('/div', {unclosed = true})
.done()
.node(tbl)
.tag('div', {unclosed = true})
else
res
.tag('table')
.attr('cellspacing', 0)
.addClass('navbox')
.css('border-spacing', 0)
.cssText(args.bodystyle)
.cssText(args.style)
.tag('tr')
.tag('td')
.css('padding', '2px')
.node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
ffjbkwfc97nn52m7mejsnxq0yr2xod5
9894
9836
2014-11-14T19:12:58Z
w>Frietjes
0
switch to mw.html per talk page (no objections)
9894
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle() == 'Template:Navbox' and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:attr('cellspacing', 0)
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:attr('cellspacing', 0)
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
a1dtgc3ieb69sr5arpvzu579alji5pw
9895
9894
2014-11-14T20:28:13Z
w>Edokter
0
Remove cellspacing attribute (obsolete), cell-spacing CSS moved to Common.css.
9895
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle() == 'Template:Navbox' and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
1whouh55w3rczmhycqi6yrvis44gs63
9896
9895
2014-11-14T23:02:29Z
w>Edokter
0
Revert border-spacing; collapses cells in hand-build navboxes.
9896
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle() == 'Template:Navbox' and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
qkbuev2zcibqjho3yekr8u78lx2ro9i
9897
9896
2014-11-16T05:41:17Z
w>Dinoguy1000
0
minor whitespace: trim trailing spaces; tabs --> spaces
9897
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle() == 'Template:Navbox' and (border == 'subgroup' or border == 'child' or border == 'none')) then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
4ha4enr5eoj2ajnayh49xrneg6suwgw
9898
9897
2014-11-26T04:35:27Z
w>Jackmcbarn
0
move border check to inner if to avoid bad navbar displaying
9898
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' and (border == 'subgroup' or border == 'child' or border == 'none') then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
10vzmhktyui6wge3yuqeh208nd6rgj2
9899
9898
2014-11-30T16:22:22Z
w>Jackmcbarn
0
looks like we really shouldn't have been checking border here at all
9899
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
0xz6w9qh3qly5ymbn3g095ijl4yfqxn
9900
9899
2015-03-30T08:36:42Z
w>Dinoguy1000
0
update from sandbox, per [[Template talk:Navbox#mw-collapsible]] (specific changes: spaces to tabs; switch from using the collapsible tables script to mw-collapsible)
9900
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('mw-collapsible')
-- mw-collapsible doesn't have an "autocollapse" feature, so fall back on collapsed by default for now
:addClass(args.state and 'mw-' .. args.state or 'mw-collapsed')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
64r0kcw4fmw3hn0uv6f8oxty6y8nqz3
9901
9900
2015-03-30T12:13:43Z
w>WOSlinker
0
Undid revision 654151214, The new Show/Hide doesn't work very well on Navboxes with blue backgrounds
9901
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
0xz6w9qh3qly5ymbn3g095ijl4yfqxn
9902
9837
2015-07-21T16:28:31Z
w>Edokter
0
Slight adjustment
9902
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '114%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
1rj6vywxpnvqp6r8diqisbair73cwdp
9903
9902
2015-09-07T11:05:33Z
w>Izkala
0
Add colour tracking per ER
9903
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if key:match("style$") then
if styleratio { style, "black", "white" } < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('mw-collapsible')
-- mw-collapsible doesn't have an "autocollapse" feature, so fall back on collapsed by default for now
:addClass(args.state and 'mw-' .. args.state or 'mw-collapsed')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
local nowraplist = args.nowraplists and require('Module:Nowrap list')._main
for k, v in pairs(args) do
local listnum = string.match(k, '^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
-- preprocess lists in listX, above, and below if nowraplists has been set
if nowraplist and (listnum or string.match(k, '^above') or string.match(k, '^below')) then
args[k] = nowraplist(v)
end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
ivfwpayb89jsk0gzhshvbtp50lhibyw
9904
9903
2015-09-07T11:33:05Z
w>WOSlinker
0
Undid revision 679881839 by [[Special:Contributions/Alakzi|Alakzi]] ([[User talk:Alakzi|talk]]) - This change has more than just color tracking in it and is causing issues, see talk page
9904
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '114%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
1rj6vywxpnvqp6r8diqisbair73cwdp
9905
9904
2015-09-07T11:52:09Z
w>Izkala
0
Sync and fix styleratio invocation
9905
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '114%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if key:match("style$") then
if styleratio{style} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
fftfzsoysgba9tv9qg2q8nycuefdzbp
9906
9905
2015-09-07T11:52:45Z
w>Izkala
0
Reverted 1 edit by [[Special:Contributions/Alakzi|Alakzi]] ([[User talk:Alakzi|talk]]): Sigh, I meant to do that in the sandbox. ([[WP:TW|TW]])
9906
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '114%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
1rj6vywxpnvqp6r8diqisbair73cwdp
9907
9906
2015-09-07T12:29:40Z
w>WOSlinker
0
reapply just Add colour tracking changes from sandbox
9907
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '114%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{style} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
1klq6c8c3l6ru63nks17i2259qb4a3v
9908
9907
2015-09-07T13:20:32Z
w>Izkala
0
Kill nowikis
9908
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '114%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
3dyarw6vanz71pn4xumxab8tmen8xhp
9909
9908
2016-07-16T02:34:17Z
w>Matt Fitzpatrick
0
navigation div instead of single-cell table wrapper
9909
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
smnmdi096gpuoasugwpikvx61zw066c
9910
9909
2017-03-05T09:29:01Z
w>Jc86035
0
Added tracking category for PetScan purposes
9910
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if border == 'subgroup' then table.insert(cats, 'Templates containing navbox subgroups') else table.insert(cats, 'Templates containing navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
3xzjq7trra7vnta40m92d9zcjbg2yaz
9911
9910
2017-03-06T07:14:58Z
w>Jc86035
0
Undid revision 768706907 by [[Special:Contributions/Jc86035|Jc86035]] ([[User talk:Jc86035|talk]]) too inefficient to work properly
9911
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
smnmdi096gpuoasugwpikvx61zw066c
9912
9911
2017-03-12T23:51:56Z
w>Johnuniq
0
update from [[Module:Navbox/sandbox]] per talk; this implements automatic striping that applies to a navbox and any subgroup (child) navboxes it contains
9912
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = addTableRow(tbl)
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(listText))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
1zs4rs47rg46xpwnpp4yhrr6z5zvxwc
9913
9912
2017-05-04T01:48:46Z
w>Johnuniq
0
update from [[Module:Navbox/sandbox]] per [[Template talk:Navbox#Merging nowrap navbox]] to implement nowrapitems=yes to nowrap listN + above + below text
9913
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = addTableRow(tbl)
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
f3rft1yai95vtrhbdvheou1htgz1xcr
9914
9913
2017-06-01T15:23:23Z
w>Matt Fitzpatrick
0
replacing gutter rows with CSS borders; uses temporary navbox-spacing-temp class to avoid cache issues
9914
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup navbox-spacing-temp')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox navbox-spacing-temp')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
n1c1m7rbp8h9uv56o49gdelzvw1lw41
9915
9914
2017-06-29T00:14:03Z
w>Matt Fitzpatrick
0
renderNavBar: quick hack to reset basestyle or titlestyle's box-shadow, if any, for the navbar
9915
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup navbox-spacing-temp')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox navbox-spacing-temp')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
ofcuqszf4n5kik929qhvtozqhn5xi4q
9916
9915
2017-07-12T07:55:41Z
w>Matt Fitzpatrick
0
removed .navbox-spacing-temp mask, no longer used by site CSS
9916
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
2535j56ygjbxd128b319uose3yh7ngf
9917
9916
2018-01-11T12:41:17Z
w>Frietjes
0
(1) add tracking for css borders in group/above/belowstyle (2) extended background colour check to above and belowstyle (3) add [[User:Johnuniq|Johnuniq]]'s change to enable using this module directly in [[Template:Navbox subgroup|Navbox subgroup]]
9917
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
if args.title then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
agfujr0g49peekpzrn4lgskcr1edwwp
9918
9838
2018-06-15T23:27:24Z
w>Matt Fitzpatrick
0
aria-labelledby fallbacks: title, otherwise above, otherwise lone group
9918
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
81f1ytsur86xnvf3sbmdtnaf8irul1c
9919
9918
2018-07-27T13:10:05Z
w>Frietjes
0
don't add title padding to navbar
9919
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:none;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
71h1exm6qoiv242ux4k3n47nrsn72mn
9920
9919
2018-07-27T13:10:53Z
w>Frietjes
0
typo
9920
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
renderTrackingCategories(res)
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
nu5v2o7qy8lkltph07dqtlp1u6unvdl
9921
9920
2018-08-22T04:42:54Z
w>Johnuniq
0
implement nocat=true per [[Template talk:Navbox#Module:Navbox]] and [[WP:NOCAT]]
9921
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
if (args.nocat or 'false'):lower() ~= 'false' then
renderTrackingCategories(res)
end
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
4ms0nulnaotz9n5rvkt9s9olhtxnqs9
9922
9921
2018-08-22T04:52:06Z
w>Johnuniq
0
fix confusion (a test I did was not correct)
9922
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
if (args.nocat or 'false'):lower() == 'false' then
renderTrackingCategories(res)
end
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
bvvqswts3ohu6ldq3zhoyv2i09dfe8u
9923
9922
2018-10-23T20:47:30Z
w>Frietjes
0
optional list1class to allow templatestyles in [[Module:Navbox Canada]]
9923
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums = {}
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:addClass(args['list' .. listnum .. 'class'])
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
if (args.nocat or 'false'):lower() == 'false' then
renderTrackingCategories(res)
end
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
s6051h7itvuyod3hww03zyn6uhj01ru
9924
9923
2018-10-26T16:03:01Z
w>Frietjes
0
per discussion at [[WT:Lua]], this needs to be initialized in a non-global context
9924
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:addClass(args['list' .. listnum .. 'class'])
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
if (args.nocat or 'false'):lower() == 'false' then
renderTrackingCategories(res)
end
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
qv8pilaj6uoy41mifmya94jyra7xe3p
9925
9924
2019-08-10T17:25:34Z
w>Frietjes
0
per request on talk page
9925
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:addClass(args['list' .. listnum .. 'class'])
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
tbl
:addClass('collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:addClass(args.navboxclass)
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
if (args.nocat or 'false'):lower() == 'false' then
renderTrackingCategories(res)
end
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
0ndhe77fbc0rr1kcpf6axitp7hee0mc
9926
9925
2019-08-18T17:49:23Z
w>Izno
0
per tper
9926
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:addClass(args['list' .. listnum .. 'class'])
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
if args.state == 'collapsed' then args.state = 'mw-collapsed' end
tbl
:addClass('mw-collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:addClass(args.navboxclass)
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
if (args.nocat or 'false'):lower() == 'false' then
renderTrackingCategories(res)
end
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
msqtiqdgm245sn6a5v8eu1ia0vtr1o1
9927
9839
2020-04-01T06:12:46Z
w>MusikAnimal
0
1 revision imported
9838
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
local state = args.state;
if state and state == 'collapsed' then
state = 'mw-collapsed'
end
tbl
:addClass('mw-collapsible')
:addClass(state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
lueokrd5tvdv7z282y8esj7lo7e35zu
9928
9927
2020-04-01T06:29:21Z
w>MusikAnimal
0
Undid revision 948472523 by [[Special:Contributions/w>MusikAnimal|w>MusikAnimal]] ([[User talk:w>MusikAnimal|talk]])
9928
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:addClass(args['list' .. listnum .. 'class'])
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
if args.state == 'collapsed' then args.state = 'mw-collapsed' end
tbl
:addClass('mw-collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:addClass(args.navboxclass)
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
if (args.nocat or 'false'):lower() == 'false' then
renderTrackingCategories(res)
end
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox', 'Template:Navbox subgroup'}})
if frame.args.border then
-- This allows Template:Navbox_subgroup to use {{#invoke:Navbox|navbox|border=...}}.
args.border = frame.args.border
end
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
msqtiqdgm245sn6a5v8eu1ia0vtr1o1
9929
9928
2020-09-03T16:59:00Z
w>Primefac
0
remove dependence of deleted template
9929
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:addClass(args['list' .. listnum .. 'class'])
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
if args.state == 'collapsed' then args.state = 'mw-collapsed' end
tbl
:addClass('mw-collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:addClass(args.navboxclass)
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
if (args.nocat or 'false'):lower() == 'false' then
renderTrackingCategories(res)
end
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox'}})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
jfombp9fmnkg50akmwi4tsgcthvgj4f
9930
9929
2020-09-22T16:45:56Z
w>Nardog
0
suppress images inside navboxes showing up in Media Viewer
9930
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;-moz-box-shadow:none;-webkit-box-shadow:none;box-shadow:none; padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('noviewer')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:addClass(args['list' .. listnum .. 'class'])
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('noviewer')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
if args.state == 'collapsed' then args.state = 'mw-collapsed' end
tbl
:addClass('mw-collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:addClass(args.navboxclass)
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
if (args.nocat or 'false'):lower() == 'false' then
renderTrackingCategories(res)
end
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox'}})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
bc958emdhcifoov0yk148od75bgl1ef
9931
9930
2021-01-01T19:09:08Z
w>WOSlinker
0
remove moz and webkit as standard now well supported
9931
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local border
local listnums
local ODD_EVEN_MARKER = '\127_ODDEVEN_\127'
local RESTART_MARKER = '\127_ODDEVEN0_\127'
local REGEX_MARKER = '\127_ODDEVEN(%d?)_\127'
local function striped(wikitext)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = '[[Category:Navbox orphans]]'
if border == 'subgroup' and args.orphan ~= 'yes' then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = 'odd', 'even'
if args.evenodd then
if args.evenodd == 'swap' then
first, second = second, first
else
first = args.evenodd
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(REGEX_MARKER, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == 'yes' then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match('^<span class="nowrap">') then
line = prefix .. '<span class="nowrap">' .. content .. '</span>'
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function renderNavBar(titleCell)
if args.navbar ~= 'off' and args.navbar ~= 'plain' and not (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;box-shadow:none;padding:0;'
})
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = tbl:tag('tr')
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args.title))
:addClass(args.titleclass)
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args.title and nil or mw.uri.anchorEncode(args.above))
:wikitext(processItem(args.above, args.nowrapitems))
end
local function renderBelowRow(tbl)
if not args.below then return end
tbl:tag('tr')
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args.below, args.nowrapitems))
end
--
-- List rows
--
local function renderListRow(tbl, index, listnum)
local row = tbl:tag('tr')
if index == 1 and args.imageleft then
row
:tag('td')
:addClass('noviewer')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args.title or args.above or args.group2) then
groupCell
:attr('id', mw.uri.anchorEncode(args.group1))
end
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
:css('width', args.groupwidth or '1%') -- If groupwidth not specified, minimize width
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args.oddstyle
else
rowstyle = args.evenstyle
end
local listText = args['list' .. listnum]
local oddEven = ODD_EVEN_MARKER
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find('<th[^>]*"navbox%-title"') and RESTART_MARKER or 'odd'
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. oddEven)
:addClass(args.listclass)
:addClass(args['list' .. listnum .. 'class'])
:tag('div')
:css('padding', (index == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(processItem(listText, args.nowrapitems))
if index == 1 and args.image then
row
:tag('td')
:addClass('noviewer')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '1px') -- Minimize width
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', #listnums)
:tag('div')
:wikitext(processItem(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'subgroup' or args.tracking == 'no' then
return false
end
local listClasses = {
['plainlist'] = true, ['hlist'] = true, ['hlist hnum'] = true,
['hlist hwrap'] = true, ['hlist vcard'] = true, ['vcard hlist'] = true,
['hlist vevent'] = true,
}
return not (listClasses[args.listclass] or listClasses[args.bodyclass])
end
local function hasBackgroundColors()
for _, key in ipairs({'titlestyle', 'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
end
local function hasBorders()
for _, key in ipairs({'groupstyle', 'basestyle', 'abovestyle', 'belowstyle'}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match("style$") then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
if isIllegible() then table.insert(cats, 'Potentially illegible navboxes') end
if hasBorders() then table.insert(cats, 'Navboxes using borders') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for _, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
if args.state == 'collapsed' then args.state = 'mw-collapsed' end
tbl
:addClass('mw-collapsible')
:addClass(args.state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
border = mw.text.trim(args.border or args[1] or '')
if border == 'child' then
border = 'subgroup'
end
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
elseif border == 'subgroup' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass('navbox')
:addClass(args.navboxclass)
:cssText(args.bodystyle)
:cssText(args.style)
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args.title or args.above or (args.group1 and not args.group2) then
nav:attr('aria-labelledby', mw.uri.anchorEncode(args.title or args.above or args.group1))
else
nav:attr('aria-label', 'Navbox')
end
end
if (args.nocat or 'false'):lower() == 'false' then
renderTrackingCategories(res)
end
return striped(tostring(res))
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {'Template:Navbox'}})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
593o5vewmwprq5tbp3lsyf9qm7266rl
9932
9843
2021-10-29T20:02:39Z
meta>GeneralNotability
0
88 revisions imported from [[:w:Module:Navbox]]: blame [[User:Barkeep49]]
9842
Scribunto
text/plain
--
-- This module implements {{Navbox}}
--
local p = {}
local navbar = require('Module:Navbar')._navbar
local getArgs -- lazily initialized
local args
local tableRowAdded = false
local border
local listnums = {}
local function trim(s)
return (mw.ustring.gsub(s, "^%s*(.-)%s*$", "%1"))
end
local function addNewline(s)
if s:match('^[*:;#]') or s:match('^{|') then
return '\n' .. s ..'\n'
else
return s
end
end
local function addTableRow(tbl)
-- If any other rows have already been added, then we add a 2px gutter row.
if tableRowAdded then
tbl
:tag('tr')
:css('height', '2px')
:tag('td')
:attr('colspan',2)
end
tableRowAdded = true
return tbl:tag('tr')
end
local function renderNavBar(titleCell)
-- Depending on the presence of the navbar and/or show/hide link, we may need to add a spacer div on the left
-- or right to keep the title centered.
local spacerSide = nil
if args.navbar == 'off' then
-- No navbar, and client wants no spacer, i.e. wants the title to be shifted to the left. If there's
-- also no show/hide link, then we need a spacer on the right to achieve the left shift.
if args.state == 'plain' then spacerSide = 'right' end
elseif args.navbar == 'plain' or (not args.name and mw.getCurrentFrame():getParent():getTitle():gsub('/sandbox$', '') == 'Template:Navbox') then
-- No navbar. Need a spacer on the left to balance out the width of the show/hide link.
if args.state ~= 'plain' then spacerSide = 'left' end
else
-- Will render navbar (or error message). If there's no show/hide link, need a spacer on the right
-- to balance out the width of the navbar.
if args.state == 'plain' then spacerSide = 'right' end
titleCell:wikitext(navbar{
args.name,
mini = 1,
fontstyle = (args.basestyle or '') .. ';' .. (args.titlestyle or '') .. ';background:none transparent;border:none;'
})
end
-- Render the spacer div.
if spacerSide then
titleCell
:tag('span')
:css('float', spacerSide)
:css('width', '6em')
:wikitext(' ')
end
end
--
-- Title row
--
local function renderTitleRow(tbl)
if not args.title then return end
local titleRow = addTableRow(tbl)
if args.titlegroup then
titleRow
:tag('th')
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.titlegroupclass)
:cssText(args.basestyle)
:cssText(args.groupstyle)
:cssText(args.titlegroupstyle)
:wikitext(args.titlegroup)
end
local titleCell = titleRow:tag('th'):attr('scope', 'col')
if args.titlegroup then
titleCell
:css('border-left', '2px solid #fdfdfd')
:css('width', '100%')
end
local titleColspan = 2
if args.imageleft then titleColspan = titleColspan + 1 end
if args.image then titleColspan = titleColspan + 1 end
if args.titlegroup then titleColspan = titleColspan - 1 end
titleCell
:cssText(args.basestyle)
:cssText(args.titlestyle)
:addClass('navbox-title')
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
:addClass(args.titleclass)
:css('font-size', '110%')
:wikitext(addNewline(args.title))
end
--
-- Above/Below rows
--
local function getAboveBelowColspan()
local ret = 2
if args.imageleft then ret = ret + 1 end
if args.image then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args.above then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.aboveclass)
:cssText(args.basestyle)
:cssText(args.abovestyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.above))
end
local function renderBelowRow(tbl)
if not args.below then return end
addTableRow(tbl)
:tag('td')
:addClass('navbox-abovebelow')
:addClass(args.belowclass)
:cssText(args.basestyle)
:cssText(args.belowstyle)
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(addNewline(args.below))
end
--
-- List rows
--
local function renderListRow(tbl, listnum)
local row = addTableRow(tbl)
if listnum == 1 and args.imageleft then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 2px 0px 0px')
:cssText(args.imageleftstyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.imageleft))
end
if args['group' .. listnum] then
local groupCell = row:tag('th')
groupCell
:attr('scope', 'row')
:addClass('navbox-group')
:addClass(args.groupclass)
:cssText(args.basestyle)
if args.groupwidth then
groupCell:css('width', args.groupwidth)
end
groupCell
:cssText(args.groupstyle)
:cssText(args['group' .. listnum .. 'style'])
:wikitext(args['group' .. listnum])
end
local listCell = row:tag('td')
if args['group' .. listnum] then
listCell
:css('text-align', 'left')
:css('border-left-width', '2px')
:css('border-left-style', 'solid')
else
listCell:attr('colspan', 2)
end
if not args.groupwidth then
listCell:css('width', '100%')
end
local isOdd = (listnum % 2) == 1
local rowstyle = args.evenstyle
if isOdd then rowstyle = args.oddstyle end
local evenOdd
if args.evenodd == 'swap' then
if isOdd then evenOdd = 'even' else evenOdd = 'odd' end
else
if isOdd then evenOdd = args.evenodd or 'odd' else evenOdd = args.evenodd or 'even' end
end
listCell
:css('padding', '0px')
:cssText(args.liststyle)
:cssText(rowstyle)
:cssText(args['list' .. listnum .. 'style'])
:addClass('navbox-list')
:addClass('navbox-' .. evenOdd)
:addClass(args.listclass)
:tag('div')
:css('padding', (listnum == 1 and args.list1padding) or args.listpadding or '0em 0.25em')
:wikitext(addNewline(args['list' .. listnum]))
if listnum == 1 and args.image then
row
:tag('td')
:addClass('navbox-image')
:addClass(args.imageclass)
:css('width', '0%')
:css('padding', '0px 0px 0px 2px')
:cssText(args.imagestyle)
:attr('rowspan', 2 * #listnums - 1)
:tag('div')
:wikitext(addNewline(args.image))
end
end
--
-- Tracking categories
--
local function needsHorizontalLists()
if border == 'child' or border == 'subgroup' or args.tracking == 'no' then return false end
local listClasses = {'plainlist', 'hlist', 'hlist hnum', 'hlist hwrap', 'hlist vcard', 'vcard hlist', 'hlist vevent'}
for i, cls in ipairs(listClasses) do
if args.listclass == cls or args.bodyclass == cls then
return false
end
end
return true
end
-- there are a lot of list classes in the wild, so we have a function to find
-- them and add their TemplateStyles
local function addListStyles()
local frame = mw.getCurrentFrame()
-- TODO?: Should maybe take a table of classes for e.g. hnum, hwrap as above
-- I'm going to do the stupid thing first though
-- Also not sure hnum and hwrap are going to live in the same TemplateStyles
-- as hlist
local function _addListStyles(htmlclass, templatestyles)
local class_args = { -- rough order of probability of use
'bodyclass', 'listclass', 'aboveclass', 'belowclass', 'titleclass',
'navboxclass', 'groupclass', 'titlegroupclass', 'imageclass'
}
local patterns = {
'^' .. htmlclass .. '$',
'%s' .. htmlclass .. '$',
'^' .. htmlclass .. '%s',
'%s' .. htmlclass .. '%s'
}
local found = false
for _, arg in ipairs(class_args) do
for _, pattern in ipairs(patterns) do
if mw.ustring.find(args[arg] or '', pattern) then
found = true
break
end
end
if found then break end
end
if found then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
else
return ''
end
end
local hlist_styles = _addListStyles('hlist', 'Template:Flatlist/styles.css')
local plainlist_styles = _addListStyles('plainlist', 'Template:Plainlist/styles.css')
return hlist_styles .. plainlist_styles
end
local function hasBackgroundColors()
return mw.ustring.match(args.titlestyle or '','background') or mw.ustring.match(args.groupstyle or '','background') or mw.ustring.match(args.basestyle or '','background')
end
local function getTrackingCategories()
local cats = {}
if needsHorizontalLists() then table.insert(cats, 'Navigational boxes without horizontal lists') end
if hasBackgroundColors() then table.insert(cats, 'Navboxes using background colours') end
return cats
end
local function renderTrackingCategories(builder)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == 'doc' or subpage == 'sandbox' or subpage == 'testcases' then return end
for i, cat in ipairs(getTrackingCategories()) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
--
-- Main navbox tables
--
local function renderMainTable()
local tbl = mw.html.create('table')
:addClass('nowraplinks')
:addClass(args.bodyclass)
:attr('lang', args.lang)
:attr('dir', args.dir or (args.lang and 'auto' or nil))
if args.title and (args.state ~= 'plain' and args.state ~= 'off') then
local state = args.state;
if state and state == 'collapsed' then
state = 'mw-collapsed'
end
tbl
:addClass('mw-collapsible')
:addClass(state or 'autocollapse')
end
tbl:css('border-spacing', 0)
if border == 'subgroup' or border == 'child' or border == 'none' then
tbl
:addClass('navbox-subgroup')
:cssText(args.bodystyle)
:cssText(args.style)
else -- regular navobx - bodystyle and style will be applied to the wrapper table
tbl
:addClass('navbox-inner')
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args.innerstyle)
renderTitleRow(tbl)
renderAboveRow(tbl)
for i, listnum in ipairs(listnums) do
renderListRow(tbl, listnum)
end
renderBelowRow(tbl)
return tbl
end
function p._navbox(navboxArgs)
args = navboxArgs
for k, v in pairs(args) do
local listnum = ('' .. k):match('^list(%d+)$')
if listnum then table.insert(listnums, tonumber(listnum)) end
end
table.sort(listnums)
border = trim(args.border or args[1] or '')
-- render the main body of the navbox
local tbl = renderMainTable()
-- render the appropriate wrapper around the navbox, depending on the border param
local res = mw.html.create()
if border == 'none' then
res
:wikitext(addListStyles())
:node(tbl)
elseif border == 'subgroup' or border == 'child' then
-- We assume that this navbox is being rendered in a list cell of a parent navbox, and is
-- therefore inside a div with padding:0em 0.25em. We start with a </div> to avoid the
-- padding being applied, and at the end add a <div> to balance out the parent's </div>
res
:wikitext('</div>') -- XXX: hack due to lack of unclosed support in mw.html.
:wikitext(addListStyles())
:node(tbl)
:wikitext('<div>') -- XXX: hack due to lack of unclosed support in mw.html.
else
res
:tag('table')
:addClass('navbox')
:css('border-spacing', 0)
:cssText(args.bodystyle)
:cssText(args.style)
:tag('tr')
:tag('td')
:css('padding', '2px')
:wikitext(addListStyles())
:node(tbl)
end
renderTrackingCategories(res)
return tostring(res)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = 'Template:Navbox'})
-- Read the arguments in the order they'll be output in, to make references number in the right order.
local _
_ = args.title
_ = args.above
for i = 1, 20 do
_ = args["group" .. tostring(i)]
_ = args["list" .. tostring(i)]
end
_ = args.below
return p._navbox(args)
end
return p
dybtqkrazhidr0oonuj0ixbrkempa36
9933
9932
2023-03-11T20:47:06Z
meta>MarcoAurelio
0
Per [[Special:Permalink/24700698#Update for internationalization purpose|edit request]]; contents from [[Special:Permalink/24685594|sandbox version 24685594]]
9933
Scribunto
text/plain
local p = {}
local navbar = require('Module:Navbar')._navbar
local cfg = mw.loadData('Module:Navbox/configuration')
local getArgs -- lazily initialized
local args
local format = string.format
local function striped(wikitext, border)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = cfg.category.orphan
if border == cfg.keyword.border_subgroup and args[cfg.arg.orphan] ~= cfg.keyword.orphan_yes then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = cfg.class.navbox_odd_part, cfg.class.navbox_even_part
if args[cfg.arg.evenodd] then
if args[cfg.arg.evenodd] == cfg.keyword.evenodd_swap then
first, second = second, first
else
first = args[cfg.arg.evenodd]
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(cfg.marker.regex, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item ..'\n'
end
if nowrapitems == cfg.keyword.nowrapitems_yes then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match(cfg.pattern.nowrap) then
line = format(cfg.nowrap_item, prefix, content)
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item ..'\n'
end
return item
end
local function has_navbar()
return args[cfg.arg.navbar] ~= cfg.keyword.navbar_off
and args[cfg.arg.navbar] ~= cfg.keyword.navbar_plain
and (
args[cfg.arg.name]
or mw.getCurrentFrame():getParent():getTitle():gsub(cfg.pattern.sandbox, '')
~= cfg.pattern.navbox
)
end
local function renderNavBar(titleCell)
if has_navbar() then
titleCell:wikitext(navbar{
[cfg.navbar.name] = args[cfg.arg.name],
[cfg.navbar.mini] = 1,
[cfg.navbar.fontstyle] = (args[cfg.arg.basestyle] or '') .. ';' ..
(args[cfg.arg.titlestyle] or '') ..
';background:none transparent;border:none;box-shadow:none;padding:0;'
})
end
end
local function renderTitleRow(tbl)
if not args[cfg.arg.title] then return end
local titleRow = tbl:tag('tr')
local titleCell = titleRow:tag('th'):attr('scope', 'col')
local titleColspan = 2
if args[cfg.arg.imageleft] then titleColspan = titleColspan + 1 end
if args[cfg.arg.image] then titleColspan = titleColspan + 1 end
titleCell
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.titlestyle])
:addClass(cfg.class.navbox_title)
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args[cfg.arg.title]))
:addClass(args[cfg.arg.titleclass])
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args[cfg.arg.title]))
end
local function getAboveBelowColspan()
local ret = 2
if args[cfg.arg.imageleft] then ret = ret + 1 end
if args[cfg.arg.image] then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args[cfg.arg.above] then return end
tbl:tag('tr')
:tag('td')
:addClass(cfg.class.navbox_abovebelow)
:addClass(args[cfg.arg.aboveclass])
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.abovestyle])
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', args[cfg.arg.title] and nil or mw.uri.anchorEncode(args[cfg.arg.above]))
:wikitext(processItem(args[cfg.arg.above], args[cfg.arg.nowrapitems]))
end
local function renderBelowRow(tbl)
if not args[cfg.arg.below] then return end
tbl:tag('tr')
:tag('td')
:addClass(cfg.class.navbox_abovebelow)
:addClass(args[cfg.arg.belowclass])
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.belowstyle])
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args[cfg.arg.below], args[cfg.arg.nowrapitems]))
end
local function renderListRow(tbl, index, listnum, listnums_size)
local row = tbl:tag('tr')
if index == 1 and args[cfg.arg.imageleft] then
row
:tag('td')
:addClass(cfg.class.noviewer)
:addClass(cfg.class.navbox_image)
:addClass(args[cfg.arg.imageclass])
:css('width', '1px') -- Minimize width
:css('padding', '0 2px 0 0')
:cssText(args[cfg.arg.imageleftstyle])
:attr('rowspan', listnums_size)
:tag('div')
:wikitext(processItem(args[cfg.arg.imageleft]))
end
local group_and_num = format(cfg.arg.group_and_num, listnum)
local groupstyle_and_num = format(cfg.arg.groupstyle_and_num, listnum)
if args[group_and_num] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group2]) then
groupCell
:attr('id', mw.uri.anchorEncode(args[cfg.arg.group1]))
end
groupCell
:attr('scope', 'row')
:addClass(cfg.class.navbox_group)
:addClass(args[cfg.arg.groupclass])
:cssText(args[cfg.arg.basestyle])
-- If groupwidth not specified, minimize width
:css('width', args[cfg.arg.groupwidth] or '1%')
groupCell
:cssText(args[cfg.arg.groupstyle])
:cssText(args[groupstyle_and_num])
:wikitext(args[group_and_num])
end
local listCell = row:tag('td')
if args[group_and_num] then
listCell
:addClass(cfg.class.navbox_list_with_group)
else
listCell:attr('colspan', 2)
end
if not args[cfg.arg.groupwidth] then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args[cfg.arg.oddstyle]
else
rowstyle = args[cfg.arg.evenstyle]
end
local list_and_num = format(cfg.arg.list_and_num, listnum)
local listText = args[list_and_num]
local oddEven = cfg.marker.oddeven
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find(cfg.pattern.navbox_title) and cfg.marker.restart or cfg.class.navbox_odd_part
end
local liststyle_and_num = format(cfg.arg.liststyle_and_num, listnum)
local listclass_and_num = format(cfg.arg.listclass_and_num, listnum)
listCell
:css('padding', '0')
:cssText(args[cfg.arg.liststyle])
:cssText(rowstyle)
:cssText(args[liststyle_and_num])
:addClass(cfg.class.navbox_list)
:addClass(cfg.class.navbox_part .. oddEven)
:addClass(args[cfg.arg.listclass])
:addClass(args[listclass_and_num])
:tag('div')
:css('padding',
(index == 1 and args[cfg.arg.list1padding]) or args[cfg.arg.listpadding] or '0 0.25em'
)
:wikitext(processItem(listText, args[cfg.arg.nowrapitems]))
if index == 1 and args[cfg.arg.image] then
row
:tag('td')
:addClass(cfg.class.noviewer)
:addClass(cfg.class.navbox_image)
:addClass(args[cfg.arg.imageclass])
:css('width', '1px') -- Minimize width
:css('padding', '0 0 0 2px')
:cssText(args[cfg.arg.imagestyle])
:attr('rowspan', listnums_size)
:tag('div')
:wikitext(processItem(args[cfg.arg.image]))
end
end
local function has_list_class(htmlclass)
local patterns = {
'^' .. htmlclass .. '$',
'%s' .. htmlclass .. '$',
'^' .. htmlclass .. '%s',
'%s' .. htmlclass .. '%s'
}
for arg, _ in pairs(args) do
if type(arg) == 'string' and mw.ustring.find(arg, cfg.pattern.class) then
for _, pattern in ipairs(patterns) do
if mw.ustring.find(args[arg] or '', pattern) then
return true
end
end
end
end
return false
end
-- there are a lot of list classes in the wild, so we add their TemplateStyles
local function add_list_styles()
local frame = mw.getCurrentFrame()
local function add_list_templatestyles(htmlclass, templatestyles)
if has_list_class(htmlclass) then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
else
return ''
end
end
local hlist_styles = add_list_templatestyles('hlist', cfg.hlist_templatestyles)
local plainlist_styles = add_list_templatestyles('plainlist', cfg.plainlist_templatestyles)
-- a second workaround for [[phab:T303378]]
-- when that issue is fixed, we can actually use has_navbar not to emit the
-- tag here if we want
if has_navbar() and hlist_styles == '' then
hlist_styles = frame:extensionTag{
name = 'templatestyles', args = { src = cfg.hlist_templatestyles }
}
end
-- hlist -> plainlist is best-effort to preserve old Common.css ordering.
-- this ordering is not a guarantee because most navboxes will emit only
-- one of these classes [hlist_note]
return hlist_styles .. plainlist_styles
end
local function needsHorizontalLists(border)
if border == cfg.keyword.border_subgroup or args[cfg.arg.tracking] == cfg.keyword.tracking_no then
return false
end
return not has_list_class(cfg.pattern.hlist) and not has_list_class(cfg.pattern.plainlist)
end
local function hasBackgroundColors()
for _, key in ipairs({cfg.arg.titlestyle, cfg.arg.groupstyle,
cfg.arg.basestyle, cfg.arg.abovestyle, cfg.arg.belowstyle}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
return false
end
local function hasBorders()
for _, key in ipairs({cfg.arg.groupstyle, cfg.arg.basestyle,
cfg.arg.abovestyle, cfg.arg.belowstyle}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
return false
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match(cfg.pattern.style) then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories(border)
local cats = {}
if needsHorizontalLists(border) then table.insert(cats, cfg.category.horizontal_lists) end
if hasBackgroundColors() then table.insert(cats, cfg.category.background_colors) end
if isIllegible() then table.insert(cats, cfg.category.illegible) end
if hasBorders() then table.insert(cats, cfg.category.borders) end
return cats
end
local function renderTrackingCategories(builder, border)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == cfg.keyword.subpage_doc or subpage == cfg.keyword.subpage_sandbox
or subpage == cfg.keyword.subpage_testcases then return end
for _, cat in ipairs(getTrackingCategories(border)) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
local function renderMainTable(border, listnums)
local tbl = mw.html.create('table')
:addClass(cfg.class.nowraplinks)
:addClass(args[cfg.arg.bodyclass])
local state = args[cfg.arg.state]
if args[cfg.arg.title] and state ~= cfg.keyword.state_plain and state ~= cfg.keyword.state_off then
if state == cfg.keyword.state_collapsed then
state = cfg.class.collapsed
end
tbl
:addClass(cfg.class.collapsible)
:addClass(state or cfg.class.autocollapse)
end
tbl:css('border-spacing', 0)
if border == cfg.keyword.border_subgroup or border == cfg.keyword.border_none then
tbl
:addClass(cfg.class.navbox_subgroup)
:cssText(args[cfg.arg.bodystyle])
:cssText(args[cfg.arg.style])
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass(cfg.class.navbox_inner)
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args[cfg.arg.innerstyle])
renderTitleRow(tbl)
renderAboveRow(tbl)
local listnums_size = #listnums
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum, listnums_size)
end
renderBelowRow(tbl)
return tbl
end
local function add_navbox_styles(hiding_templatestyles)
local frame = mw.getCurrentFrame()
-- This is a lambda so that it doesn't need the frame as a parameter
local function add_user_styles(templatestyles)
if templatestyles and templatestyles ~= '' then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
end
return ''
end
-- get templatestyles. load base from config so that Lua only needs to do
-- the work once of parser tag expansion
local base_templatestyles = cfg.templatestyles
local templatestyles = add_user_styles(args[cfg.arg.templatestyles])
local child_templatestyles = add_user_styles(args[cfg.arg.child_templatestyles])
-- The 'navbox-styles' div exists to wrap the styles to work around T200206
-- more elegantly. Instead of combinatorial rules, this ends up being linear
-- number of CSS rules.
return mw.html.create('div')
:addClass(cfg.class.navbox_styles)
:wikitext(
add_list_styles() .. -- see [hlist_note] applied to 'before base_templatestyles'
base_templatestyles ..
templatestyles ..
child_templatestyles ..
table.concat(hiding_templatestyles)
)
:done()
end
-- work around [[phab:T303378]]
-- for each arg: find all the templatestyles strip markers, insert them into a
-- table. then remove all templatestyles markers from the arg
local function move_hiding_templatestyles(args)
local gfind = string.gfind
local gsub = string.gsub
local templatestyles_markers = {}
local strip_marker_pattern = '(\127[^\127]*UNIQ%-%-templatestyles%-%x+%-QINU[^\127]*\127)'
for k, arg in pairs(args) do
for marker in gfind(arg, strip_marker_pattern) do
table.insert(templatestyles_markers, marker)
end
args[k] = gsub(arg, strip_marker_pattern, '')
end
return templatestyles_markers
end
function p._navbox(navboxArgs)
args = navboxArgs
local hiding_templatestyles = move_hiding_templatestyles(args)
local listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match(cfg.pattern.listnum)
if listnum then table.insert(listnums, tonumber(listnum)) end
end
end
table.sort(listnums)
local border = mw.text.trim(args[cfg.arg.border] or args[1] or '')
if border == cfg.keyword.border_child then
border = cfg.keyword.border_subgroup
end
-- render the main body of the navbox
local tbl = renderMainTable(border, listnums)
local res = mw.html.create()
-- render the appropriate wrapper for the navbox, based on the border param
if border == cfg.keyword.border_none then
res:node(add_navbox_styles(hiding_templatestyles))
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args[cfg.arg.title] or args[cfg.arg.above] or (args[cfg.arg.group1]
and not args[cfg.arg.group2]) then
nav:attr(
'aria-labelledby',
mw.uri.anchorEncode(
args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group1]
)
)
else
nav:attr('aria-label', cfg.aria_label)
end
elseif border == cfg.keyword.border_subgroup then
-- We assume that this navbox is being rendered in a list cell of a
-- parent navbox, and is therefore inside a div with padding:0em 0.25em.
-- We start with a </div> to avoid the padding being applied, and at the
-- end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
res:node(add_navbox_styles(hiding_templatestyles))
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass(cfg.class.navbox)
:addClass(args[cfg.arg.navboxclass])
:cssText(args[cfg.arg.bodystyle])
:cssText(args[cfg.arg.style])
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args[cfg.arg.title] or args[cfg.arg.above]
or (args[cfg.arg.group1] and not args[cfg.arg.group2]) then
nav:attr(
'aria-labelledby',
mw.uri.anchorEncode(args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group1])
)
else
nav:attr('aria-label', cfg.aria_label)
end
end
if (args[cfg.arg.nocat] or cfg.keyword.nocat_false):lower() == cfg.keyword.nocat_false then
renderTrackingCategories(res, border)
end
return striped(tostring(res), border)
end
function p.navbox(frame)
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {wrappers = {cfg.pattern.navbox}})
-- Read the arguments in the order they'll be output in, to make references
-- number in the right order.
local _
_ = args[cfg.arg.title]
_ = args[cfg.arg.above]
-- Limit this to 20 as covering 'most' cases (that's a SWAG) and because
-- iterator approach won't work here
for i = 1, 20 do
_ = args[format(cfg.arg.group_and_num, i)]
_ = args[format(cfg.arg.list_and_num, i)]
end
_ = args[cfg.arg.below]
return p._navbox(args)
end
return p
t7wpbpsk2issbvsmbic7keehrtse5wh
9934
9046
2026-08-24T13:00:42Z
RAPTOR7762
18
104 revisions imported from [[:meta:Module:Navbox]]
9045
Scribunto
text/plain
require('strict')
local p = {}
local cfg = mw.loadData('Module:Navbox/configuration')
local inArray = require("Module:TableTools").inArray
local getArgs -- lazily initialized
local hiding_templatestyles = {}
-- global passthrough variables
local passthrough = {
[cfg.arg.above]=true,[cfg.arg.aboveclass]=true,[cfg.arg.abovestyle]=true,
[cfg.arg.basestyle]=true,
[cfg.arg.below]=true,[cfg.arg.belowclass]=true,[cfg.arg.belowstyle]=true,
[cfg.arg.bodyclass]=true,
[cfg.arg.groupclass]=true,
[cfg.arg.image]=true,[cfg.arg.imageclass]=true,[cfg.arg.imagestyle]=true,
[cfg.arg.imageleft]=true,[cfg.arg.imageleftstyle]=true,
[cfg.arg.listclass]=true,
[cfg.arg.name]=true,
[cfg.arg.navbar]=true,
[cfg.arg.state]=true,
[cfg.arg.title]=true,[cfg.arg.titleclass]=true,[cfg.arg.titlestyle]=true,
argHash=true
}
-- helper functions
local andnum = function(s, n) return string.format(cfg.arg[s .. '_and_num'], n) end
local isblank = function(v) return (v or '') == '' end
local function concatstrings(s)
local r = table.concat(s, '')
if r:match('^%s*$') then return nil end
return r
end
local function concatstyles(s)
local r = ''
for _, v in ipairs(s) do
v = mw.text.trim(v, "%s;")
if not isblank(v) then r = r .. v .. ';' end
end
if isblank(r) then return nil end
return r
end
local function getSubgroup(args, listnum, listText, prefix)
local subArgs = {
[cfg.arg.border] = cfg.keyword.border_subgroup,
[cfg.arg.navbar] = cfg.keyword.navbar_plain,
argHash = 0
}
local hasSubArgs = false
local subgroups_and_num = prefix and {prefix} or cfg.arg.subgroups_and_num
for k, v in pairs(args) do
k = tostring(k)
for _, w in ipairs(subgroups_and_num) do
w = string.format(w, listnum) .. "_"
if (#k > #w) and (k:sub(1, #w) == w) then
subArgs[k:sub(#w + 1)] = v
hasSubArgs = true
subArgs.argHash = subArgs.argHash + (v and #v or 0)
end
end
end
return hasSubArgs and p._navbox(subArgs) or listText
end
-- Main functions
function p._navbox(args)
if args.type == cfg.keyword.with_collapsible_groups then
return p._withCollapsibleGroups(args)
elseif args.type == cfg.keyword.with_columns then
return p._withColumns(args)
end
local function striped(wikitext, border)
-- Return wikitext with markers replaced for odd/even striping.
-- Child (subgroup) navboxes are flagged with a category that is removed
-- by parent navboxes. The result is that the category shows all pages
-- where a child navbox is not contained in a parent navbox.
local orphanCat = cfg.category.orphan
if border == cfg.keyword.border_subgroup and args[cfg.arg.orphan] ~= cfg.keyword.orphan_yes then
-- No change; striping occurs in outermost navbox.
return wikitext .. orphanCat
end
local first, second = cfg.class.navbox_odd_part, cfg.class.navbox_even_part
if args[cfg.arg.evenodd] then
if args[cfg.arg.evenodd] == cfg.keyword.evenodd_swap then
first, second = second, first
else
first = args[cfg.arg.evenodd]
second = first
end
end
local changer
if first == second then
changer = first
else
local index = 0
changer = function (code)
if code == '0' then
-- Current occurrence is for a group before a nested table.
-- Set it to first as a valid although pointless class.
-- The next occurrence will be the first row after a title
-- in a subgroup and will also be first.
index = 0
return first
end
index = index + 1
return index % 2 == 1 and first or second
end
end
local regex = orphanCat:gsub('([%[%]])', '%%%1')
return (wikitext:gsub(regex, ''):gsub(cfg.marker.regex, changer)) -- () omits gsub count
end
local function processItem(item, nowrapitems)
if item:sub(1, 2) == '{|' then
-- Applying nowrap to lines in a table does not make sense.
-- Add newlines to compensate for trim of x in |parm=x in a template.
return '\n' .. item .. '\n'
end
if nowrapitems == cfg.keyword.nowrapitems_yes then
local lines = {}
for line in (item .. '\n'):gmatch('([^\n]*)\n') do
local prefix, content = line:match('^([*:;#]+)%s*(.*)')
if prefix and not content:match(cfg.pattern.nowrap) then
line = string.format(cfg.nowrap_item, prefix, content)
end
table.insert(lines, line)
end
item = table.concat(lines, '\n')
end
if item:match('^[*:;#]') then
return '\n' .. item .. '\n'
end
return item
end
local function has_navbar()
return args[cfg.arg.navbar] ~= cfg.keyword.navbar_off
and args[cfg.arg.navbar] ~= cfg.keyword.navbar_plain
and (
args[cfg.arg.name]
or mw.getCurrentFrame():getParent():getTitle():gsub(cfg.pattern.sandbox, '')
~= cfg.pattern.navbox
)
end
-- extract text color from css, which is the only permitted inline CSS for the navbar
local function extract_color(css_str)
-- return nil because navbar takes its argument into mw.html which handles
-- nil gracefully, removing the associated style attribute
return mw.ustring.match(';' .. css_str .. ';', '.*;%s*([Cc][Oo][Ll][Oo][Rr]%s*:%s*.-)%s*;') or nil
end
local function renderNavBar(titleCell)
if has_navbar() then
local navbar = require('Module:Navbar')._navbar
titleCell:wikitext(navbar{
[cfg.navbar.name] = args[cfg.arg.name],
[cfg.navbar.mini] = 1,
[cfg.navbar.fontstyle] = extract_color(
(args[cfg.arg.basestyle] or '') .. ';' .. (args[cfg.arg.titlestyle] or '')
)
})
end
end
local function renderTitleRow(tbl)
if not args[cfg.arg.title] then return end
local titleRow = tbl:tag('tr')
local titleCell = titleRow:tag('th'):attr('scope', 'col')
local titleColspan = 2
if args[cfg.arg.imageleft] then titleColspan = titleColspan + 1 end
if args[cfg.arg.image] then titleColspan = titleColspan + 1 end
titleCell
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.titlestyle])
:addClass(cfg.class.navbox_title)
:attr('colspan', titleColspan)
renderNavBar(titleCell)
titleCell
:tag('div')
-- id for aria-labelledby attribute
:attr('id', mw.uri.anchorEncode(args[cfg.arg.title]) .. args.argHash)
:addClass(args[cfg.arg.titleclass])
:css('font-size', '114%')
:css('margin', '0 4em')
:wikitext(processItem(args[cfg.arg.title]))
end
local function getAboveBelowColspan()
local ret = 2
if args[cfg.arg.imageleft] then ret = ret + 1 end
if args[cfg.arg.image] then ret = ret + 1 end
return ret
end
local function renderAboveRow(tbl)
if not args[cfg.arg.above] then return end
tbl:tag('tr')
:tag('td')
:addClass(cfg.class.navbox_abovebelow)
:addClass(args[cfg.arg.aboveclass])
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.abovestyle])
:attr('colspan', getAboveBelowColspan())
:tag('div')
-- id for aria-labelledby attribute, if no title
:attr('id', (not args[cfg.arg.title]) and
(mw.uri.anchorEncode(args[cfg.arg.above]) .. args.argHash)
or nil)
:wikitext(processItem(args[cfg.arg.above], args[cfg.arg.nowrapitems]))
end
local function renderBelowRow(tbl)
if not args[cfg.arg.below] then return end
tbl:tag('tr')
:tag('td')
:addClass(cfg.class.navbox_abovebelow)
:addClass(args[cfg.arg.belowclass])
:cssText(args[cfg.arg.basestyle])
:cssText(args[cfg.arg.belowstyle])
:attr('colspan', getAboveBelowColspan())
:tag('div')
:wikitext(processItem(args[cfg.arg.below], args[cfg.arg.nowrapitems]))
end
local function renderListRow(tbl, index, listnum, listnums_size)
local row = tbl:tag('tr')
if index == 1 and args[cfg.arg.imageleft] then
row
:tag('td')
:addClass(cfg.class.noviewer)
:addClass(cfg.class.navbox_image)
:addClass(args[cfg.arg.imageclass])
:css('width', '1px') -- Minimize width
:css('padding', '0 2px 0 0')
:cssText(args[cfg.arg.imageleftstyle])
:attr('rowspan', listnums_size)
:tag('div')
:wikitext(processItem(args[cfg.arg.imageleft]))
end
local group_and_num = andnum('group', listnum)
local groupstyle_and_num = andnum('groupstyle', listnum)
if args[group_and_num] then
local groupCell = row:tag('th')
-- id for aria-labelledby attribute, if lone group with no title or above
if listnum == 1 and not (args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group2]) then
groupCell
:attr('id', mw.uri.anchorEncode(args[cfg.arg.group1]) .. args.argHash)
end
groupCell
:attr('scope', 'row')
:addClass(cfg.class.navbox_group)
:addClass(args[cfg.arg.groupclass])
:cssText(args[cfg.arg.basestyle])
-- If groupwidth not specified, minimize width
:css('width', args[cfg.arg.groupwidth] or '1%')
groupCell
:cssText(args[cfg.arg.groupstyle])
:cssText(args[groupstyle_and_num])
:wikitext(args[group_and_num])
end
local listCell = row:tag('td')
if args[group_and_num] then
listCell
:addClass(cfg.class.navbox_list_with_group)
else
listCell:attr('colspan', 2)
end
if not args[cfg.arg.groupwidth] then
listCell:css('width', '100%')
end
local rowstyle -- usually nil so cssText(rowstyle) usually adds nothing
if index % 2 == 1 then
rowstyle = args[cfg.arg.oddstyle]
else
rowstyle = args[cfg.arg.evenstyle]
end
local list_and_num = andnum('list', listnum)
local listText = inArray(cfg.keyword.subgroups, args[list_and_num])
and getSubgroup(args, listnum, args[list_and_num]) or args[list_and_num]
local oddEven = cfg.marker.oddeven
if listText:sub(1, 12) == '</div><table' then
-- Assume list text is for a subgroup navbox so no automatic striping for this row.
oddEven = listText:find(cfg.pattern.navbox_title) and cfg.marker.restart or cfg.class.navbox_odd_part
end
local liststyle_and_num = andnum('liststyle', listnum)
local listclass_and_num = andnum('listclass', listnum)
listCell
:css('padding', '0')
:cssText(args[cfg.arg.liststyle])
:cssText(rowstyle)
:cssText(args[liststyle_and_num])
:addClass(cfg.class.navbox_list)
:addClass(cfg.class.navbox_part .. oddEven)
:addClass(args[cfg.arg.listclass])
:addClass(args[listclass_and_num])
:tag('div')
:css('padding',
(index == 1 and args[cfg.arg.list1padding]) or args[cfg.arg.listpadding] or '0 0.25em'
)
:wikitext(processItem(listText, args[cfg.arg.nowrapitems]))
if index == 1 and args[cfg.arg.image] then
row
:tag('td')
:addClass(cfg.class.noviewer)
:addClass(cfg.class.navbox_image)
:addClass(args[cfg.arg.imageclass])
:css('width', '1px') -- Minimize width
:css('padding', '0 0 0 2px')
:cssText(args[cfg.arg.imagestyle])
:attr('rowspan', listnums_size)
:tag('div')
:wikitext(processItem(args[cfg.arg.image]))
end
end
local function has_list_class(htmlclass)
local patterns = {
'^' .. htmlclass .. '$',
'%s' .. htmlclass .. '$',
'^' .. htmlclass .. '%s',
'%s' .. htmlclass .. '%s'
}
for arg, _ in pairs(args) do
if type(arg) == 'string' and mw.ustring.find(arg, cfg.pattern.class) then
for _, pattern in ipairs(patterns) do
if mw.ustring.find(args[arg] or '', pattern) then
return true
end
end
end
end
return false
end
-- there are a lot of list classes in the wild, so we add their TemplateStyles
local function add_list_styles()
local frame = mw.getCurrentFrame()
local function add_list_templatestyles(htmlclass, templatestyles)
if has_list_class(htmlclass) then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
else
return ''
end
end
local hlist_styles = add_list_templatestyles('hlist', cfg.hlist_templatestyles)
local plainlist_styles = add_list_templatestyles('plainlist', cfg.plainlist_templatestyles)
-- a second workaround for [[phab:T303378]]
-- when that issue is fixed, we can actually use has_navbar not to emit the
-- tag here if we want
if has_navbar() and hlist_styles == '' then
hlist_styles = frame:extensionTag{
name = 'templatestyles', args = { src = cfg.hlist_templatestyles }
}
end
-- hlist -> plainlist is best-effort to preserve old Common.css ordering.
-- this ordering is not a guarantee because most navboxes will emit only
-- one of these classes [hlist_note]
return hlist_styles .. plainlist_styles
end
local function needsHorizontalLists(border)
if border == cfg.keyword.border_subgroup or args[cfg.arg.tracking] == cfg.keyword.tracking_no then
return false
end
return not has_list_class(cfg.pattern.hlist) and not has_list_class(cfg.pattern.plainlist)
end
local function hasBackgroundColors()
for _, key in ipairs({cfg.arg.titlestyle, cfg.arg.groupstyle,
cfg.arg.basestyle, cfg.arg.abovestyle, cfg.arg.belowstyle}) do
if tostring(args[key]):find('background', 1, true) then
return true
end
end
return false
end
local function hasBorders()
for _, key in ipairs({cfg.arg.groupstyle, cfg.arg.basestyle,
cfg.arg.abovestyle, cfg.arg.belowstyle}) do
if tostring(args[key]):find('border', 1, true) then
return true
end
end
return false
end
local function isIllegible()
local styleratio = require('Module:Color contrast')._styleratio
for key, style in pairs(args) do
if tostring(key):match(cfg.pattern.style) then
if styleratio{mw.text.unstripNoWiki(style)} < 4.5 then
return true
end
end
end
return false
end
local function getTrackingCategories(border)
local cats = {}
if needsHorizontalLists(border) then table.insert(cats, cfg.category.horizontal_lists) end
if hasBackgroundColors() then table.insert(cats, cfg.category.background_colors) end
if isIllegible() then table.insert(cats, cfg.category.illegible) end
if hasBorders() then table.insert(cats, cfg.category.borders) end
return cats
end
local function renderTrackingCategories(builder, border)
local title = mw.title.getCurrentTitle()
if title.namespace ~= 10 then return end -- not in template space
local subpage = title.subpageText
if subpage == cfg.keyword.subpage_doc or subpage == cfg.keyword.subpage_sandbox
or subpage == cfg.keyword.subpage_testcases then return end
for _, cat in ipairs(getTrackingCategories(border)) do
builder:wikitext('[[Category:' .. cat .. ']]')
end
end
local function renderMainTable(border, listnums)
local tbl = mw.html.create('table')
:addClass(cfg.class.nowraplinks)
:addClass(args[cfg.arg.bodyclass])
local state = args[cfg.arg.state]
if args[cfg.arg.title] and state ~= cfg.keyword.state_plain and state ~= cfg.keyword.state_off then
if state == cfg.keyword.state_collapsed then
state = cfg.class.collapsed
end
tbl
:addClass(cfg.class.collapsible)
:addClass(state or cfg.class.autocollapse)
end
tbl:css('border-spacing', 0)
if border == cfg.keyword.border_subgroup or border == cfg.keyword.border_none then
tbl
:addClass(cfg.class.navbox_subgroup)
:cssText(args[cfg.arg.bodystyle])
:cssText(args[cfg.arg.style])
else -- regular navbox - bodystyle and style will be applied to the wrapper table
tbl
:addClass(cfg.class.navbox_inner)
:css('background', 'transparent')
:css('color', 'inherit')
end
tbl:cssText(args[cfg.arg.innerstyle])
renderTitleRow(tbl)
renderAboveRow(tbl)
local listnums_size = #listnums
for i, listnum in ipairs(listnums) do
renderListRow(tbl, i, listnum, listnums_size)
end
renderBelowRow(tbl)
return tbl
end
local function add_navbox_styles(hiding_templatestyles)
local frame = mw.getCurrentFrame()
-- This is a lambda so that it doesn't need the frame as a parameter
local function add_user_styles(templatestyles)
if not isblank(templatestyles) then
return frame:extensionTag{
name = 'templatestyles', args = { src = templatestyles }
}
end
return ''
end
-- get templatestyles. load base from config so that Lua only needs to do
-- the work once of parser tag expansion
local base_templatestyles = cfg.templatestyles
local templatestyles = add_user_styles(args[cfg.arg.templatestyles])
local child_templatestyles = add_user_styles(args[cfg.arg.child_templatestyles])
-- The 'navbox-styles' div exists to wrap the styles to work around T200206
-- more elegantly. Instead of combinatorial rules, this ends up being linear
-- number of CSS rules.
return mw.html.create('div')
:addClass(cfg.class.navbox_styles)
:wikitext(
add_list_styles() .. -- see [hlist_note] applied to 'before base_templatestyles'
base_templatestyles ..
templatestyles ..
child_templatestyles ..
table.concat(hiding_templatestyles)
)
:done()
end
-- work around [[phab:T303378]]
-- for each arg: find all the templatestyles strip markers, insert them into a
-- table. then remove all templatestyles markers from the arg
local strip_marker_pattern = '(\127[^\127]*UNIQ%-%-templatestyles%-%x+%-QINU[^\127]*\127)'
local argHash = 0
for k, arg in pairs(args) do
if type(arg) == 'string' then
for marker in string.gfind(arg, strip_marker_pattern) do
table.insert(hiding_templatestyles, marker)
end
argHash = argHash + #arg
args[k] = string.gsub(arg, strip_marker_pattern, '')
end
end
if not args.argHash then args.argHash = argHash end
local listnums = {}
for k, _ in pairs(args) do
if type(k) == 'string' then
local listnum = k:match(cfg.pattern.listnum)
if listnum and args[andnum('list', tonumber(listnum))] then
table.insert(listnums, tonumber(listnum))
end
end
end
table.sort(listnums)
local border = mw.text.trim(args[cfg.arg.border] or args[1] or '')
if border == cfg.keyword.border_child then
border = cfg.keyword.border_subgroup
end
-- render the main body of the navbox
local tbl = renderMainTable(border, listnums)
local res = mw.html.create()
-- render the appropriate wrapper for the navbox, based on the border param
if border == cfg.keyword.border_none then
res:node(add_navbox_styles(hiding_templatestyles))
local nav = res:tag('div')
:attr('role', 'navigation')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args[cfg.arg.title] or args[cfg.arg.above] or (args[cfg.arg.group1]
and not args[cfg.arg.group2]) then
nav:attr(
'aria-labelledby',
mw.uri.anchorEncode(
args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group1]
) .. args.argHash
)
else
nav:attr('aria-label', cfg.aria_label .. args.argHash)
end
elseif border == cfg.keyword.border_subgroup then
-- We assume that this navbox is being rendered in a list cell of a
-- parent navbox, and is therefore inside a div with padding:0em 0.25em.
-- We start with a </div> to avoid the padding being applied, and at the
-- end add a <div> to balance out the parent's </div>
res
:wikitext('</div>')
:node(tbl)
:wikitext('<div>')
else
res:node(add_navbox_styles(hiding_templatestyles))
local nav = res:tag('div')
:attr('role', 'navigation')
:addClass(cfg.class.navbox)
:addClass(args[cfg.arg.navboxclass])
:cssText(args[cfg.arg.bodystyle])
:cssText(args[cfg.arg.style])
:css('padding', '3px')
:node(tbl)
-- aria-labelledby title, otherwise above, otherwise lone group
if args[cfg.arg.title] or args[cfg.arg.above]
or (args[cfg.arg.group1] and not args[cfg.arg.group2]) then
nav:attr(
'aria-labelledby',
mw.uri.anchorEncode(
args[cfg.arg.title] or args[cfg.arg.above] or args[cfg.arg.group1]
) .. args.argHash
)
else
nav:attr('aria-label', cfg.aria_label .. args.argHash)
end
end
if (args[cfg.arg.nocat] or cfg.keyword.nocat_false):lower() == cfg.keyword.nocat_false then
renderTrackingCategories(res, border)
end
return striped(tostring(res), border)
end --p._navbox
function p._withCollapsibleGroups(pargs)
-- table for args passed to navbox
local targs = {}
-- process args
local passthroughLocal = {
[cfg.arg.bodystyle] = true,
[cfg.arg.border] = true,
[cfg.arg.style] = true,
}
for k,v in pairs(pargs) do
if k and type(k) == 'string' then
if passthrough[k] or passthroughLocal[k] then
targs[k] = v
elseif (k:match(cfg.pattern.num)) then
local n = k:match(cfg.pattern.num)
local list_and_num = andnum('list', n)
if ((k:match(cfg.pattern.listnum) or k:match(cfg.pattern.contentnum))
and targs[list_and_num] == nil
and pargs[andnum('group', n)] == nil
and pargs[andnum('sect', n)] == nil
and pargs[andnum('section', n)] == nil) then
targs[list_and_num] = concatstrings({
pargs[list_and_num] or '',
pargs[andnum('content', n)] or ''
})
if (targs[list_and_num] and inArray(cfg.keyword.subgroups, targs[list_and_num])) then
targs[list_and_num] = getSubgroup(pargs, n, targs[list_and_num])
end
elseif ((k:match(cfg.pattern.groupnum) or k:match(cfg.pattern.sectnum) or k:match(cfg.pattern.sectionnum))
and targs[list_and_num] == nil) then
local titlestyle = concatstyles({
pargs[cfg.arg.groupstyle] or '',
pargs[cfg.arg.secttitlestyle] or '',
pargs[andnum('groupstyle', n)] or '',
pargs[andnum('sectiontitlestyle', n)] or ''
})
local liststyle = concatstyles({
pargs[cfg.arg.liststyle] or '',
pargs[cfg.arg.contentstyle] or '',
pargs[andnum('liststyle', n)] or '',
pargs[andnum('contentstyle', n)] or ''
})
local title = concatstrings({
pargs[andnum('group', n)] or '',
pargs[andnum('sect', n)] or '',
pargs[andnum('section', n)] or ''
})
local list = concatstrings({
pargs[list_and_num] or '',
pargs[andnum('content', n)] or ''
})
if list and inArray(cfg.keyword.subgroups, list) then
list = getSubgroup(pargs, n, list)
end
local abbr_and_num = andnum('abbr', n)
local state = (pargs[abbr_and_num] and pargs[abbr_and_num] == pargs[cfg.arg.selected])
and cfg.keyword.state_uncollapsed
or (pargs[andnum('state', n)] or cfg.keyword.state_collapsed)
targs[list_and_num] =p._navbox({
cfg.keyword.border_child,
[cfg.arg.navbar] = cfg.keyword.navbar_plain,
[cfg.arg.state] = state,
[cfg.arg.basestyle] = pargs[cfg.arg.basestyle],
[cfg.arg.title] = title,
[cfg.arg.titlestyle] = titlestyle,
[andnum('list', 1)] = list,
[cfg.arg.liststyle] = liststyle,
[cfg.arg.listclass] = pargs[andnum('listclass', n)],
[cfg.arg.image] = pargs[andnum('image', n)],
[cfg.arg.imageleft] = pargs[andnum('imageleft', n)],
[cfg.arg.listpadding] = pargs[cfg.arg.listpadding],
argHash = pargs.argHash
})
end
end
end
end
-- ordering of style and bodystyle
targs[cfg.arg.style] = concatstyles({targs[cfg.arg.style] or '', targs[cfg.arg.bodystyle] or ''})
targs[cfg.arg.bodystyle] = nil
-- child or subgroup
if targs[cfg.arg.border] == nil then targs[cfg.arg.border] = pargs[1] end
return p._navbox(targs)
end --p._withCollapsibleGroups
function p._withColumns(pargs)
-- table for args passed to navbox
local targs = {}
-- tables of column numbers
local colheadernums = {}
local colnums = {}
local colfooternums = {}
-- process args
local passthroughLocal = {
[cfg.arg.evenstyle]=true,
[cfg.arg.groupstyle]=true,
[cfg.arg.liststyle]=true,
[cfg.arg.oddstyle]=true,
[cfg.arg.state]=true,
}
for k,v in pairs(pargs) do
if passthrough[k] or passthroughLocal[k] then
targs[k] = v
elseif type(k) == 'string' then
if k:match(cfg.pattern.listnum) then
local n = k:match(cfg.pattern.listnum)
targs[andnum('liststyle', n + 2)] = pargs[andnum('liststyle', n)]
targs[andnum('group', n + 2)] = pargs[andnum('group', n)]
targs[andnum('groupstyle', n + 2)] = pargs[andnum('groupstyle', n)]
if v and inArray(cfg.keyword.subgroups, v) then
targs[andnum('list', n + 2)] = getSubgroup(pargs, n, v)
else
targs[andnum('list', n + 2)] = v
end
elseif (k:match(cfg.pattern.colheadernum) and v ~= '') then
table.insert(colheadernums, tonumber(k:match(cfg.pattern.colheadernum)))
elseif (k:match(cfg.pattern.colnum) and v ~= '') then
table.insert(colnums, tonumber(k:match(cfg.pattern.colnum)))
elseif (k:match(cfg.pattern.colfooternum) and v ~= '') then
table.insert(colfooternums, tonumber(k:match(cfg.pattern.colfooternum)))
end
end
end
table.sort(colheadernums)
table.sort(colnums)
table.sort(colfooternums)
-- HTML table for list1
local coltable = mw.html.create( 'table' ):addClass('navbox-columns-table')
local row, col
local tablestyle = ( (#colheadernums > 0) or (not isblank(pargs[cfg.arg.fullwidth])) )
and 'width:100%'
or 'width:auto; margin-left:auto; margin-right:auto'
coltable:cssText(concatstyles({
'border-spacing: 0px; text-align:left',
tablestyle,
pargs[cfg.arg.coltablestyle] or ''
}))
--- Header row ---
if (#colheadernums > 0) then
row = coltable:tag('tr')
for k, n in ipairs(colheadernums) do
col = row:tag('th'):addClass('navbox-abovebelow')
col:cssText(concatstyles({
(k > 1) and 'border-left:2px solid #fdfdfd' or '',
'font-weight:bold',
pargs[cfg.arg.colheaderstyle] or '',
pargs[andnum('colheaderstyle', n)] or ''
}))
col:attr('colspan', tonumber(pargs[andnum('colheadercolspan', n)]))
col:wikitext(pargs[andnum('colheader', n)])
end
end
--- Main columns ---
row = coltable:tag('tr'):css('vertical-align', 'top')
for k, n in ipairs(colnums) do
if k == 1 and isblank(pargs[andnum('colheader', 1)])
and isblank(pargs[andnum('colfooter', 1)])
and isblank(pargs[cfg.arg.fullwidth]) then
local nopad = inArray(
{'off', '0', '0em', '0px'},
mw.ustring.gsub(pargs[cfg.arg.padding] or '', '[;%%]', ''))
if not nopad then
row:tag('td'):wikitext(' ')
:css('width', (pargs[cfg.arg.padding] or '5em'))
end
end
col = row:tag('td'):addClass('navbox-list')
col:cssText(concatstyles({
(k > 1) and 'border-left:2px solid #fdfdfd' or '',
'padding:0px',
pargs[cfg.arg.colstyle] or '',
((n%2 == 0) and pargs[cfg.arg.evencolstyle] or pargs[cfg.arg.oddcolstyle]) or '',
pargs[andnum('colstyle', n)] or '',
'width:' .. (pargs[andnum('colwidth', n)] or pargs[cfg.arg.colwidth] or '10em')
}))
local wt = pargs[andnum('col', n)]
if wt and inArray(cfg.keyword.subgroups, wt) then
wt = getSubgroup(pargs, n, wt, cfg.arg.col_and_num)
end
col:tag('div'):newline():wikitext(wt):newline()
end
--- Footer row ---
if (#colfooternums > 0) then
row = coltable:tag('tr')
for k, n in ipairs(colfooternums) do
col = row:tag('td'):addClass('navbox-abovebelow')
col:cssText(concatstyles({
(k > 1) and 'border-left:2px solid #fdfdfd' or '',
'font-weight:bold',
pargs[cfg.arg.colfooterstyle] or '',
pargs[andnum('colfooterstyle', n)] or ''
}))
col:attr('colspan', tonumber(pargs[andnum('colfootercolspan', n)]))
col:wikitext(pargs[andnum('colfooter', n)])
end
end
-- assign table to list1
targs[andnum('list', 1)] = tostring(coltable)
if isblank(pargs[andnum('colheader', 1)])
and isblank(pargs[andnum('col', 1)])
and isblank(pargs[andnum('colfooter', 1)]) then
targs[andnum('list', 1)] = targs[andnum('list', 1)] ..
cfg.category.without_first_col
end
-- Other parameters
targs[cfg.arg.border] = pargs[cfg.arg.border] or pargs[1]
targs[cfg.arg.evenodd] = (not isblank(pargs[cfg.arg.evenodd])) and pargs[cfg.arg.evenodd] or nil
targs[cfg.arg.list1padding] = '0px'
targs[andnum('liststyle', 1)] = 'background:transparent;color:inherit;'
targs[cfg.arg.style] = concatstyles({pargs[cfg.arg.style], pargs[cfg.arg.bodystyle]})
targs[cfg.arg.tracking] = 'no'
return p._navbox(targs)
end --p._withColumns
-- Template entry points
function p.navbox (frame, boxtype)
local function readArgs(args, prefix)
local function readSubgroups(element, i)
if inArray(cfg.keyword.subgroups, args[prefix .. andnum(element, i)]) then
for _, v in ipairs(cfg.arg.subgroups_and_num) do
readArgs(args, prefix .. string.format(v, i) .. "_")
end
readArgs(args, prefix .. andnum('col', i) .. "_")
end
end
-- Read the arguments in the order they'll be output in, to make references
-- number in the right order.
local _
_ = args[prefix .. cfg.arg.title]
_ = args[prefix .. cfg.arg.above]
-- Limit this to 20 as covering 'most' cases (that's a SWAG) and because
-- iterator approach won't work here
local boxtype = args.type or cfg.keyword[boxtype]
if boxtype == cfg.keyword.with_columns then
for i = 1, 20 do
_ = args[prefix .. andnum('colheader', i)]
end
for i = 1, 20 do
readSubgroups('col', i)
end
for i = 1, 20 do
_ = args[prefix .. andnum('colfooter', i)]
end
end
for i = 1, 20 do
_ = args[prefix .. andnum('group', i)]
readSubgroups('list', i)
end
_ = args[prefix .. cfg.arg.below]
end
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
local args = getArgs(frame, {wrappers = {cfg.pattern[boxtype or 'navbox']}})
readArgs(args, "")
args.argHash = nil -- we shouldn't accept argHash passed from a template
args.type = args.type or cfg.keyword[boxtype]
return p['_navbox'](args)
end
p[cfg.keyword.with_collapsible_groups] = function (frame)
return p.navbox(frame, 'with_collapsible_groups')
end
p[cfg.keyword.with_columns] = function (frame)
return p.navbox(frame, 'with_columns')
end
return p
1s4hl193ornydh8zrrhga8nr1v6arn9
Module:Navbox/configuration
828
1048
10382
2022-08-19T13:25:44Z
meta>Pols12
0
Pull [[:en:Module:Navbox|from en.wp]], by [[user:Izno|Izno]]
10382
Scribunto
text/plain
return {
aria_label = 'Navbox',
nowrap_item = '%s<span class="nowrap">%s</span>',
templatestyles = mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Module:Navbox/styles.css' }
},
-- do not localize marker table
marker = {
oddeven = '\127_ODDEVEN_\127',
restart = '\127_ODDEVEN0_\127',
regex = '\127_ODDEVEN(%d?)_\127'
},
category = {
orphan = '[[Category:Navbox orphans]]',
horizontal_lists = 'Navigational boxes without horizontal lists',
background_colors = 'Navboxes using background colours',
illegible = 'Potentially illegible navboxes',
borders = 'Navboxes using borders',
},
keyword = {
border_subgroup = 'subgroup',
border_child = 'child',
border_none = 'none',
evenodd_swap = 'swap',
navbar_off = 'off',
navbar_plain = 'plain',
nocat_false = 'false',
nowrapitems_yes = 'yes',
orphan_yes = 'yes',
state_collapsed = 'collapsed',
state_off = 'off',
state_plain = 'plain',
subpage_doc = 'doc',
subpage_sandbox = 'sandbox',
subpage_testcases = 'testcases',
tracking_no = 'no'
},
class = {
autocollapse = 'autocollapse',
collapsible = 'mw-collapsible',
collapsed = 'mw-collapsed',
-- Warning
navbox = 'navbox', -- WMF currently hides 'navbox' from mobile,
-- so you probably shouldn't change the navbox class.
navbox_abovebelow = 'navbox-abovebelow',
navbox_group = 'navbox-group',
navbox_image = 'navbox-image',
navbox_inner = 'navbox-inner',
navbox_list = 'navbox-list',
navbox_list_with_group = 'navbox-list-with-group',
navbox_part = 'navbox-', -- do not l10n
navbox_styles = 'navbox-styles',
navbox_subgroup = 'navbox-subgroup',
navbox_title = 'navbox-title', -- l10n only if you change pattern.navbox_title below
navbox_odd_part = 'odd', -- do not l10n
navbox_even_part = 'even', -- do not l10n
nomobile = 'nomobile',
nowraplinks = 'nowraplinks',
noviewer = 'noviewer' -- used to remove images from MediaViewer
},
pattern = {
listnum = '^list(%d+)$',
sandbox = '/sandbox$',
navbox = 'Template:Navbox',
nowrap = '^<span class="nowrap">',
style = 'style$',
navbox_title = '<th[^>]*"navbox%-title"',
hlist = 'hlist',
plainlist = 'plainlist'
},
arg = {
above = 'above',
aboveclass = 'aboveclass',
abovestyle = 'abovestyle',
basestyle = 'basestyle',
bodyclass = 'bodyclass',
bodystyle = 'bodystyle',
border = 'border',
below = 'below',
belowclass = 'belowclass',
belowstyle = 'belowstyle',
evenodd = 'evenodd',
evenstyle = 'evenstyle',
group1 = 'group1',
group2 = 'group2',
group_and_num = 'group%d',
groupstyle_and_num = 'group%dstyle',
groupclass = 'groupclass',
groupstyle = 'groupstyle',
groupwidth = 'groupwidth',
innerstyle = 'innerstyle',
image = 'image',
imageclass = 'imageclass',
imageleft = 'imageleft',
imageleftstyle = 'imageleftstyle',
imagesetyle = 'imagestyle',
list_and_num = 'list%d',
listclass_and_num = 'list%dclass',
liststyle_and_num = 'list%dstyle',
list1padding = 'list1padding',
listclass = 'listclass',
listpadding = 'listpadding',
liststyle = 'liststyle',
name = 'name',
navbar = 'navbar',
navboxclass = 'navboxclass',
nocat = 'nocat',
nowrapitems = 'nowrapitems',
oddstyle = 'oddstyle',
orphan = 'orphan',
state = 'state',
style = 'style',
templatestyles = 'templatestyles',
child_templatestyles = 'child templatestyles',
title = 'title',
titleclass = 'titleclass',
titlestyle = 'titlestyle',
tracking = 'tracking'
},
-- names of navbar arguments
navbar = {
name = 1,
fontstyle = 'fontstyle',
mini = 'mini'
}
}
8npf15277sgmgep5j2bnmes7i7ktuvo
10383
10382
2023-03-08T21:08:58Z
meta>Pols12
0
Updates from en
10383
Scribunto
text/plain
return {
aria_label = 'Navbox',
nowrap_item = '%s<span class="nowrap">%s</span>',
templatestyles = mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Module:Navbox/styles.css' }
},
hlist_templatestyles = 'Hlist/styles.css',
plainlist_templatestyles = 'Plainlist/styles.css',
-- do not localize marker table
marker = {
oddeven = '\127_ODDEVEN_\127',
restart = '\127_ODDEVEN0_\127',
regex = '\127_ODDEVEN(%d?)_\127'
},
category = {
orphan = '[[Category:Navbox orphans]]',
horizontal_lists = 'Navigational boxes without horizontal lists',
background_colors = 'Navboxes using background colours',
illegible = 'Potentially illegible navboxes',
borders = 'Navboxes using borders',
},
keyword = {
border_subgroup = 'subgroup',
border_child = 'child',
border_none = 'none',
evenodd_swap = 'swap',
navbar_off = 'off',
navbar_plain = 'plain',
nocat_false = 'false',
nowrapitems_yes = 'yes',
orphan_yes = 'yes',
state_collapsed = 'collapsed',
state_off = 'off',
state_plain = 'plain',
subpage_doc = 'doc',
subpage_sandbox = 'sandbox',
subpage_testcases = 'testcases',
tracking_no = 'no'
},
class = {
autocollapse = 'autocollapse',
collapsible = 'mw-collapsible',
collapsed = 'mw-collapsed',
-- Warning
navbox = 'navbox', -- WMF currently hides 'navbox' from mobile,
-- so you probably shouldn't change the navbox class.
navbox_abovebelow = 'navbox-abovebelow',
navbox_group = 'navbox-group',
navbox_image = 'navbox-image',
navbox_inner = 'navbox-inner',
navbox_list = 'navbox-list',
navbox_list_with_group = 'navbox-list-with-group',
navbox_part = 'navbox-', -- do not l10n
navbox_styles = 'navbox-styles',
navbox_subgroup = 'navbox-subgroup',
navbox_title = 'navbox-title', -- l10n only if you change pattern.navbox_title below
navbox_odd_part = 'odd', -- do not l10n
navbox_even_part = 'even', -- do not l10n
nomobile = 'nomobile',
nowraplinks = 'nowraplinks',
noviewer = 'noviewer' -- used to remove images from MediaViewer
},
pattern = {
listnum = '^list(%d+)$',
class = 'class',
sandbox = '/sandbox$',
navbox = 'Template:Navbox',
nowrap = '^<span class="nowrap">',
style = 'style$',
navbox_title = '<th[^>]*"navbox%-title"',
hlist = 'hlist',
plainlist = 'plainlist',
},
arg = {
above = 'above',
aboveclass = 'aboveclass',
abovestyle = 'abovestyle',
basestyle = 'basestyle',
bodyclass = 'bodyclass',
bodystyle = 'bodystyle',
border = 'border',
below = 'below',
belowclass = 'belowclass',
belowstyle = 'belowstyle',
evenodd = 'evenodd',
evenstyle = 'evenstyle',
group1 = 'group1',
group2 = 'group2',
group_and_num = 'group%d',
groupstyle_and_num = 'group%dstyle',
groupclass = 'groupclass',
groupstyle = 'groupstyle',
groupwidth = 'groupwidth',
innerstyle = 'innerstyle',
image = 'image',
imageclass = 'imageclass',
imageleft = 'imageleft',
imageleftstyle = 'imageleftstyle',
imagesetyle = 'imagestyle',
list_and_num = 'list%d',
listclass_and_num = 'list%dclass',
liststyle_and_num = 'list%dstyle',
list1padding = 'list1padding',
listclass = 'listclass',
listpadding = 'listpadding',
liststyle = 'liststyle',
name = 'name',
navbar = 'navbar',
navboxclass = 'navboxclass',
nocat = 'nocat',
nowrapitems = 'nowrapitems',
oddstyle = 'oddstyle',
orphan = 'orphan',
state = 'state',
style = 'style',
templatestyles = 'templatestyles',
child_templatestyles = 'child templatestyles',
title = 'title',
titleclass = 'titleclass',
titlestyle = 'titlestyle',
tracking = 'tracking'
},
-- names of navbar arguments
navbar = {
name = 1,
fontstyle = 'fontstyle',
mini = 'mini'
}
}
7mj0kr78pzwcz3ekw0yzlsf1d0gfsnd
10384
10383
2023-03-08T23:25:28Z
meta>Pols12
0
Fixes hlist_templatestyles: we follow [[mw:Template:Flatlist]]
10384
Scribunto
text/plain
return {
aria_label = 'Navbox',
nowrap_item = '%s<span class="nowrap">%s</span>',
templatestyles = mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Module:Navbox/styles.css' }
},
hlist_templatestyles = 'Flatlist/styles.css', --Follow mw: rather than w:en:
plainlist_templatestyles = 'Plainlist/styles.css',
-- do not localize marker table
marker = {
oddeven = '\127_ODDEVEN_\127',
restart = '\127_ODDEVEN0_\127',
regex = '\127_ODDEVEN(%d?)_\127'
},
category = {
orphan = '[[Category:Navbox orphans]]',
horizontal_lists = 'Navigational boxes without horizontal lists',
background_colors = 'Navboxes using background colours',
illegible = 'Potentially illegible navboxes',
borders = 'Navboxes using borders',
},
keyword = {
border_subgroup = 'subgroup',
border_child = 'child',
border_none = 'none',
evenodd_swap = 'swap',
navbar_off = 'off',
navbar_plain = 'plain',
nocat_false = 'false',
nowrapitems_yes = 'yes',
orphan_yes = 'yes',
state_collapsed = 'collapsed',
state_off = 'off',
state_plain = 'plain',
subpage_doc = 'doc',
subpage_sandbox = 'sandbox',
subpage_testcases = 'testcases',
tracking_no = 'no'
},
class = {
autocollapse = 'autocollapse',
collapsible = 'mw-collapsible',
collapsed = 'mw-collapsed',
-- Warning
navbox = 'navbox', -- WMF currently hides 'navbox' from mobile,
-- so you probably shouldn't change the navbox class.
navbox_abovebelow = 'navbox-abovebelow',
navbox_group = 'navbox-group',
navbox_image = 'navbox-image',
navbox_inner = 'navbox-inner',
navbox_list = 'navbox-list',
navbox_list_with_group = 'navbox-list-with-group',
navbox_part = 'navbox-', -- do not l10n
navbox_styles = 'navbox-styles',
navbox_subgroup = 'navbox-subgroup',
navbox_title = 'navbox-title', -- l10n only if you change pattern.navbox_title below
navbox_odd_part = 'odd', -- do not l10n
navbox_even_part = 'even', -- do not l10n
nomobile = 'nomobile',
nowraplinks = 'nowraplinks',
noviewer = 'noviewer' -- used to remove images from MediaViewer
},
pattern = {
listnum = '^list(%d+)$',
class = 'class',
sandbox = '/sandbox$',
navbox = 'Template:Navbox',
nowrap = '^<span class="nowrap">',
style = 'style$',
navbox_title = '<th[^>]*"navbox%-title"',
hlist = 'hlist',
plainlist = 'plainlist',
},
arg = {
above = 'above',
aboveclass = 'aboveclass',
abovestyle = 'abovestyle',
basestyle = 'basestyle',
bodyclass = 'bodyclass',
bodystyle = 'bodystyle',
border = 'border',
below = 'below',
belowclass = 'belowclass',
belowstyle = 'belowstyle',
evenodd = 'evenodd',
evenstyle = 'evenstyle',
group1 = 'group1',
group2 = 'group2',
group_and_num = 'group%d',
groupstyle_and_num = 'group%dstyle',
groupclass = 'groupclass',
groupstyle = 'groupstyle',
groupwidth = 'groupwidth',
innerstyle = 'innerstyle',
image = 'image',
imageclass = 'imageclass',
imageleft = 'imageleft',
imageleftstyle = 'imageleftstyle',
imagesetyle = 'imagestyle',
list_and_num = 'list%d',
listclass_and_num = 'list%dclass',
liststyle_and_num = 'list%dstyle',
list1padding = 'list1padding',
listclass = 'listclass',
listpadding = 'listpadding',
liststyle = 'liststyle',
name = 'name',
navbar = 'navbar',
navboxclass = 'navboxclass',
nocat = 'nocat',
nowrapitems = 'nowrapitems',
oddstyle = 'oddstyle',
orphan = 'orphan',
state = 'state',
style = 'style',
templatestyles = 'templatestyles',
child_templatestyles = 'child templatestyles',
title = 'title',
titleclass = 'titleclass',
titlestyle = 'titlestyle',
tracking = 'tracking'
},
-- names of navbar arguments
navbar = {
name = 1,
fontstyle = 'fontstyle',
mini = 'mini'
}
}
hn82escy25lhi2t2i9yb2irmzfxj02i
10385
10384
2023-03-12T18:01:17Z
meta>MusikBot II
0
Protected "[[Module:Navbox/configuration]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
10384
Scribunto
text/plain
return {
aria_label = 'Navbox',
nowrap_item = '%s<span class="nowrap">%s</span>',
templatestyles = mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Module:Navbox/styles.css' }
},
hlist_templatestyles = 'Flatlist/styles.css', --Follow mw: rather than w:en:
plainlist_templatestyles = 'Plainlist/styles.css',
-- do not localize marker table
marker = {
oddeven = '\127_ODDEVEN_\127',
restart = '\127_ODDEVEN0_\127',
regex = '\127_ODDEVEN(%d?)_\127'
},
category = {
orphan = '[[Category:Navbox orphans]]',
horizontal_lists = 'Navigational boxes without horizontal lists',
background_colors = 'Navboxes using background colours',
illegible = 'Potentially illegible navboxes',
borders = 'Navboxes using borders',
},
keyword = {
border_subgroup = 'subgroup',
border_child = 'child',
border_none = 'none',
evenodd_swap = 'swap',
navbar_off = 'off',
navbar_plain = 'plain',
nocat_false = 'false',
nowrapitems_yes = 'yes',
orphan_yes = 'yes',
state_collapsed = 'collapsed',
state_off = 'off',
state_plain = 'plain',
subpage_doc = 'doc',
subpage_sandbox = 'sandbox',
subpage_testcases = 'testcases',
tracking_no = 'no'
},
class = {
autocollapse = 'autocollapse',
collapsible = 'mw-collapsible',
collapsed = 'mw-collapsed',
-- Warning
navbox = 'navbox', -- WMF currently hides 'navbox' from mobile,
-- so you probably shouldn't change the navbox class.
navbox_abovebelow = 'navbox-abovebelow',
navbox_group = 'navbox-group',
navbox_image = 'navbox-image',
navbox_inner = 'navbox-inner',
navbox_list = 'navbox-list',
navbox_list_with_group = 'navbox-list-with-group',
navbox_part = 'navbox-', -- do not l10n
navbox_styles = 'navbox-styles',
navbox_subgroup = 'navbox-subgroup',
navbox_title = 'navbox-title', -- l10n only if you change pattern.navbox_title below
navbox_odd_part = 'odd', -- do not l10n
navbox_even_part = 'even', -- do not l10n
nomobile = 'nomobile',
nowraplinks = 'nowraplinks',
noviewer = 'noviewer' -- used to remove images from MediaViewer
},
pattern = {
listnum = '^list(%d+)$',
class = 'class',
sandbox = '/sandbox$',
navbox = 'Template:Navbox',
nowrap = '^<span class="nowrap">',
style = 'style$',
navbox_title = '<th[^>]*"navbox%-title"',
hlist = 'hlist',
plainlist = 'plainlist',
},
arg = {
above = 'above',
aboveclass = 'aboveclass',
abovestyle = 'abovestyle',
basestyle = 'basestyle',
bodyclass = 'bodyclass',
bodystyle = 'bodystyle',
border = 'border',
below = 'below',
belowclass = 'belowclass',
belowstyle = 'belowstyle',
evenodd = 'evenodd',
evenstyle = 'evenstyle',
group1 = 'group1',
group2 = 'group2',
group_and_num = 'group%d',
groupstyle_and_num = 'group%dstyle',
groupclass = 'groupclass',
groupstyle = 'groupstyle',
groupwidth = 'groupwidth',
innerstyle = 'innerstyle',
image = 'image',
imageclass = 'imageclass',
imageleft = 'imageleft',
imageleftstyle = 'imageleftstyle',
imagesetyle = 'imagestyle',
list_and_num = 'list%d',
listclass_and_num = 'list%dclass',
liststyle_and_num = 'list%dstyle',
list1padding = 'list1padding',
listclass = 'listclass',
listpadding = 'listpadding',
liststyle = 'liststyle',
name = 'name',
navbar = 'navbar',
navboxclass = 'navboxclass',
nocat = 'nocat',
nowrapitems = 'nowrapitems',
oddstyle = 'oddstyle',
orphan = 'orphan',
state = 'state',
style = 'style',
templatestyles = 'templatestyles',
child_templatestyles = 'child templatestyles',
title = 'title',
titleclass = 'titleclass',
titlestyle = 'titlestyle',
tracking = 'tracking'
},
-- names of navbar arguments
navbar = {
name = 1,
fontstyle = 'fontstyle',
mini = 'mini'
}
}
hn82escy25lhi2t2i9yb2irmzfxj02i
10386
9048
2026-08-24T13:01:01Z
RAPTOR7762
18
4 revisions imported from [[:meta:Module:Navbox/configuration]]
9047
Scribunto
text/plain
return {
aria_label = 'Navbox',
nowrap_item = '%s<span class="nowrap">%s</span>',
templatestyles = mw.getCurrentFrame():extensionTag{
name = 'templatestyles', args = { src = 'Module:Navbox/styles.css' }
},
hlist_templatestyles = 'Hlist/styles.css',
plainlist_templatestyles = 'Plainlist/styles.css',
-- do not localize marker table
marker = {
oddeven = '\127_ODDEVEN_\127',
restart = '\127_ODDEVEN0_\127',
regex = '\127_ODDEVEN(%d?)_\127'
},
category = {
orphan = '[[Category:Navbox orphans]]',
horizontal_lists = 'Navigational boxes without horizontal lists',
background_colors = 'Navboxes using background colours',
illegible = 'Potentially illegible navboxes',
borders = 'Navboxes using borders',
without_first_col = '[[Category:Pages using navbox columns without the first column]]'
},
keyword = {
border_subgroup = 'subgroup',
border_child = 'child',
border_none = 'none',
evenodd_swap = 'swap',
navbar_off = 'off',
navbar_plain = 'plain',
nocat_false = 'false',
nowrapitems_yes = 'yes',
orphan_yes = 'yes',
state_collapsed = 'collapsed',
state_off = 'off',
state_plain = 'plain',
state_uncollapsed = 'uncollapsed',
subgroups = {'subgroup', 'child', ''},
subpage_doc = 'doc',
subpage_sandbox = 'sandbox',
subpage_testcases = 'testcases',
tracking_no = 'no',
with_collapsible_groups = 'with collapsible groups',
with_collapsible_groups_short = 'collapsible',
with_columns = 'with columns',
with_columns_short = 'columns',
},
class = {
autocollapse = 'autocollapse',
collapsible = 'mw-collapsible',
collapsed = 'mw-collapsed',
-- Warning
navbox = 'navbox', -- WMF currently hides 'navbox' from mobile,
-- so you probably shouldn't change the navbox class.
navbox_abovebelow = 'navbox-abovebelow',
navbox_group = 'navbox-group',
navbox_image = 'navbox-image',
navbox_inner = 'navbox-inner',
navbox_list = 'navbox-list',
navbox_list_with_group = 'navbox-list-with-group',
navbox_part = 'navbox-', -- do not l10n
navbox_styles = 'navbox-styles',
navbox_subgroup = 'navbox-subgroup',
navbox_title = 'navbox-title', -- l10n only if you change pattern.navbox_title below
navbox_odd_part = 'odd', -- do not l10n
navbox_even_part = 'even', -- do not l10n
nomobile = 'nomobile',
nowraplinks = 'nowraplinks',
noviewer = 'noviewer', -- used to remove images from MediaViewer
notheme = 'notheme'
},
pattern = {
class = 'class',
colnum = '^col(%d+)$',
colheadernum = '^col(%d+)header$',
colfooternum = '^col(%d+)footer$',
contentnum = '^content(%d+)$',
groupnum = '^group(%d+)$',
hlist = 'hlist',
listnum = '^list(%d+)$',
navbox = 'Template:Navbox',
navbox_title = '<th[^>]*"navbox%-title"',
nowrap = '^<span class="nowrap">',
num = '^%a+(%d+)$',
plainlist = 'plainlist',
sandbox = '/sandbox$',
sectionnum = '^section(%d+)$',
sectnum = '^sect(%d+)$',
style = 'style$',
with_collapsible_groups = 'Template:Navbox with collapsible groups',
with_columns = 'Template:Navbox with columns',
},
arg = {
abbr_and_num = 'abbr%d',
above = 'above',
aboveclass = 'aboveclass',
abovestyle = 'abovestyle',
basestyle = 'basestyle',
below = 'below',
belowclass = 'belowclass',
belowstyle = 'belowstyle',
bodyclass = 'bodyclass',
bodystyle = 'bodystyle',
border = 'border',
content_and_num = 'content%d',
contentstyle = 'contentstyle',
contentstyle_and_num = 'content%dstyle',
colheaderstyle = 'colheaderstyle',
colheader_and_num = 'col%dheader',
colheaderstyle_and_num = 'col%dheaderstyle',
colheadercolspan_and_num = 'col%dheadercolspan',
colstyle = 'colstyle',
col_and_num = 'col%d',
colstyle_and_num = 'col%dstyle',
colwidth = 'colwidth',
colwidth_and_num = 'col%dwidth',
colfooterstyle = 'colfooterstyle',
colfooter_and_num = 'col%dfooter',
colfooterstyle_and_num = 'col%dfooterstyle',
colfootercolspan_and_num = 'col%dfootercolspan',
coltablestyle = 'coltablestyle',
evencolstyle = 'evencolstyle',
evenodd = 'evenodd',
evenstyle = 'evenstyle',
fullwidth = 'fullwidth',
group1 = 'group1',
group2 = 'group2',
group_and_num = 'group%d',
groupclass = 'groupclass',
groupstyle = 'groupstyle',
groupstyle_and_num = 'group%dstyle',
groupwidth = 'groupwidth',
image = 'image',
image_and_num = 'image%d',
imageclass = 'imageclass',
imageleft = 'imageleft',
imageleft_and_num = 'imageleft%d',
imageleftstyle = 'imageleftstyle',
imagestyle = 'imagestyle',
innerstyle = 'innerstyle',
list1padding = 'list1padding',
list_and_num = 'list%d',
listclass = 'listclass',
listclass_and_num = 'list%dclass',
listpadding = 'listpadding',
liststyle = 'liststyle',
liststyle_and_num = 'list%dstyle',
name = 'name',
navbar = 'navbar',
navboxclass = 'navboxclass',
nocat = 'nocat',
nowrapitems = 'nowrapitems',
oddcolstyle = 'oddcolstyle',
oddstyle = 'oddstyle',
orphan = 'orphan',
padding = 'padding',
sect_and_num = 'sect%d',
section_and_num = 'section%d',
sectiontitlestyle_and_num = 'section%dtitlestyle',
secttitlestyle = 'secttitlestyle',
selected = 'selected',
state = 'state',
state_and_num = 'state%d',
style = 'style',
subgroups_and_num = {'subgroup%d', 'child%d', '%d'},
templatestyles = 'templatestyles',
child_templatestyles = 'child templatestyles',
title = 'title',
titleclass = 'titleclass',
titlestyle = 'titlestyle',
tracking = 'tracking',
},
-- names of navbar arguments
navbar = {
name = 1,
fontstyle = 'fontstyle',
mini = 'mini'
}
}
hfe9tuviwm23frg4eyuetl5fcr6lsto
Module:Color contrast
828
1051
9975
2016-06-03T16:56:25Z
meta>MarcoAurelio
0
https://en.wikipedia.org/w/index.php?title=Module:Color_contrast&oldid=679729996
9975
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
gocswq8zlev167ctdtcpva415vpor45
9976
9975
2017-02-27T09:29:25Z
meta>Plagiat
0
Update to match [[w:Module:Color contrast]] revision 725890693 as of 18 June 2016
9976
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
hvtmcsb4mviz7lzj6tgvyp5kohk0vr7
9977
9976
2019-10-06T19:54:14Z
meta>IPad365
0
9977
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local mProtectionBanner = require('Module:Protection banner').main
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
j547aqxm6lwjeny087af3ofgzmu4b4m
9978
9977
2019-10-06T19:54:47Z
meta>IPad365
0
Undo revision 19441313 by [[Special:Contributions/IPad365|IPad365]] ([[User talk:IPad365|talk]])
9978
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
hvtmcsb4mviz7lzj6tgvyp5kohk0vr7
9979
9978
2019-12-05T02:19:47Z
meta>MusikBot II
0
Protected "[[Module:Color contrast]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only autoconfirmed users] (indefinite))
9978
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
hvtmcsb4mviz7lzj6tgvyp5kohk0vr7
9980
2014-06-11T16:40:46Z
w>Frietjes
0
[[WP:AES|←]]Created page with '-- -- This module implements -- {{Color contrast ration}} -- {{ColorToLum}} -- {{RGBColorToLum}} -- local p = {} local function sRGB ( v ) if (v <= 0.0392...'
9980
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ration}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c, '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local v1 = color2num(frame.args[1] or frame:getParent().args[1])
local v2 = color2num(frame.args[2] or frame:getParent().args[2])
return (v2 + 0.05)/(v1 + 0.05)
end
return p
t6md17b7rojtc7b79wvi4j349wb3gx6
9981
9980
2014-06-11T16:44:29Z
w>Frietjes
0
9981
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ration}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c, '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local v1 = color2lum(frame.args[1] or frame:getParent().args[1])
local v2 = color2lum(frame.args[2] or frame:getParent().args[2])
return (v2 + 0.05)/(v1 + 0.05)
end
return p
4bpbh3w0wohbaeqpm57mophm85eu8xz
9982
9981
2014-06-11T16:55:33Z
w>Frietjes
0
9982
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ration}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c, '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local v1 = color2lum(frame.args[1] or frame:getParent().args[1])
local v2 = color2lum(frame.args[2] or frame:getParent().args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return frame.args['error'] or frame:getParent().args['error'] or '?'
end
end
return p
eufolqb3oo8zouiw2dkl8xmzjrg8w9f
9983
9982
2014-06-11T16:55:56Z
w>Frietjes
0
9983
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c, '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local v1 = color2lum(frame.args[1] or frame:getParent().args[1])
local v2 = color2lum(frame.args[2] or frame:getParent().args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return frame.args['error'] or frame:getParent().args['error'] or '?'
end
end
return p
c2yz9fkudrpybmkxddtnq87m3l43dpb
9984
9983
2014-06-11T16:59:06Z
w>Frietjes
0
9984
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local v1 = color2lum(frame.args[1] or frame:getParent().args[1])
local v2 = color2lum(frame.args[2] or frame:getParent().args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return frame.args['error'] or frame:getParent().args['error'] or '?'
end
end
return p
jlag3mx09dmq69pe0b691ky336nvird
9985
9984
2014-06-11T17:05:56Z
w>Frietjes
0
9985
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local v1 = color2lum(frame.args[1] or frame:getParent().args[1])
local v2 = color2lum(frame.args[2] or frame:getParent().args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return frame.args['error'] or frame:getParent().args['error'] or '?'
end
end
return p
bs7438frve2w3x7pb4vuw1v06z7vuzc
9986
9985
2014-06-11T17:15:25Z
w>Frietjes
0
add shorthand
9986
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local v1 = color2lum(frame.args[1] or frame:getParent().args[1])
local v2 = color2lum(frame.args[2] or frame:getParent().args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return frame.args['error'] or frame:getParent().args['error'] or '?'
end
end
return p
on9a0z0wcn022uyvj08yrk51ynubjmz
9987
9986
2015-03-25T00:47:36Z
w>Frietjes
0
refactor to allow this to be called from another module
9987
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
local function colors2ratio(c1,c2)
local v1 = color2lum(c1)
local v2 = color2lum(c2)
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return ''
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local r = colors2ratio(
frame.args[1] or frame:getParent().args[1],
frame.args[2] or frame:getParent().args[2]
)
if (r ~= '') then
return r
else
return frame.args['error'] or frame:getParent().args['error'] or '?'
end
end
return p
1bkc8apk0gwdvb8eg41r89vqsjzyy6x
9988
9987
2015-03-25T01:03:32Z
w>Frietjes
0
fix
9988
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
local function colors2ratio(c)
local v1 = color2lum(c[1])
local v2 = color2lum(c[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return ''
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
local r = colors2ratio(args)
if (r ~= '') then
return r
else
return frame.args['error'] or frame:getParent().args['error'] or '?'
end
end
return p
3msnrmch90gltctyahmjc3as742a8k3
9989
9988
2015-03-25T01:07:43Z
w>Frietjes
0
fix
9989
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._ratio(args)
local v1 = color2lum(c[1])
local v2 = color2lum(c[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
return p
ofvbesc2so1i2syy6dipsfojjdgq05m
9990
9989
2015-03-25T01:08:40Z
w>Frietjes
0
typo
9990
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
return p
08o7s1h5xayrg473neqfbiopqlcksxz
9991
9990
2015-04-03T20:42:43Z
w>Frietjes
0
implement [[Template:Greater contrast ratio]]
9991
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio1 = (v3 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
atj9q1lmdxkx04vf3hhsuby4dpkn5il
9992
9991
2015-04-03T20:49:05Z
w>Frietjes
0
typo
9992
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
bmoe6xejmjw8qdeonxx29wru5xt06es
9993
9992
2015-04-03T20:54:07Z
w>Frietjes
0
9993
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
return (v2 + 0.05)/(v1 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
dj5gvnz9e63y4j3u4x405xi2n7z0za5
9994
9993
2015-07-18T19:13:53Z
w>Izkala
0
v1 should be the brighter of the two
9994
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
2dsmt719z4dzhqjjgazysbpolpd2l5u
9995
9994
2015-07-25T18:14:14Z
w>Mr. Stradivarius
0
whitespace fixes
9995
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
local HTMLcolor = {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
rbr50xk136ygf9gc6r4yuhqtqn0q738
9996
9995
2015-07-25T18:22:54Z
w>Mr. Stradivarius
0
split the color data out to [[Module:Color contrast/colors]] and load it with mw.loadData - this way we only create the table once per page rather than every time color2lum is called
9996
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
bw7dqih631bcnmh77e9gfcd5grhn6ih
9997
9996
2015-07-27T03:05:07Z
w>Mr. Stradivarius
0
Protected Module:Color contrast: [[WP:High-risk templates|High-risk Lua module]] ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
9996
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
bw7dqih631bcnmh77e9gfcd5grhn6ih
9998
9997
2015-07-30T18:41:32Z
w>Frietjes
0
add support for hsl
9998
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function hsl2lum( h, s, l )
local lum = ''
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - abs(2*l - 1))*s
local x = c*(1 - abs( mod(h/60, 2) - 1) )
local m = l - c/2
local R, G, B = m, m, m
if( 0 <= h and h < 60 ) then
R = R + c
G = G + x
elseif( 60 <= h and h < 120 ) then
R = R + x
G = G + c
elseif( 120 <= h and h < 180 ) then
G = R + c
B = G + x
elseif( 180 <= h and h < 240 ) then
G = R + x
B = G + c
elseif( 240 <= h and h < 300 ) then
R = R + x
B = G + c
elseif( 300 <= h and h < 360 ) then
R = R + c
B = G + x
end
lum = 0.2126 * sRGB(R) + 0.7152 * sRGB(G) + 0.0722 * sRGB(B)
end
return lum
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)%s*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s;]*$')
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$') then
local h = mw.ustring.match(c,'^hsl%[%s]*([0-9][0-9]*)[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%$')
local s = mw.ustring.match(c,'^hsl%[%s]*[0-9][0-9]*[%s]*,[%s]*([0-9][0-9]*)%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%$')
local l = mw.ustring.match(c,'^hsl%[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*([0-9][0-9]*)%%[%s]*%$')
return hsl2rgb(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
9ggnoe3h0l30kbh4v6zfz331rnsy17j
9999
9998
2015-07-30T18:47:07Z
w>Frietjes
0
9999
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function hsl2lum( h, s, l )
local lum = ''
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - abs(2*l - 1))*s
local x = c*(1 - abs( mod(h/60, 2) - 1) )
local m = l - c/2
local R, G, B = m, m, m
if( 0 <= h and h < 60 ) then
R = R + c
G = G + x
elseif( 60 <= h and h < 120 ) then
R = R + x
G = G + c
elseif( 120 <= h and h < 180 ) then
G = R + c
B = G + x
elseif( 180 <= h and h < 240 ) then
G = R + x
B = G + c
elseif( 240 <= h and h < 300 ) then
R = R + x
B = G + c
elseif( 300 <= h and h < 360 ) then
R = R + c
B = G + x
end
lum = 0.2126 * sRGB(R) + 0.7152 * sRGB(G) + 0.0722 * sRGB(B)
end
return lum
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$') then
local h = mw.ustring.match(c,'^hsl%[%s]*([0-9][0-9]*)[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%$')
local s = mw.ustring.match(c,'^hsl%[%s]*[0-9][0-9]*[%s]*,[%s]*([0-9][0-9]*)%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%$')
local l = mw.ustring.match(c,'^hsl%[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*([0-9][0-9]*)%%[%s]*%$')
return hsl2rgb(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
4844mb6cmovrpr46gi68kegp21lb5tf
10000
9999
2015-07-30T18:49:34Z
w>Frietjes
0
10000
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function hsl2lum( h, s, l )
local lum = ''
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - abs(2*l - 1))*s
local x = c*(1 - abs( mod(h/60, 2) - 1) )
local m = l - c/2
local R, G, B = m, m, m
if( 0 <= h and h < 60 ) then
R = R + c
G = G + x
elseif( 60 <= h and h < 120 ) then
R = R + x
G = G + c
elseif( 120 <= h and h < 180 ) then
G = R + c
B = G + x
elseif( 180 <= h and h < 240 ) then
G = R + x
B = G + c
elseif( 240 <= h and h < 300 ) then
R = R + x
B = G + c
elseif( 300 <= h and h < 360 ) then
R = R + c
B = G + x
end
lum = 0.2126 * sRGB(R) + 0.7152 * sRGB(G) + 0.0722 * sRGB(B)
end
return lum
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$') then
local h = mw.ustring.match(c,'^hsl%[%s]*([0-9][0-9]*)[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%$')
local s = mw.ustring.match(c,'^hsl%[%s]*[0-9][0-9]*[%s]*,[%s]*([0-9][0-9]*)%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%$')
local l = mw.ustring.match(c,'^hsl%[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*([0-9][0-9]*)%%[%s]*%$')
return hsl2rgb(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
ptac4uyivkc6d984lc7rzhwi5305a48
10001
10000
2015-07-30T18:51:44Z
w>Frietjes
0
10001
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function hsl2lum( h, s, l )
local lum = ''
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - abs(2*l - 1))*s
local x = c*(1 - abs( mod(h/60, 2) - 1) )
local m = l - c/2
local R, G, B = m, m, m
if( 0 <= h and h < 60 ) then
R = R + c
G = G + x
elseif( 60 <= h and h < 120 ) then
R = R + x
G = G + c
elseif( 120 <= h and h < 180 ) then
G = R + c
B = G + x
elseif( 180 <= h and h < 240 ) then
G = R + x
B = G + c
elseif( 240 <= h and h < 300 ) then
R = R + x
B = G + c
elseif( 300 <= h and h < 360 ) then
R = R + c
B = G + x
end
lum = 0.2126 * sRGB(R) + 0.7152 * sRGB(G) + 0.0722 * sRGB(B)
end
return lum
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$') then
local h = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9]*)[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$')
local s = mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*([0-9][0-9]*)%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$')
local l = mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*([0-9][0-9]*)%%[%s]*%)$')
return hsl2rgb(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
3bp6wuqw28ckuazkzcbnz8m34alblnb
10002
10001
2015-07-30T18:53:06Z
w>Frietjes
0
10002
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function hsl2lum( h, s, l )
local lum = ''
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - abs(2*l - 1))*s
local x = c*(1 - abs( mod(h/60, 2) - 1) )
local m = l - c/2
local R, G, B = m, m, m
if( 0 <= h and h < 60 ) then
R = R + c
G = G + x
elseif( 60 <= h and h < 120 ) then
R = R + x
G = G + c
elseif( 120 <= h and h < 180 ) then
G = R + c
B = G + x
elseif( 180 <= h and h < 240 ) then
G = R + x
B = G + c
elseif( 240 <= h and h < 300 ) then
R = R + x
B = G + c
elseif( 300 <= h and h < 360 ) then
R = R + c
B = G + x
end
lum = 0.2126 * sRGB(R) + 0.7152 * sRGB(G) + 0.0722 * sRGB(B)
end
return lum
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$') then
local h = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9]*)[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$')
local s = mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*([0-9][0-9]*)%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$')
local l = mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*([0-9][0-9]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
q71ca5ovfg1wrvfyezzf1jz4ajcvymy
10003
10002
2015-07-30T18:55:14Z
w>Frietjes
0
10003
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function hsl2lum( h, s, l )
local lum = ''
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local R, G, B = m, m, m
if( 0 <= h and h < 60 ) then
R = R + c
G = G + x
elseif( 60 <= h and h < 120 ) then
R = R + x
G = G + c
elseif( 120 <= h and h < 180 ) then
G = R + c
B = G + x
elseif( 180 <= h and h < 240 ) then
G = R + x
B = G + c
elseif( 240 <= h and h < 300 ) then
R = R + x
B = G + c
elseif( 300 <= h and h < 360 ) then
R = R + c
B = G + x
end
lum = 0.2126 * sRGB(R) + 0.7152 * sRGB(G) + 0.0722 * sRGB(B)
end
return lum
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$') then
local h = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9]*)[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$')
local s = mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*([0-9][0-9]*)%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$')
local l = mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*([0-9][0-9]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
elseif ( #cs == 3 ) then
local R = sRGB( (16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1]))/255 )
local G = sRGB( (16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2]))/255 )
local B = sRGB( (16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3]))/255 )
L = 0.2126 * R + 0.7152 * G + 0.0722 * B
return L
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
8c1fl2kfld0y4oyijdh6qw9mihhh0ug
10004
10003
2015-07-31T13:49:58Z
w>Frietjes
0
refactor
10004
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
end
local function hsl2lum( h, s, l )
local lum = ''
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
lum = rgbdec2lum(255*r, 255*g, 255*b)
end
return lum
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$') then
local h = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9]*)[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$')
local s = mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*([0-9][0-9]*)%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$')
local l = mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*([0-9][0-9]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
4v16jpbbkj6uc300mq1kgmtryilcnvv
10005
10004
2015-07-31T14:00:44Z
w>Frietjes
0
combine
10005
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
end
local function hsl2lum( h, s, l )
local lum = ''
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
lum = rgbdec2lum(255*r, 255*g, 255*b)
end
return lum
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)%%[%s]*,[%s]*([0-9][0-9]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
bxb6c8v3t9xzdtiezls09cz9axcwztn
10006
10005
2015-07-31T14:08:34Z
w>Frietjes
0
add support for rgb(x,y,z)
10006
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^[Hh][Ss][Ll]%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^[Hh][Ss][Ll]%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)%%[%s]*,[%s]*([0-9][0-9]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^[Rr][Gg][Bb]%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^[Rr][Gg][Bb]%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
m9b0xev4mssf19395cutmnmmfnzqurv
10007
10006
2015-07-31T14:10:03Z
w>Frietjes
0
simplify, already lowercased
10007
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*%%[%s]*,[%s]*[0-9][0-9]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)%%[%s]*,[%s]*([0-9][0-9]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
e5uhrdma0bjjxhoao02cufvqxteuiww
10008
10007
2015-07-31T14:28:11Z
w>Frietjes
0
decimal
10008
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
3lluqhvo2bu6d2fx2asvdbv5m98zksl
10009
10008
2015-07-31T14:46:12Z
w>Frietjes
0
add support for rgb(x%,y%,z%)
10009
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]%%*[%s]*,[%s]*[0-9][0-9%.]%%*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
2juq1dcg5f6q3mgk3l9i5bq6mfp1xjy
10010
10009
2015-07-31T14:49:56Z
w>Frietjes
0
10010
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
s2t1zlqmz0t3j5y4x9e8577d6cpqzqx
10011
10010
2015-08-01T15:12:59Z
w>Frietjes
0
new styleratio for parsing css style statements
10011
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = (args[2] or 'white'), (args[3] or 'black')
local slist = mw.text.split(s or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s*]([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background-color)[%s]*$')) then
bg = v
elseif (k:match('^[%s]*(color)[%s]*$')) then
fg = v
end
end
return p._ratio({bg, fg, ['error'] = args['error']})
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
ntl0ghrs7sa4qpa3t7brx7meuxy5eq8
10012
10011
2015-08-01T15:19:52Z
w>Frietjes
0
typos
10012
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = (args[2] or 'white'), (args[3] or 'black')
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background-color)[%s]*$')) then
bg = v
elseif (k:match('^[%s]*(color)[%s]*$')) then
fg = v
end
end
return p._ratio({bg, fg, ['error'] = args['error']})
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
3pm8qh05hnxtshsr1mx8n3azr4zbs24
10013
10012
2015-08-01T15:34:44Z
w>Frietjes
0
better error checking
10013
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = (args[2] or 'white'), (args[3] or 'black')
local lum_bg, lum_fg = 1, 0
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
39vx3v51484bishglg38rq61z95k5rd
10014
10013
2015-08-01T15:36:29Z
w>Frietjes
0
10014
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = (args[2] or 'white'), (args[3] or 'black')
local lum_bg, lum_fg = 1, 0
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
6ife1kpate7ouctjn2da1lu224vqi4f
10015
10014
2015-08-01T16:01:11Z
w>Frietjes
0
better error checking
10015
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
gocswq8zlev167ctdtcpva415vpor45
10016
10015
2015-09-06T11:57:11Z
w>Kephir
0
rudimentary CSS parser
10016
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
-- warning: crude! may be fooled by sufficientry tricky CSS
function p.extract_css_colors(css, e)
local fgcolor, bgcolor
css = css:gsub("/%*.-%*/", "")
for name, value in string.gmatch(css, "([a-z-]*)%s*:%s*([^;]*)") do
value = mw.text.trim(value)
if name == 'color' then
fgcolor = value
elseif name == 'background-color' then
bgcolor = value
elseif name == 'background' then
value = value:gsub("url%((['\"]?).-%1%)", "")
bgcolor = value:match("#[0-9A-Fa-f]*") or value:match("rgba?%([0-9.%, ]*%)") or value:match("hsla?%([0-9.%, ]*%)")
if not bgcolor then
value = value:gsub("[0-9.][0-9.]*[%%a-z][a-z]?[a-z]?", "")
value = value:gsub("auto", ""):gsub("cover", ""):gsub("contain", "")
value = value:gsub("scroll", ""):gsub("fixed", ""):gsub("local", "")
value = value:gsub("left", ""):gsub("right", ""):gsub("top", ""):gsub("bottom", ""):gsub("center", "")
value = value:gsub("no%-repeat", ""):gsub("repeat", ""):gsub("repeat%-[xy]", ""):gsub("space", ""):gsub("round", "")
value = value:gsub("border%-box", ""):gsub("padding%-box", ""):gsub("content%-box", "")
bgcolor = mw.text.trim(value)
end
end
end
return fgcolor, bgcolor
end
return p
ertx7zt2hw4ra2xgm9usu9rolum9sc1
10017
10016
2015-09-06T12:08:24Z
w>Kephir
0
Sigh. I should read the code sometimes, however ugly it may be.
10017
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
gocswq8zlev167ctdtcpva415vpor45
10018
9975
2016-06-18T14:54:57Z
w>Mr. Stradivarius
0
if there are nowiki strip markers in the color string, unstrip them
10018
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
hvtmcsb4mviz7lzj6tgvyp5kohk0vr7
10019
10018
2016-10-26T08:32:15Z
w>Zzuuzz
0
Changed protection level of Module:Color contrast: [[Wikipedia:High-risk templates|High risk module]] 235k+ transclusions ([Edit=Require template editor access] (indefinite) [Move=Require template editor access] (indefinite))
10018
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
hvtmcsb4mviz7lzj6tgvyp5kohk0vr7
10020
10019
2017-01-02T15:13:52Z
w>Frietjes
0
html #
10020
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
c = mw.ustring.match(c, '^[%s]*#([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
3gpm0f7ed7h1axw9aegmdocnd9uohim
10021
10020
2017-01-02T15:22:28Z
w>Frietjes
0
Undid revision 757931345 by [[Special:Contributions/Frietjes|Frietjes]] ([[User talk:Frietjes|talk]])
10021
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
hvtmcsb4mviz7lzj6tgvyp5kohk0vr7
10022
9976
2017-06-03T14:03:29Z
w>Frietjes
0
fix for encoded # in hex or decimal (screws up assumption that we can split on ;)
10022
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
4ymvtt2imownok2kivnukiwpzxn7faa
10023
10022
2018-01-03T20:31:13Z
w>Ahecht
0
local
10023
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
el0xvl2scqnt2mclmyrhce3ka1bkxtp
10024
10023
2018-02-02T18:46:53Z
w>Frietjes
0
fix for garbage input
10024
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = -1;
local ratio2 = -1;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
f3merhaqumudrbmm07qdl1kxyp19gle
10025
10024
2018-02-02T21:57:30Z
w>Frietjes
0
add option for greatercontrast to form inline css string
10025
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local css = (args['css'] and args['css'] ~= '') and true or false
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = -1;
local ratio2 = -1;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
if css then
if mw.ustring.match(v1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
v1 = '#' .. v1
end
if mw.ustring.match(v2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
v2 = '#' .. v2
end
if mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
v3 = '#' .. v3
end
return 'background-color:' .. v1 .. '; color:'
.. ((ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or '') .. ';'
end
return (ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
8oc5y6tuddlior08wbzcl6ili0ow2ai
10026
10025
2018-02-02T22:01:27Z
w>Frietjes
0
typo
10026
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local css = (args['css'] and args['css'] ~= '') and true or false
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = -1;
local ratio2 = -1;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
if css then
local c1 = args[1] or ''
if mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c1 = '#' .. c1
end
if mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c2 = '#' .. c2
end
if mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c3 = '#' .. c3
end
return 'background-color:' .. c1 .. '; color:' .. ((ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or '') .. ';'
end
return (ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
43ryh3q2kthxzrpu56wy019djsecqot
10027
10026
2018-07-07T23:04:30Z
w>RexxS
0
replace html entity with # symbol - tested in /sandbox1 so as not to disturb /sandbox
10027
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- html '#' entity
c = c:gsub("#", "#")
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local css = (args['css'] and args['css'] ~= '') and true or false
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = -1;
local ratio2 = -1;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
if css then
local c1 = args[1] or ''
if mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c1 = '#' .. c1
end
if mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c2 = '#' .. c2
end
if mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c3 = '#' .. c3
end
return 'background-color:' .. c1 .. '; color:' .. ((ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or '') .. ';'
end
return (ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
55bs9vv8hqsp9psicche4v82wnzh0ub
10028
10027
2019-01-06T17:09:22Z
w>Gonnym
0
synced changes from sandbox - created an access point to lum available to other modules
10028
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB (v)
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum(R, G, B)
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum(h, s, l)
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
-- This exports the function for use in other modules.
-- The colour is passed as a string.
function p._lum(color)
return color2lum(color)
end
local function color2lum(c)
if (c == nil) then
return ''
end
-- html '#' entity
c = c:gsub("#", "#")
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local css = (args['css'] and args['css'] ~= '') and true or false
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = -1;
local ratio2 = -1;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
if css then
local c1 = args[1] or ''
if mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c1 = '#' .. c1
end
if mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c2 = '#' .. c2
end
if mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c3 = '#' .. c3
end
return 'background-color:' .. c1 .. '; color:' .. ((ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or '') .. ';'
end
return (ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
--[[
Use {{#invoke:Color contrast|somecolor}} directly or
{{#invoke:Color contrast}} from a wrapper template.
Parameters:
-- |1= — required; A color to check.
--]]
function p.lum(frame)
local color = frame.args[1] or frame:getParent().args[1]
return p._lum(color)
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
3dqpizmrutoibmxo7h7gev075kcvei0
10029
10028
2019-01-06T22:38:25Z
w>Johnuniq
0
fix unintended color2lum global error which is causing errors; clean whitespace
10029
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB (v)
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum(R, G, B)
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum(h, s, l)
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum(c)
if (c == nil) then
return ''
end
-- html '#' entity
c = c:gsub("#", "#")
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
-- This exports the function for use in other modules.
-- The colour is passed as a string.
function p._lum(color)
return color2lum(color)
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local css = (args['css'] and args['css'] ~= '') and true or false
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = -1;
local ratio2 = -1;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
if css then
local c1 = args[1] or ''
if mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c1 = '#' .. c1
end
if mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c2 = '#' .. c2
end
if mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c3 = '#' .. c3
end
return 'background-color:' .. c1 .. '; color:' .. ((ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or '') .. ';'
end
return (ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
--[[
Use {{#invoke:Color contrast|somecolor}} directly or
{{#invoke:Color contrast}} from a wrapper template.
Parameters:
-- |1= — required; A color to check.
--]]
function p.lum(frame)
local color = frame.args[1] or frame:getParent().args[1]
return p._lum(color)
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
3j3oaih63ygo9p806h5yxpscaqh3xu9
10030
9979
2021-10-29T20:02:25Z
meta>GeneralNotability
0
50 revisions imported from [[:w:Module:Color_contrast]]: blame [[User:Barkeep49]]
9978
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB ( v )
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum( R, G, B )
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum( h, s, l )
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum( c )
if (c == nil) then
return ''
end
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local v1 = color2lum(args[1] or '')
local c2 = args[2] or '#FFFFFF'
local v2 = color2lum(c2)
local c3 = args[3] or '#000000'
local v3 = color2lum(c3)
local ratio1 = 0;
local ratio2 = 0;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
return (ratio1 + bias > ratio2) and c2 or c3
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(style or '', ';')
for k = 1,#slist do
s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
function p.lum(frame)
return color2lum(frame.args[1] or frame:getParent().args[1])
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
hvtmcsb4mviz7lzj6tgvyp5kohk0vr7
10031
9054
2026-08-24T13:00:44Z
RAPTOR7762
18
56 revisions imported from [[:meta:Module:Color_contrast]]
9053
Scribunto
text/plain
--
-- This module implements
-- {{Color contrast ratio}}
-- {{Greater color contrast ratio}}
-- {{ColorToLum}}
-- {{RGBColorToLum}}
--
local p = {}
local HTMLcolor = mw.loadData( 'Module:Color contrast/colors' )
local function sRGB (v)
if (v <= 0.03928) then
v = v / 12.92
else
v = math.pow((v+0.055)/1.055, 2.4)
end
return v
end
local function rgbdec2lum(R, G, B)
if ( 0 <= R and R < 256 and 0 <= G and G < 256 and 0 <= B and B < 256 ) then
return 0.2126 * sRGB(R/255) + 0.7152 * sRGB(G/255) + 0.0722 * sRGB(B/255)
else
return ''
end
end
local function hsl2lum(h, s, l)
if ( 0 <= h and h < 360 and 0 <= s and s <= 1 and 0 <= l and l <= 1 ) then
local c = (1 - math.abs(2*l - 1))*s
local x = c*(1 - math.abs( math.fmod(h/60, 2) - 1) )
local m = l - c/2
local r, g, b = m, m, m
if( 0 <= h and h < 60 ) then
r = r + c
g = g + x
elseif( 60 <= h and h < 120 ) then
r = r + x
g = g + c
elseif( 120 <= h and h < 180 ) then
g = g + c
b = b + x
elseif( 180 <= h and h < 240 ) then
g = g + x
b = b + c
elseif( 240 <= h and h < 300 ) then
r = r + x
b = b + c
elseif( 300 <= h and h < 360 ) then
r = r + c
b = b + x
end
return rgbdec2lum(255*r, 255*g, 255*b)
else
return ''
end
end
local function color2lum(c)
if (c == nil) then
return ''
end
-- html '#' entity
c = c:gsub("#", "#")
-- whitespace
c = c:match( '^%s*(.-)[%s;]*$' )
-- unstrip nowiki strip markers
c = mw.text.unstripNoWiki(c)
-- lowercase
c = c:lower()
-- first try to look it up
local L = HTMLcolor[c]
if (L ~= nil) then
return L
end
-- convert from hsl
if mw.ustring.match(c,'^hsl%([%s]*[0-9][0-9%.]*[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local h, s, l = mw.ustring.match(c,'^hsl%([%s]*([0-9][0-9%.]*)[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return hsl2lum(tonumber(h), tonumber(s)/100, tonumber(l)/100)
end
-- convert from rgb
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*,[%s]*[0-9][0-9]*[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*,[%s]*([0-9][0-9]*)[%s]*%)$')
return rgbdec2lum(tonumber(R), tonumber(G), tonumber(B))
end
-- convert from rgb percent
if mw.ustring.match(c,'^rgb%([%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*,[%s]*[0-9][0-9%.]*%%[%s]*%)$') then
local R, G, B = mw.ustring.match(c,'^rgb%([%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*,[%s]*([0-9][0-9%.]*)%%[%s]*%)$')
return rgbdec2lum(255*tonumber(R)/100, 255*tonumber(G)/100, 255*tonumber(B)/100)
end
-- remove leading # (if there is one) and whitespace
c = mw.ustring.match(c, '^[%s#]*([a-f0-9]*)[%s]*$')
-- split into rgb
local cs = mw.text.split(c or '', '')
if( #cs == 6 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[2])
local G = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[4])
local B = 16*tonumber('0x' .. cs[5]) + tonumber('0x' .. cs[6])
return rgbdec2lum(R, G, B)
elseif ( #cs == 3 ) then
local R = 16*tonumber('0x' .. cs[1]) + tonumber('0x' .. cs[1])
local G = 16*tonumber('0x' .. cs[2]) + tonumber('0x' .. cs[2])
local B = 16*tonumber('0x' .. cs[3]) + tonumber('0x' .. cs[3])
return rgbdec2lum(R, G, B)
end
-- failure, return blank
return ''
end
-- This exports the function for use in other modules.
-- The colour is passed as a string.
function p._lum(color)
return color2lum(color)
end
function p._greatercontrast(args)
local bias = tonumber(args['bias'] or '0') or 0
local css = (args['css'] and args['css'] ~= '') and true or false
local v1 = color2lum(args[1] or '')
local c2 = args[2] or 'white'
local v2 = color2lum(c2)
local c3 = args[3] or 'black'
local v3 = color2lum(c3)
local ratio1 = -1;
local ratio2 = -1;
if (type(v1) == 'number' and type(v2) == 'number') then
ratio1 = (v2 + 0.05)/(v1 + 0.05)
ratio1 = (ratio1 < 1) and 1/ratio1 or ratio1
end
if (type(v1) == 'number' and type(v3) == 'number') then
ratio2 = (v3 + 0.05)/(v1 + 0.05)
ratio2 = (ratio2 < 1) and 1/ratio2 or ratio2
end
if css then
local c1 = args[1] or ''
if mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c1, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c1 = '#' .. c1
end
if mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(c2, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c2 = '#' .. c2
end
if mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') or
mw.ustring.match(v3, '^[A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9][A-Fa-f0-9]$') then
c3 = '#' .. c3
end
return 'background-color:' .. c1 .. '; color:' .. ((ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or '') .. ';'
end
return (ratio1 > 0) and (ratio2 > 0) and ((ratio1 + bias > ratio2) and c2 or c3) or ''
end
function p._ratio(args)
local v1 = color2lum(args[1])
local v2 = color2lum(args[2])
if (type(v1) == 'number' and type(v2) == 'number') then
-- v1 should be the brighter of the two.
if v2 > v1 then
v1, v2 = v2, v1
end
return (v1 + 0.05)/(v2 + 0.05)
else
return args['error'] or '?'
end
end
function p._styleratio(args)
local style = (args[1] or ''):lower()
local bg, fg = 'white', 'black'
local lum_bg, lum_fg = 1, 0
if args[2] then
local lum = color2lum(args[2])
if lum ~= '' then bg, lum_bg = args[2], lum end
end
if args[3] then
local lum = color2lum(args[3])
if lum ~= '' then fg, lum_fg = args[3], lum end
end
local slist = mw.text.split(mw.ustring.gsub(mw.ustring.gsub(style or '', '&#[Xx]23;', '#'), '#', '#'), ';')
for k = 1,#slist do
local s = slist[k]
local k,v = s:match( '^[%s]*([^:]-):([^:]-)[%s;]*$' )
k = k or ''
v = v or ''
if (k:match('^[%s]*(background)[%s]*$') or k:match('^[%s]*(background%-color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_bg = v, lum end
elseif (k:match('^[%s]*(color)[%s]*$')) then
local lum = color2lum(v)
if( lum ~= '' ) then bg, lum_fg = v, lum end
end
end
if lum_bg > lum_fg then
return (lum_bg + 0.05)/(lum_fg + 0.05)
else
return (lum_fg + 0.05)/(lum_bg + 0.05)
end
end
--[[
Use {{#invoke:Color contrast|somecolor}} directly or
{{#invoke:Color contrast}} from a wrapper template.
Parameters:
-- |1= — required; A color to check.
--]]
function p.lum(frame)
local color = frame.args[1] or frame:getParent().args[1]
return p._lum(color)
end
function p.ratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._ratio(args)
end
function p.styleratio(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._styleratio(args)
end
function p.greatercontrast(frame)
local args = frame.args[1] and frame.args or frame:getParent().args
return p._greatercontrast(args)
end
return p
bx0blwcv5isqzm2jrxnp01lj4148n73
Module:Color contrast/colors
828
1052
10032
2016-06-03T16:57:37Z
meta>MarcoAurelio
0
https://en.wikipedia.org/w/index.php?title=Module:Color_contrast/colors&oldid=673825843
10032
Scribunto
text/plain
return {
aliceblue = 0.92880068253475,
antiquewhite = 0.84646951707754,
aqua = 0.7874,
aquamarine = 0.8078549208338,
azure = 0.97265264954166,
beige = 0.8988459998705,
bisque = 0.80732327372979,
black = 0,
blanchedalmond = 0.85084439608156,
blue = 0.0722,
blueviolet = 0.12622014321946,
brown = 0.098224287876511,
burlywood = 0.51559844533893,
cadetblue = 0.29424681085422,
chartreuse = 0.76032025902623,
chocolate = 0.23898526114557,
coral = 0.37017930872924,
cornflowerblue = 0.30318641994179,
cornsilk = 0.93562110372965,
crimson = 0.16042199953026,
cyan = 0.7874,
darkblue = 0.018640801980939,
darkcyan = 0.20329317839046,
darkgoldenrod = 0.27264703559993,
darkgray = 0.39675523072563,
darkgreen = 0.091143429047575,
darkgrey = 0.39675523072563,
darkkhaki = 0.45747326349994,
darkmagenta = 0.07353047651207,
darkolivegreen = 0.12651920884889,
darkorange = 0.40016167026524,
darkorchid = 0.13413142174857,
darkred = 0.054889674531132,
darksalmon = 0.40541471563381,
darkseagreen = 0.43789249325969,
darkslateblue = 0.065792846227988,
darkslategray = 0.067608151928044,
darkslategrey = 0.067608151928044,
darkturquoise = 0.4874606277449,
darkviolet = 0.10999048339343,
deeppink = 0.23866895828276,
deepskyblue = 0.44481603395575,
dimgray = 0.14126329114027,
dimgrey = 0.14126329114027,
dodgerblue = 0.27442536991456,
firebrick = 0.10724525535015,
floralwhite = 0.95922484825004,
forestgreen = 0.18920812076002,
fuchsia = 0.2848,
gainsboro = 0.71569350050648,
ghostwhite = 0.94311261886323,
gold = 0.69860877428159,
goldenrod = 0.41919977809569,
gray = 0.2158605001139,
green = 0.15438342968146,
greenyellow = 0.80609472611453,
grey = 0.2158605001139,
honeydew = 0.96336535554782,
hotpink = 0.34658438169715,
indianred = 0.21406134963884,
indigo = 0.03107561486337,
ivory = 0.99071270600615,
khaki = 0.77012343394121,
lavender = 0.80318750514521,
lavenderblush = 0.90172748631046,
lawngreen = 0.73905893124963,
lemonchiffon = 0.94038992245622,
lightblue = 0.63709141280807,
lightcoral = 0.35522120733135,
lightcyan = 0.94587293494829,
lightgoldenrodyellow = 0.93348351018297,
lightgray = 0.65140563741982,
lightgreen = 0.69091979956865,
lightgrey = 0.65140563741982,
lightpink = 0.58566152734898,
lightsalmon = 0.4780675225206,
lightseagreen = 0.35050145117042,
lightskyblue = 0.56195637618331,
lightslategray = 0.23830165007287,
lightslategrey = 0.23830165007287,
lightsteelblue = 0.53983888284666,
lightyellow = 0.98161818392882,
lime = 0.7152,
limegreen = 0.44571042246098,
linen = 0.88357340984379,
magenta = 0.2848,
maroon = 0.045891942324215,
mediumaquamarine = 0.49389703310801,
mediumblue = 0.044077780212328,
mediumorchid = 0.21639251153773,
mediumpurple = 0.22905858091648,
mediumseagreen = 0.34393112338131,
mediumslateblue = 0.20284629471622,
mediumspringgreen = 0.70704308194184,
mediumturquoise = 0.5133827926448,
mediumvioletred = 0.14371899849357,
midnightblue = 0.02071786635086,
mintcream = 0.97834604947588,
mistyrose = 0.82183047859185,
moccasin = 0.80083000991567,
navajowhite = 0.76519682342785,
navy = 0.015585128108224,
oldlace = 0.91900633405549,
olive = 0.20027537200568,
olivedrab = 0.22593150951929,
orange = 0.4817026703631,
orangered = 0.25516243753416,
orchid = 0.31348806761439,
palegoldenrod = 0.78792647887614,
palegreen = 0.77936759006353,
paleturquoise = 0.76436077921714,
palevioletred = 0.28754994117889,
papayawhip = 0.87797100199835,
peachpuff = 0.74905589878251,
peru = 0.30113074877936,
pink = 0.63271070702466,
plum = 0.45734221587969,
powderblue = 0.68254586500605,
purple = 0.061477070432439,
rebeccapurple = 0.07492341159447,
red = 0.2126,
rosybrown = 0.32319457649407,
royalblue = 0.16663210743188,
saddlebrown = 0.097922285020521,
salmon = 0.36977241527596,
sandybrown = 0.46628543696283,
seagreen = 0.19734199706275,
seashell = 0.92737862206922,
sienna = 0.13697631337098,
silver = 0.52711512570581,
skyblue = 0.55291668518184,
slateblue = 0.14784278062136,
slategray = 0.20896704076536,
slategrey = 0.20896704076536,
snow = 0.96533341834849,
springgreen = 0.73052306068529,
steelblue = 0.20562642207625,
tan = 0.48237604163921,
teal = 0.16996855778968,
thistle = 0.56818401093733,
tomato = 0.30638612719415,
turquoise = 0.5895536427578,
violet = 0.40315452986676,
wheat = 0.74909702820482,
white = 1,
whitesmoke = 0.91309865179342,
yellow = 0.9278,
yellowgreen = 0.50762957208707,
}
chi69ar1btd4wp6xbk3uez6sfu0vipn
10033
9055
2019-12-05T02:19:48Z
meta>MusikBot II
0
Protected "[[Module:Color contrast/colors]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only autoconfirmed users] (indefinite))
9055
Scribunto
text/plain
return {
aliceblue = 0.92880068253475,
antiquewhite = 0.84646951707754,
aqua = 0.7874,
aquamarine = 0.8078549208338,
azure = 0.97265264954166,
beige = 0.8988459998705,
bisque = 0.80732327372979,
black = 0,
blanchedalmond = 0.85084439608156,
blue = 0.0722,
blueviolet = 0.12622014321946,
brown = 0.098224287876511,
burlywood = 0.51559844533893,
cadetblue = 0.29424681085422,
chartreuse = 0.76032025902623,
chocolate = 0.23898526114557,
coral = 0.37017930872924,
cornflowerblue = 0.30318641994179,
cornsilk = 0.93562110372965,
crimson = 0.16042199953026,
cyan = 0.7874,
darkblue = 0.018640801980939,
darkcyan = 0.20329317839046,
darkgoldenrod = 0.27264703559993,
darkgray = 0.39675523072563,
darkgreen = 0.091143429047575,
darkgrey = 0.39675523072563,
darkkhaki = 0.45747326349994,
darkmagenta = 0.07353047651207,
darkolivegreen = 0.12651920884889,
darkorange = 0.40016167026524,
darkorchid = 0.13413142174857,
darkred = 0.054889674531132,
darksalmon = 0.40541471563381,
darkseagreen = 0.43789249325969,
darkslateblue = 0.065792846227988,
darkslategray = 0.067608151928044,
darkslategrey = 0.067608151928044,
darkturquoise = 0.4874606277449,
darkviolet = 0.10999048339343,
deeppink = 0.23866895828276,
deepskyblue = 0.44481603395575,
dimgray = 0.14126329114027,
dimgrey = 0.14126329114027,
dodgerblue = 0.27442536991456,
firebrick = 0.10724525535015,
floralwhite = 0.95922484825004,
forestgreen = 0.18920812076002,
fuchsia = 0.2848,
gainsboro = 0.71569350050648,
ghostwhite = 0.94311261886323,
gold = 0.69860877428159,
goldenrod = 0.41919977809569,
gray = 0.2158605001139,
green = 0.15438342968146,
greenyellow = 0.80609472611453,
grey = 0.2158605001139,
honeydew = 0.96336535554782,
hotpink = 0.34658438169715,
indianred = 0.21406134963884,
indigo = 0.03107561486337,
ivory = 0.99071270600615,
khaki = 0.77012343394121,
lavender = 0.80318750514521,
lavenderblush = 0.90172748631046,
lawngreen = 0.73905893124963,
lemonchiffon = 0.94038992245622,
lightblue = 0.63709141280807,
lightcoral = 0.35522120733135,
lightcyan = 0.94587293494829,
lightgoldenrodyellow = 0.93348351018297,
lightgray = 0.65140563741982,
lightgreen = 0.69091979956865,
lightgrey = 0.65140563741982,
lightpink = 0.58566152734898,
lightsalmon = 0.4780675225206,
lightseagreen = 0.35050145117042,
lightskyblue = 0.56195637618331,
lightslategray = 0.23830165007287,
lightslategrey = 0.23830165007287,
lightsteelblue = 0.53983888284666,
lightyellow = 0.98161818392882,
lime = 0.7152,
limegreen = 0.44571042246098,
linen = 0.88357340984379,
magenta = 0.2848,
maroon = 0.045891942324215,
mediumaquamarine = 0.49389703310801,
mediumblue = 0.044077780212328,
mediumorchid = 0.21639251153773,
mediumpurple = 0.22905858091648,
mediumseagreen = 0.34393112338131,
mediumslateblue = 0.20284629471622,
mediumspringgreen = 0.70704308194184,
mediumturquoise = 0.5133827926448,
mediumvioletred = 0.14371899849357,
midnightblue = 0.02071786635086,
mintcream = 0.97834604947588,
mistyrose = 0.82183047859185,
moccasin = 0.80083000991567,
navajowhite = 0.76519682342785,
navy = 0.015585128108224,
oldlace = 0.91900633405549,
olive = 0.20027537200568,
olivedrab = 0.22593150951929,
orange = 0.4817026703631,
orangered = 0.25516243753416,
orchid = 0.31348806761439,
palegoldenrod = 0.78792647887614,
palegreen = 0.77936759006353,
paleturquoise = 0.76436077921714,
palevioletred = 0.28754994117889,
papayawhip = 0.87797100199835,
peachpuff = 0.74905589878251,
peru = 0.30113074877936,
pink = 0.63271070702466,
plum = 0.45734221587969,
powderblue = 0.68254586500605,
purple = 0.061477070432439,
rebeccapurple = 0.07492341159447,
red = 0.2126,
rosybrown = 0.32319457649407,
royalblue = 0.16663210743188,
saddlebrown = 0.097922285020521,
salmon = 0.36977241527596,
sandybrown = 0.46628543696283,
seagreen = 0.19734199706275,
seashell = 0.92737862206922,
sienna = 0.13697631337098,
silver = 0.52711512570581,
skyblue = 0.55291668518184,
slateblue = 0.14784278062136,
slategray = 0.20896704076536,
slategrey = 0.20896704076536,
snow = 0.96533341834849,
springgreen = 0.73052306068529,
steelblue = 0.20562642207625,
tan = 0.48237604163921,
teal = 0.16996855778968,
thistle = 0.56818401093733,
tomato = 0.30638612719415,
turquoise = 0.5895536427578,
violet = 0.40315452986676,
wheat = 0.74909702820482,
white = 1,
whitesmoke = 0.91309865179342,
yellow = 0.9278,
yellowgreen = 0.50762957208707,
}
chi69ar1btd4wp6xbk3uez6sfu0vipn
10034
2015-07-25T18:16:35Z
w>Mr. Stradivarius
0
split color data out from [[Module:Color contrast]]
10034
Scribunto
text/plain
return {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
imbj9kfri292gzk0spskgeftxfv4i6y
10035
10034
2015-07-27T03:05:25Z
w>Mr. Stradivarius
0
Protected Module:Color contrast/colors: [[WP:High-risk templates|High-risk Lua module]] ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
10034
Scribunto
text/plain
return {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
}
imbj9kfri292gzk0spskgeftxfv4i6y
10036
10035
2015-07-30T18:10:04Z
w>Frietjes
0
add more from http://www.w3schools.com/html/html_colornames.asp
10036
Scribunto
text/plain
return {
white = 1,
silver = 0.52711512570581,
gray = 0.2158605001139,
black = 0,
red = 0.2126,
maroon = 0.045891942324215,
yellow = 0.9278,
olive = 0.20027537200568,
lime = 0.7152,
green = 0.15438342968146,
aqua = 0.7874,
teal = 0.16996855778968,
blue = 0.0722,
navy = 0.015585128108224,
fuchsia = 0.2848,
purple = 0.061477070432439,
orange = 0.4817026703631,
gold = 0.69860877428159,
pink = 0.63271070702466,
lightpink = 0.58566152734898,
hotpink = 0.34658438169715,
deeppink = 0.23866895828276,
palevioletred = 0.28754994117889,
mediumvioletred = 0.14371899849357,
lightsalmon = 0.4780675225206,
salmon = 0.36977241527596,
darksalmon = 0.40541471563381,
lightcoral = 0.35522120733135,
indianred = 0.21406134963884,
crimson = 0.16042199953026,
firebrick = 0.10724525535015,
darkred = 0.054889674531132,
orangered = 0.25516243753416,
tomato = 0.30638612719415,
coral = 0.37017930872924,
darkorange = 0.40016167026524,
lightyellow = 0.98161818392882,
lemonchiffon = 0.94038992245622,
lightgoldenrodyellow = 0.93348351018297,
papayawhip = 0.87797100199835,
moccasin = 0.80083000991567,
peachpuff = 0.74905589878251,
palegoldenrod = 0.78792647887614,
khaki = 0.77012343394121,
darkkhaki = 0.45747326349994,
cornsilk = 0.93562110372965,
blanchedalmond = 0.85084439608156,
bisque = 0.80732327372979,
navajowhite = 0.76519682342785,
wheat = 0.74909702820482,
burlywood = 0.51559844533893,
tan = 0.48237604163921,
rosybrown = 0.32319457649407,
sandybrown = 0.46628543696283,
goldenrod = 0.41919977809569,
darkgoldenrod = 0.27264703559993,
peru = 0.30113074877936,
chocolate = 0.23898526114557,
saddlebrown = 0.097922285020521,
sienna = 0.13697631337098,
brown = 0.098224287876511,
aliceblue = 0.92880068253475,
antiquewhite = 0.84646951707754,
aquamarine = 0.8078549208338,
azure = 0.97265264954166,
beige = 0.8988459998705,
blueviolet = 0.12622014321946,
cadetblue = 0.29424681085422,
chartreuse = 0.76032025902623,
cornflowerblue = 0.30318641994179,
cyan = 0.7874,
darkblue = 0.018640801980939,
darkcyan = 0.20329317839046,
darkgray = 0.39675523072563,
darkgreen = 0.091143429047575,
darkmagenta = 0.07353047651207,
darkolivegreen = 0.12651920884889,
darkorchid = 0.13413142174857,
darkseagreen = 0.43789249325969,
darkslateblue = 0.065792846227988,
darkslategray = 0.067608151928044,
darkturquoise = 0.4874606277449,
darkviolet = 0.10999048339343,
deepskyblue = 0.44481603395575,
dimgray = 0.14126329114027,
dodgerblue = 0.27442536991456,
floralwhite = 0.95922484825004,
forestgreen = 0.18920812076002,
gainsboro = 0.71569350050648,
ghostwhite = 0.94311261886323,
greenyellow = 0.80609472611453,
honeydew = 0.96336535554782,
indigo = 0.03107561486337,
ivory = 0.99071270600615,
lavender = 0.80318750514521,
lavenderblush = 0.90172748631046,
lawngreen = 0.73905893124963,
lightblue = 0.63709141280807,
lightcyan = 0.94587293494829,
lightgray = 0.65140563741982,
lightgreen = 0.69091979956865,
lightseagreen = 0.35050145117042,
lightskyblue = 0.56195637618331,
lightslategray = 0.23830165007287,
lightsteelblue = 0.53983888284666,
limegreen = 0.44571042246098,
linen = 0.88357340984379,
magenta = 0.2848,
mediumaquamarine = 0.49389703310801,
mediumblue = 0.044077780212328,
mediumorchid = 0.21639251153773,
mediumpurple = 0.22905858091648,
mediumseagreen = 0.34393112338131,
mediumslateblue = 0.20284629471622,
mediumspringgreen = 0.70704308194184,
mediumturquoise = 0.5133827926448,
midnightblue = 0.02071786635086,
mintcream = 0.97834604947588,
mistyrose = 0.82183047859185,
oldlace = 0.91900633405549,
olivedrab = 0.22593150951929,
orchid = 0.31348806761439,
palegreen = 0.77936759006353,
paleturquoise = 0.76436077921714,
plum = 0.45734221587969,
powderblue = 0.68254586500605,
rebeccapurple = 0.07492341159447,
royalblue = 0.16663210743188,
seagreen = 0.19734199706275,
seashell = 0.92737862206922,
skyblue = 0.55291668518184,
slateblue = 0.14784278062136,
slategray = 0.20896704076536,
snow = 0.96533341834849,
springgreen = 0.73052306068529,
steelblue = 0.20562642207625,
thistle = 0.56818401093733,
turquoise = 0.5895536427578,
violet = 0.40315452986676,
whitesmoke = 0.91309865179342,
yellowgreen = 0.50762957208707,
}
lebgt1jw18gukfynkynuz0wkgukgqrm
10037
10036
2015-07-30T18:21:59Z
w>Izkala
0
Add gray aliases; see [[devmo:Web/CSS/color_value]]
10037
Scribunto
text/plain
return {
aliceblue = 0.92880068253475,
antiquewhite = 0.84646951707754,
aqua = 0.7874,
aquamarine = 0.8078549208338,
azure = 0.97265264954166,
beige = 0.8988459998705,
bisque = 0.80732327372979,
black = 0,
blanchedalmond = 0.85084439608156,
blue = 0.0722,
blueviolet = 0.12622014321946,
brown = 0.098224287876511,
burlywood = 0.51559844533893,
cadetblue = 0.29424681085422,
chartreuse = 0.76032025902623,
chocolate = 0.23898526114557,
coral = 0.37017930872924,
cornflowerblue = 0.30318641994179,
cornsilk = 0.93562110372965,
crimson = 0.16042199953026,
cyan = 0.7874,
darkblue = 0.018640801980939,
darkcyan = 0.20329317839046,
darkgoldenrod = 0.27264703559993,
darkgray = 0.39675523072563,
darkgreen = 0.091143429047575,
darkgrey = 0.39675523072563,
darkkhaki = 0.45747326349994,
darkmagenta = 0.07353047651207,
darkolivegreen = 0.12651920884889,
darkorange = 0.40016167026524,
darkorchid = 0.13413142174857,
darkred = 0.054889674531132,
darksalmon = 0.40541471563381,
darkseagreen = 0.43789249325969,
darkslateblue = 0.065792846227988,
darkslategray = 0.067608151928044,
darkslategrey = 0.067608151928044,
darkturquoise = 0.4874606277449,
darkviolet = 0.10999048339343,
deeppink = 0.23866895828276,
deepskyblue = 0.44481603395575,
dimgray = 0.14126329114027,
dimgrey = 0.14126329114027,
dodgerblue = 0.27442536991456,
firebrick = 0.10724525535015,
floralwhite = 0.95922484825004,
forestgreen = 0.18920812076002,
fuchsia = 0.2848,
gainsboro = 0.71569350050648,
ghostwhite = 0.94311261886323,
gold = 0.69860877428159,
goldenrod = 0.41919977809569,
gray = 0.2158605001139,
green = 0.15438342968146,
greenyellow = 0.80609472611453,
grey = 0.2158605001139,
honeydew = 0.96336535554782,
hotpink = 0.34658438169715,
indianred = 0.21406134963884,
indigo = 0.03107561486337,
ivory = 0.99071270600615,
khaki = 0.77012343394121,
lavender = 0.80318750514521,
lavenderblush = 0.90172748631046,
lawngreen = 0.73905893124963,
lemonchiffon = 0.94038992245622,
lightblue = 0.63709141280807,
lightcoral = 0.35522120733135,
lightcyan = 0.94587293494829,
lightgoldenrodyellow = 0.93348351018297,
lightgray = 0.65140563741982,
lightgreen = 0.69091979956865,
lightgrey = 0.65140563741982,
lightpink = 0.58566152734898,
lightsalmon = 0.4780675225206,
lightseagreen = 0.35050145117042,
lightskyblue = 0.56195637618331,
lightslategray = 0.23830165007287,
lightslategrey = 0.23830165007287,
lightsteelblue = 0.53983888284666,
lightyellow = 0.98161818392882,
lime = 0.7152,
limegreen = 0.44571042246098,
linen = 0.88357340984379,
magenta = 0.2848,
maroon = 0.045891942324215,
mediumaquamarine = 0.49389703310801,
mediumblue = 0.044077780212328,
mediumorchid = 0.21639251153773,
mediumpurple = 0.22905858091648,
mediumseagreen = 0.34393112338131,
mediumslateblue = 0.20284629471622,
mediumspringgreen = 0.70704308194184,
mediumturquoise = 0.5133827926448,
mediumvioletred = 0.14371899849357,
midnightblue = 0.02071786635086,
mintcream = 0.97834604947588,
mistyrose = 0.82183047859185,
moccasin = 0.80083000991567,
navajowhite = 0.76519682342785,
navy = 0.015585128108224,
oldlace = 0.91900633405549,
olive = 0.20027537200568,
olivedrab = 0.22593150951929,
orange = 0.4817026703631,
orangered = 0.25516243753416,
orchid = 0.31348806761439,
palegoldenrod = 0.78792647887614,
palegreen = 0.77936759006353,
paleturquoise = 0.76436077921714,
palevioletred = 0.28754994117889,
papayawhip = 0.87797100199835,
peachpuff = 0.74905589878251,
peru = 0.30113074877936,
pink = 0.63271070702466,
plum = 0.45734221587969,
powderblue = 0.68254586500605,
purple = 0.061477070432439,
rebeccapurple = 0.07492341159447,
red = 0.2126,
rosybrown = 0.32319457649407,
royalblue = 0.16663210743188,
saddlebrown = 0.097922285020521,
salmon = 0.36977241527596,
sandybrown = 0.46628543696283,
seagreen = 0.19734199706275,
seashell = 0.92737862206922,
sienna = 0.13697631337098,
silver = 0.52711512570581,
skyblue = 0.55291668518184,
slateblue = 0.14784278062136,
slategray = 0.20896704076536,
slategrey = 0.20896704076536,
snow = 0.96533341834849,
springgreen = 0.73052306068529,
steelblue = 0.20562642207625,
tan = 0.48237604163921,
teal = 0.16996855778968,
thistle = 0.56818401093733,
tomato = 0.30638612719415,
turquoise = 0.5895536427578,
violet = 0.40315452986676,
wheat = 0.74909702820482,
white = 1,
whitesmoke = 0.91309865179342,
yellow = 0.9278,
yellowgreen = 0.50762957208707,
}
r20z5n8mhvrb64veyr03posty8hajpl
10038
10037
2015-07-30T18:23:05Z
w>Izkala
0
Accidentally changed the indentation to spaces
10038
Scribunto
text/plain
return {
aliceblue = 0.92880068253475,
antiquewhite = 0.84646951707754,
aqua = 0.7874,
aquamarine = 0.8078549208338,
azure = 0.97265264954166,
beige = 0.8988459998705,
bisque = 0.80732327372979,
black = 0,
blanchedalmond = 0.85084439608156,
blue = 0.0722,
blueviolet = 0.12622014321946,
brown = 0.098224287876511,
burlywood = 0.51559844533893,
cadetblue = 0.29424681085422,
chartreuse = 0.76032025902623,
chocolate = 0.23898526114557,
coral = 0.37017930872924,
cornflowerblue = 0.30318641994179,
cornsilk = 0.93562110372965,
crimson = 0.16042199953026,
cyan = 0.7874,
darkblue = 0.018640801980939,
darkcyan = 0.20329317839046,
darkgoldenrod = 0.27264703559993,
darkgray = 0.39675523072563,
darkgreen = 0.091143429047575,
darkgrey = 0.39675523072563,
darkkhaki = 0.45747326349994,
darkmagenta = 0.07353047651207,
darkolivegreen = 0.12651920884889,
darkorange = 0.40016167026524,
darkorchid = 0.13413142174857,
darkred = 0.054889674531132,
darksalmon = 0.40541471563381,
darkseagreen = 0.43789249325969,
darkslateblue = 0.065792846227988,
darkslategray = 0.067608151928044,
darkslategrey = 0.067608151928044,
darkturquoise = 0.4874606277449,
darkviolet = 0.10999048339343,
deeppink = 0.23866895828276,
deepskyblue = 0.44481603395575,
dimgray = 0.14126329114027,
dimgrey = 0.14126329114027,
dodgerblue = 0.27442536991456,
firebrick = 0.10724525535015,
floralwhite = 0.95922484825004,
forestgreen = 0.18920812076002,
fuchsia = 0.2848,
gainsboro = 0.71569350050648,
ghostwhite = 0.94311261886323,
gold = 0.69860877428159,
goldenrod = 0.41919977809569,
gray = 0.2158605001139,
green = 0.15438342968146,
greenyellow = 0.80609472611453,
grey = 0.2158605001139,
honeydew = 0.96336535554782,
hotpink = 0.34658438169715,
indianred = 0.21406134963884,
indigo = 0.03107561486337,
ivory = 0.99071270600615,
khaki = 0.77012343394121,
lavender = 0.80318750514521,
lavenderblush = 0.90172748631046,
lawngreen = 0.73905893124963,
lemonchiffon = 0.94038992245622,
lightblue = 0.63709141280807,
lightcoral = 0.35522120733135,
lightcyan = 0.94587293494829,
lightgoldenrodyellow = 0.93348351018297,
lightgray = 0.65140563741982,
lightgreen = 0.69091979956865,
lightgrey = 0.65140563741982,
lightpink = 0.58566152734898,
lightsalmon = 0.4780675225206,
lightseagreen = 0.35050145117042,
lightskyblue = 0.56195637618331,
lightslategray = 0.23830165007287,
lightslategrey = 0.23830165007287,
lightsteelblue = 0.53983888284666,
lightyellow = 0.98161818392882,
lime = 0.7152,
limegreen = 0.44571042246098,
linen = 0.88357340984379,
magenta = 0.2848,
maroon = 0.045891942324215,
mediumaquamarine = 0.49389703310801,
mediumblue = 0.044077780212328,
mediumorchid = 0.21639251153773,
mediumpurple = 0.22905858091648,
mediumseagreen = 0.34393112338131,
mediumslateblue = 0.20284629471622,
mediumspringgreen = 0.70704308194184,
mediumturquoise = 0.5133827926448,
mediumvioletred = 0.14371899849357,
midnightblue = 0.02071786635086,
mintcream = 0.97834604947588,
mistyrose = 0.82183047859185,
moccasin = 0.80083000991567,
navajowhite = 0.76519682342785,
navy = 0.015585128108224,
oldlace = 0.91900633405549,
olive = 0.20027537200568,
olivedrab = 0.22593150951929,
orange = 0.4817026703631,
orangered = 0.25516243753416,
orchid = 0.31348806761439,
palegoldenrod = 0.78792647887614,
palegreen = 0.77936759006353,
paleturquoise = 0.76436077921714,
palevioletred = 0.28754994117889,
papayawhip = 0.87797100199835,
peachpuff = 0.74905589878251,
peru = 0.30113074877936,
pink = 0.63271070702466,
plum = 0.45734221587969,
powderblue = 0.68254586500605,
purple = 0.061477070432439,
rebeccapurple = 0.07492341159447,
red = 0.2126,
rosybrown = 0.32319457649407,
royalblue = 0.16663210743188,
saddlebrown = 0.097922285020521,
salmon = 0.36977241527596,
sandybrown = 0.46628543696283,
seagreen = 0.19734199706275,
seashell = 0.92737862206922,
sienna = 0.13697631337098,
silver = 0.52711512570581,
skyblue = 0.55291668518184,
slateblue = 0.14784278062136,
slategray = 0.20896704076536,
slategrey = 0.20896704076536,
snow = 0.96533341834849,
springgreen = 0.73052306068529,
steelblue = 0.20562642207625,
tan = 0.48237604163921,
teal = 0.16996855778968,
thistle = 0.56818401093733,
tomato = 0.30638612719415,
turquoise = 0.5895536427578,
violet = 0.40315452986676,
wheat = 0.74909702820482,
white = 1,
whitesmoke = 0.91309865179342,
yellow = 0.9278,
yellowgreen = 0.50762957208707,
}
9lxigwr950lisoj3o74gwjv7bzls3g6
10039
10038
2015-07-30T19:00:09Z
w>Mr. Stradivarius
0
tabularise, because you know it makes sense - https://github.com/godlygeek/tabular
10039
Scribunto
text/plain
return {
aliceblue = 0.92880068253475,
antiquewhite = 0.84646951707754,
aqua = 0.7874,
aquamarine = 0.8078549208338,
azure = 0.97265264954166,
beige = 0.8988459998705,
bisque = 0.80732327372979,
black = 0,
blanchedalmond = 0.85084439608156,
blue = 0.0722,
blueviolet = 0.12622014321946,
brown = 0.098224287876511,
burlywood = 0.51559844533893,
cadetblue = 0.29424681085422,
chartreuse = 0.76032025902623,
chocolate = 0.23898526114557,
coral = 0.37017930872924,
cornflowerblue = 0.30318641994179,
cornsilk = 0.93562110372965,
crimson = 0.16042199953026,
cyan = 0.7874,
darkblue = 0.018640801980939,
darkcyan = 0.20329317839046,
darkgoldenrod = 0.27264703559993,
darkgray = 0.39675523072563,
darkgreen = 0.091143429047575,
darkgrey = 0.39675523072563,
darkkhaki = 0.45747326349994,
darkmagenta = 0.07353047651207,
darkolivegreen = 0.12651920884889,
darkorange = 0.40016167026524,
darkorchid = 0.13413142174857,
darkred = 0.054889674531132,
darksalmon = 0.40541471563381,
darkseagreen = 0.43789249325969,
darkslateblue = 0.065792846227988,
darkslategray = 0.067608151928044,
darkslategrey = 0.067608151928044,
darkturquoise = 0.4874606277449,
darkviolet = 0.10999048339343,
deeppink = 0.23866895828276,
deepskyblue = 0.44481603395575,
dimgray = 0.14126329114027,
dimgrey = 0.14126329114027,
dodgerblue = 0.27442536991456,
firebrick = 0.10724525535015,
floralwhite = 0.95922484825004,
forestgreen = 0.18920812076002,
fuchsia = 0.2848,
gainsboro = 0.71569350050648,
ghostwhite = 0.94311261886323,
gold = 0.69860877428159,
goldenrod = 0.41919977809569,
gray = 0.2158605001139,
green = 0.15438342968146,
greenyellow = 0.80609472611453,
grey = 0.2158605001139,
honeydew = 0.96336535554782,
hotpink = 0.34658438169715,
indianred = 0.21406134963884,
indigo = 0.03107561486337,
ivory = 0.99071270600615,
khaki = 0.77012343394121,
lavender = 0.80318750514521,
lavenderblush = 0.90172748631046,
lawngreen = 0.73905893124963,
lemonchiffon = 0.94038992245622,
lightblue = 0.63709141280807,
lightcoral = 0.35522120733135,
lightcyan = 0.94587293494829,
lightgoldenrodyellow = 0.93348351018297,
lightgray = 0.65140563741982,
lightgreen = 0.69091979956865,
lightgrey = 0.65140563741982,
lightpink = 0.58566152734898,
lightsalmon = 0.4780675225206,
lightseagreen = 0.35050145117042,
lightskyblue = 0.56195637618331,
lightslategray = 0.23830165007287,
lightslategrey = 0.23830165007287,
lightsteelblue = 0.53983888284666,
lightyellow = 0.98161818392882,
lime = 0.7152,
limegreen = 0.44571042246098,
linen = 0.88357340984379,
magenta = 0.2848,
maroon = 0.045891942324215,
mediumaquamarine = 0.49389703310801,
mediumblue = 0.044077780212328,
mediumorchid = 0.21639251153773,
mediumpurple = 0.22905858091648,
mediumseagreen = 0.34393112338131,
mediumslateblue = 0.20284629471622,
mediumspringgreen = 0.70704308194184,
mediumturquoise = 0.5133827926448,
mediumvioletred = 0.14371899849357,
midnightblue = 0.02071786635086,
mintcream = 0.97834604947588,
mistyrose = 0.82183047859185,
moccasin = 0.80083000991567,
navajowhite = 0.76519682342785,
navy = 0.015585128108224,
oldlace = 0.91900633405549,
olive = 0.20027537200568,
olivedrab = 0.22593150951929,
orange = 0.4817026703631,
orangered = 0.25516243753416,
orchid = 0.31348806761439,
palegoldenrod = 0.78792647887614,
palegreen = 0.77936759006353,
paleturquoise = 0.76436077921714,
palevioletred = 0.28754994117889,
papayawhip = 0.87797100199835,
peachpuff = 0.74905589878251,
peru = 0.30113074877936,
pink = 0.63271070702466,
plum = 0.45734221587969,
powderblue = 0.68254586500605,
purple = 0.061477070432439,
rebeccapurple = 0.07492341159447,
red = 0.2126,
rosybrown = 0.32319457649407,
royalblue = 0.16663210743188,
saddlebrown = 0.097922285020521,
salmon = 0.36977241527596,
sandybrown = 0.46628543696283,
seagreen = 0.19734199706275,
seashell = 0.92737862206922,
sienna = 0.13697631337098,
silver = 0.52711512570581,
skyblue = 0.55291668518184,
slateblue = 0.14784278062136,
slategray = 0.20896704076536,
slategrey = 0.20896704076536,
snow = 0.96533341834849,
springgreen = 0.73052306068529,
steelblue = 0.20562642207625,
tan = 0.48237604163921,
teal = 0.16996855778968,
thistle = 0.56818401093733,
tomato = 0.30638612719415,
turquoise = 0.5895536427578,
violet = 0.40315452986676,
wheat = 0.74909702820482,
white = 1,
whitesmoke = 0.91309865179342,
yellow = 0.9278,
yellowgreen = 0.50762957208707,
}
chi69ar1btd4wp6xbk3uez6sfu0vipn
10040
10033
2021-10-29T20:02:26Z
meta>GeneralNotability
0
7 revisions imported from [[:w:Module:Color_contrast/colors]]: blame [[User:Barkeep49]]
9055
Scribunto
text/plain
return {
aliceblue = 0.92880068253475,
antiquewhite = 0.84646951707754,
aqua = 0.7874,
aquamarine = 0.8078549208338,
azure = 0.97265264954166,
beige = 0.8988459998705,
bisque = 0.80732327372979,
black = 0,
blanchedalmond = 0.85084439608156,
blue = 0.0722,
blueviolet = 0.12622014321946,
brown = 0.098224287876511,
burlywood = 0.51559844533893,
cadetblue = 0.29424681085422,
chartreuse = 0.76032025902623,
chocolate = 0.23898526114557,
coral = 0.37017930872924,
cornflowerblue = 0.30318641994179,
cornsilk = 0.93562110372965,
crimson = 0.16042199953026,
cyan = 0.7874,
darkblue = 0.018640801980939,
darkcyan = 0.20329317839046,
darkgoldenrod = 0.27264703559993,
darkgray = 0.39675523072563,
darkgreen = 0.091143429047575,
darkgrey = 0.39675523072563,
darkkhaki = 0.45747326349994,
darkmagenta = 0.07353047651207,
darkolivegreen = 0.12651920884889,
darkorange = 0.40016167026524,
darkorchid = 0.13413142174857,
darkred = 0.054889674531132,
darksalmon = 0.40541471563381,
darkseagreen = 0.43789249325969,
darkslateblue = 0.065792846227988,
darkslategray = 0.067608151928044,
darkslategrey = 0.067608151928044,
darkturquoise = 0.4874606277449,
darkviolet = 0.10999048339343,
deeppink = 0.23866895828276,
deepskyblue = 0.44481603395575,
dimgray = 0.14126329114027,
dimgrey = 0.14126329114027,
dodgerblue = 0.27442536991456,
firebrick = 0.10724525535015,
floralwhite = 0.95922484825004,
forestgreen = 0.18920812076002,
fuchsia = 0.2848,
gainsboro = 0.71569350050648,
ghostwhite = 0.94311261886323,
gold = 0.69860877428159,
goldenrod = 0.41919977809569,
gray = 0.2158605001139,
green = 0.15438342968146,
greenyellow = 0.80609472611453,
grey = 0.2158605001139,
honeydew = 0.96336535554782,
hotpink = 0.34658438169715,
indianred = 0.21406134963884,
indigo = 0.03107561486337,
ivory = 0.99071270600615,
khaki = 0.77012343394121,
lavender = 0.80318750514521,
lavenderblush = 0.90172748631046,
lawngreen = 0.73905893124963,
lemonchiffon = 0.94038992245622,
lightblue = 0.63709141280807,
lightcoral = 0.35522120733135,
lightcyan = 0.94587293494829,
lightgoldenrodyellow = 0.93348351018297,
lightgray = 0.65140563741982,
lightgreen = 0.69091979956865,
lightgrey = 0.65140563741982,
lightpink = 0.58566152734898,
lightsalmon = 0.4780675225206,
lightseagreen = 0.35050145117042,
lightskyblue = 0.56195637618331,
lightslategray = 0.23830165007287,
lightslategrey = 0.23830165007287,
lightsteelblue = 0.53983888284666,
lightyellow = 0.98161818392882,
lime = 0.7152,
limegreen = 0.44571042246098,
linen = 0.88357340984379,
magenta = 0.2848,
maroon = 0.045891942324215,
mediumaquamarine = 0.49389703310801,
mediumblue = 0.044077780212328,
mediumorchid = 0.21639251153773,
mediumpurple = 0.22905858091648,
mediumseagreen = 0.34393112338131,
mediumslateblue = 0.20284629471622,
mediumspringgreen = 0.70704308194184,
mediumturquoise = 0.5133827926448,
mediumvioletred = 0.14371899849357,
midnightblue = 0.02071786635086,
mintcream = 0.97834604947588,
mistyrose = 0.82183047859185,
moccasin = 0.80083000991567,
navajowhite = 0.76519682342785,
navy = 0.015585128108224,
oldlace = 0.91900633405549,
olive = 0.20027537200568,
olivedrab = 0.22593150951929,
orange = 0.4817026703631,
orangered = 0.25516243753416,
orchid = 0.31348806761439,
palegoldenrod = 0.78792647887614,
palegreen = 0.77936759006353,
paleturquoise = 0.76436077921714,
palevioletred = 0.28754994117889,
papayawhip = 0.87797100199835,
peachpuff = 0.74905589878251,
peru = 0.30113074877936,
pink = 0.63271070702466,
plum = 0.45734221587969,
powderblue = 0.68254586500605,
purple = 0.061477070432439,
rebeccapurple = 0.07492341159447,
red = 0.2126,
rosybrown = 0.32319457649407,
royalblue = 0.16663210743188,
saddlebrown = 0.097922285020521,
salmon = 0.36977241527596,
sandybrown = 0.46628543696283,
seagreen = 0.19734199706275,
seashell = 0.92737862206922,
sienna = 0.13697631337098,
silver = 0.52711512570581,
skyblue = 0.55291668518184,
slateblue = 0.14784278062136,
slategray = 0.20896704076536,
slategrey = 0.20896704076536,
snow = 0.96533341834849,
springgreen = 0.73052306068529,
steelblue = 0.20562642207625,
tan = 0.48237604163921,
teal = 0.16996855778968,
thistle = 0.56818401093733,
tomato = 0.30638612719415,
turquoise = 0.5895536427578,
violet = 0.40315452986676,
wheat = 0.74909702820482,
white = 1,
whitesmoke = 0.91309865179342,
yellow = 0.9278,
yellowgreen = 0.50762957208707,
}
chi69ar1btd4wp6xbk3uez6sfu0vipn
10041
9056
2026-08-24T13:00:45Z
RAPTOR7762
18
9 revisions imported from [[:meta:Module:Color_contrast/colors]]
9055
Scribunto
text/plain
return {
aliceblue = 0.92880068253475,
antiquewhite = 0.84646951707754,
aqua = 0.7874,
aquamarine = 0.8078549208338,
azure = 0.97265264954166,
beige = 0.8988459998705,
bisque = 0.80732327372979,
black = 0,
blanchedalmond = 0.85084439608156,
blue = 0.0722,
blueviolet = 0.12622014321946,
brown = 0.098224287876511,
burlywood = 0.51559844533893,
cadetblue = 0.29424681085422,
chartreuse = 0.76032025902623,
chocolate = 0.23898526114557,
coral = 0.37017930872924,
cornflowerblue = 0.30318641994179,
cornsilk = 0.93562110372965,
crimson = 0.16042199953026,
cyan = 0.7874,
darkblue = 0.018640801980939,
darkcyan = 0.20329317839046,
darkgoldenrod = 0.27264703559993,
darkgray = 0.39675523072563,
darkgreen = 0.091143429047575,
darkgrey = 0.39675523072563,
darkkhaki = 0.45747326349994,
darkmagenta = 0.07353047651207,
darkolivegreen = 0.12651920884889,
darkorange = 0.40016167026524,
darkorchid = 0.13413142174857,
darkred = 0.054889674531132,
darksalmon = 0.40541471563381,
darkseagreen = 0.43789249325969,
darkslateblue = 0.065792846227988,
darkslategray = 0.067608151928044,
darkslategrey = 0.067608151928044,
darkturquoise = 0.4874606277449,
darkviolet = 0.10999048339343,
deeppink = 0.23866895828276,
deepskyblue = 0.44481603395575,
dimgray = 0.14126329114027,
dimgrey = 0.14126329114027,
dodgerblue = 0.27442536991456,
firebrick = 0.10724525535015,
floralwhite = 0.95922484825004,
forestgreen = 0.18920812076002,
fuchsia = 0.2848,
gainsboro = 0.71569350050648,
ghostwhite = 0.94311261886323,
gold = 0.69860877428159,
goldenrod = 0.41919977809569,
gray = 0.2158605001139,
green = 0.15438342968146,
greenyellow = 0.80609472611453,
grey = 0.2158605001139,
honeydew = 0.96336535554782,
hotpink = 0.34658438169715,
indianred = 0.21406134963884,
indigo = 0.03107561486337,
ivory = 0.99071270600615,
khaki = 0.77012343394121,
lavender = 0.80318750514521,
lavenderblush = 0.90172748631046,
lawngreen = 0.73905893124963,
lemonchiffon = 0.94038992245622,
lightblue = 0.63709141280807,
lightcoral = 0.35522120733135,
lightcyan = 0.94587293494829,
lightgoldenrodyellow = 0.93348351018297,
lightgray = 0.65140563741982,
lightgreen = 0.69091979956865,
lightgrey = 0.65140563741982,
lightpink = 0.58566152734898,
lightsalmon = 0.4780675225206,
lightseagreen = 0.35050145117042,
lightskyblue = 0.56195637618331,
lightslategray = 0.23830165007287,
lightslategrey = 0.23830165007287,
lightsteelblue = 0.53983888284666,
lightyellow = 0.98161818392882,
lime = 0.7152,
limegreen = 0.44571042246098,
linen = 0.88357340984379,
magenta = 0.2848,
maroon = 0.045891942324215,
mediumaquamarine = 0.49389703310801,
mediumblue = 0.044077780212328,
mediumorchid = 0.21639251153773,
mediumpurple = 0.22905858091648,
mediumseagreen = 0.34393112338131,
mediumslateblue = 0.20284629471622,
mediumspringgreen = 0.70704308194184,
mediumturquoise = 0.5133827926448,
mediumvioletred = 0.14371899849357,
midnightblue = 0.02071786635086,
mintcream = 0.97834604947588,
mistyrose = 0.82183047859185,
moccasin = 0.80083000991567,
navajowhite = 0.76519682342785,
navy = 0.015585128108224,
oldlace = 0.91900633405549,
olive = 0.20027537200568,
olivedrab = 0.22593150951929,
orange = 0.4817026703631,
orangered = 0.25516243753416,
orchid = 0.31348806761439,
palegoldenrod = 0.78792647887614,
palegreen = 0.77936759006353,
paleturquoise = 0.76436077921714,
palevioletred = 0.28754994117889,
papayawhip = 0.87797100199835,
peachpuff = 0.74905589878251,
peru = 0.30113074877936,
pink = 0.63271070702466,
plum = 0.45734221587969,
powderblue = 0.68254586500605,
purple = 0.061477070432439,
rebeccapurple = 0.07492341159447,
red = 0.2126,
rosybrown = 0.32319457649407,
royalblue = 0.16663210743188,
saddlebrown = 0.097922285020521,
salmon = 0.36977241527596,
sandybrown = 0.46628543696283,
seagreen = 0.19734199706275,
seashell = 0.92737862206922,
sienna = 0.13697631337098,
silver = 0.52711512570581,
skyblue = 0.55291668518184,
slateblue = 0.14784278062136,
slategray = 0.20896704076536,
slategrey = 0.20896704076536,
snow = 0.96533341834849,
springgreen = 0.73052306068529,
steelblue = 0.20562642207625,
tan = 0.48237604163921,
teal = 0.16996855778968,
thistle = 0.56818401093733,
tomato = 0.30638612719415,
turquoise = 0.5895536427578,
violet = 0.40315452986676,
wheat = 0.74909702820482,
white = 1,
whitesmoke = 0.91309865179342,
yellow = 0.9278,
yellowgreen = 0.50762957208707,
}
chi69ar1btd4wp6xbk3uez6sfu0vipn
Module:Transclusion count/data/T
828
1106
10431
9220
2026-08-23T05:10:35Z
en>Ahechtbot
0
[[Wikipedia:BOT|Bot]]: Updated page.
10431
Scribunto
text/plain
return {
["T"] = 324000,
["T1"] = 9000,
["T:TDYK"] = 2700,
["TAFI/Picture_box"] = 2800,
["TBA"] = 6500,
["TCH"] = 2300,
["TCMDb_name"] = 2700,
["TCMDb_title"] = 15000,
["TDMCA"] = 23000,
["TERYT"] = 53000,
["TFAFULL"] = 14000,
["TFAIMAGE"] = 3000,
["TFA_footer"] = 9700,
["TFAfooter"] = 9700,
["TFArecentlist"] = 5400,
["THA"] = 4500,
["TOC_bottom"] = 86000,
["TOC_left"] = 3100,
["TOC_left/styles.css"] = 3100,
["TOC_limit"] = 24000,
["TOC_limit/styles.css"] = 26000,
["TOC_right"] = 51000,
["TOC_right/styles.css"] = 51000,
["TOC_top"] = 86000,
["TOC_top/styles.css"] = 86000,
["TOClimit"] = 3100,
["TOCright"] = 7500,
["TPE"] = 2500,
["TUN"] = 2300,
["TUR"] = 8100,
["TWA/Logo/3"] = 74000,
["TWA/Navigation2"] = 5200,
["TWA_nav_inner_black"] = 38000,
["Tab"] = 6700,
["Tab/Number_of_defined_parameters"] = 6700,
["Tab/styles.css"] = 6700,
["TableTBA"] = 3100,
["Table_alignment"] = 19000,
["Table_alignment/styles.css"] = 19000,
["Tag"] = 7300,
["Talk"] = 4300,
["Talk_Header"] = 5600,
["Talk_archive"] = 45000,
["Talk_archive_navigation"] = 20000,
["Talk_header"] = 846000,
["Talk_header/archivebotparse"] = 115000,
["Talk_header/styles.css"] = 846000,
["Talk_other"] = 4540000,
["Talk_page"] = 8100,
["Talk_page_header"] = 4700,
["Talk_page_of_a_redirect"] = 4200,
["Talk_page_of_redirect"] = 36000,
["Talk_page_stalker"] = 13000,
["Talk_page_watcher"] = 3700,
["Talk_quote"] = 2500,
["Talk_quote_block"] = 22000,
["Talk_quote_block/styles.css"] = 22000,
["Talk_quote_inline"] = 176000,
["Talk_quote_inline/styles.css"] = 176000,
["Talk_quote_inline_with_italics"] = 2800,
["Talk_quote_inline_with_quotes"] = 7400,
["Talkarchive"] = 117000,
["Talkarchivenav"] = 31000,
["Talkback"] = 65000,
["Talkheader"] = 119000,
["Talkpage"] = 5800,
["Talkquote"] = 9200,
["Talkref"] = 3500,
["Talkspace_detect"] = 557000,
["Tallyho"] = 2300,
["Tan"] = 5200,
["Task_force_assessment_category"] = 3100,
["Task_force_assessment_category/core"] = 3100,
["Tasks"] = 939000,
["Taxobox"] = 3400,
["Taxobox/Error_colour"] = 506000,
["Taxobox/core"] = 506000,
["Taxobox/core/styles.css"] = 506000,
["Taxobox/species"] = 200000,
["Taxobox_colour"] = 657000,
["Taxon_author"] = 6300,
["Taxon_info"] = 547000,
["Taxon_italics"] = 395000,
["Taxonbar"] = 503000,
["Taxonbar/candidate"] = 501000,
["Taxonomy"] = 401000,
["Taxonomy/Acalyptratae"] = 6700,
["Taxonomy/Acanthomorpha"] = 17000,
["Taxonomy/Acanthopterygii"] = 17000,
["Taxonomy/Acrididea"] = 2100,
["Taxonomy/Actinomycetes"] = 2600,
["Taxonomy/Actinomycetota"] = 2800,
["Taxonomy/Actinopteri"] = 32000,
["Taxonomy/Actinopterygii"] = 33000,
["Taxonomy/Aculeata"] = 10000,
["Taxonomy/Adephaga"] = 14000,
["Taxonomy/Afrophidia"] = 4500,
["Taxonomy/Agaricales"] = 3600,
["Taxonomy/Agaricomycetes"] = 7200,
["Taxonomy/Agaricomycetidae"] = 4600,
["Taxonomy/Agaricomycotina"] = 7500,
["Taxonomy/Alethinophidia"] = 4700,
["Taxonomy/Allotriocarida"] = 266000,
["Taxonomy/Alphaproteobacteria"] = 2100,
["Taxonomy/Amastigomycota"] = 24000,
["Taxonomy/Ambulacraria"] = 3100,
["Taxonomy/Ammonoidea"] = 2400,
["Taxonomy/Amniota"] = 64000,
["Taxonomy/Amorphea"] = 517000,
["Taxonomy/Amphibia"] = 9100,
["Taxonomy/Amphiesmenoptera"] = 117000,
["Taxonomy/Angiosperms"] = 104000,
["Taxonomy/Animalia"] = 492000,
["Taxonomy/Antennoclypeata"] = 3200,
["Taxonomy/Anthophila"] = 4600,
["Taxonomy/Anthozoa"] = 2200,
["Taxonomy/Antliophora"] = 24000,
["Taxonomy/Anura"] = 7800,
["Taxonomy/Aparaglossata"] = 224000,
["Taxonomy/Apiales"] = 2200,
["Taxonomy/Apo-Chiroptera"] = 2000,
["Taxonomy/Apocrita"] = 14000,
["Taxonomy/Apoditrysia"] = 107000,
["Taxonomy/Apoidea"] = 5200,
["Taxonomy/Arachnida"] = 26000,
["Taxonomy/Arachnopulmonata"] = 19000,
["Taxonomy/Araneae"] = 18000,
["Taxonomy/Araneoidea"] = 3000,
["Taxonomy/Araneomorphae"] = 16000,
["Taxonomy/Archaeplastida"] = 113000,
["Taxonomy/Archelosauria"] = 7200,
["Taxonomy/Archosauria"] = 25000,
["Taxonomy/Archosauria/skip"] = 19000,
["Taxonomy/Archosauriformes"] = 5300,
["Taxonomy/Archosauromorpha"] = 5500,
["Taxonomy/Arctiinae"] = 11000,
["Taxonomy/Arctiini"] = 5200,
["Taxonomy/Arthropoda"] = 307000,
["Taxonomy/Artiodactyla"] = 2700,
["Taxonomy/Artiofabula"] = 2400,
["Taxonomy/Artiopoda"] = 2300,
["Taxonomy/Aschiza"] = 2500,
["Taxonomy/Ascomycota"] = 16000,
["Taxonomy/Asilomorpha"] = 3400,
["Taxonomy/Asparagales"] = 12000,
["Taxonomy/Asteraceae"] = 8600,
["Taxonomy/Asterales"] = 9900,
["Taxonomy/Asterids"] = 31000,
["Taxonomy/Asteroideae"] = 6600,
["Taxonomy/Auchenorrhyncha"] = 4000,
["Taxonomy/Australaves"] = 11000,
["Taxonomy/Avemetatarsalia"] = 5100,
["Taxonomy/Avemetatarsalia/skip"] = 19000,
["Taxonomy/Aves"] = 19000,
["Taxonomy/Avicularioidea"] = 2300,
["Taxonomy/BOP_clade"] = 2300,
["Taxonomy/Bacillati"] = 5700,
["Taxonomy/Bacillota"] = 2300,
["Taxonomy/Bacteria"] = 14000,
["Taxonomy/Basidiomycota"] = 8300,
["Taxonomy/Batrachia"] = 8800,
["Taxonomy/Batrachomorpha"] = 9100,
["Taxonomy/Bilateria"] = 486000,
["Taxonomy/Bivalvia"] = 2800,
["Taxonomy/Bombycoidea"] = 3800,
["Taxonomy/Boreoeutheria"] = 16000,
["Taxonomy/Brachycera"] = 20000,
["Taxonomy/Brachyura"] = 2000,
["Taxonomy/Bromeliaceae"] = 2300,
["Taxonomy/Buccinoidea"] = 2500,
["Taxonomy/CAM"] = 113000,
["Taxonomy/Caelifera"] = 2200,
["Taxonomy/Caenogastropoda"] = 25000,
["Taxonomy/Caenophidia"] = 4300,
["Taxonomy/Caesalpinioideae"] = 2200,
["Taxonomy/Calyptratae"] = 5600,
["Taxonomy/Campanulids"] = 13000,
["Taxonomy/Carabidae"] = 11000,
["Taxonomy/Caraboidea"] = 12000,
["Taxonomy/Carnivoramorpha"] = 2000,
["Taxonomy/Caryophyllales"] = 5600,
["Taxonomy/Cassidinae"] = 3900,
["Taxonomy/Cephalopoda"] = 5000,
["Taxonomy/Cerambycidae"] = 29000,
["Taxonomy/Cerambycinae"] = 6200,
["Taxonomy/Cetruminantia"] = 2200,
["Taxonomy/Chelicerata"] = 27000,
["Taxonomy/Chiroptera"] = 2000,
["Taxonomy/Choanozoa"] = 492000,
["Taxonomy/Chondrichthyes"] = 2700,
["Taxonomy/Chordata"] = 113000,
["Taxonomy/Chrysomelidae"] = 7500,
["Taxonomy/Chrysomeloidea"] = 37000,
["Taxonomy/Cicadomorpha"] = 2800,
["Taxonomy/Cimicomorpha"] = 2200,
["Taxonomy/Clupeocephala"] = 30000,
["Taxonomy/Cnidaria"] = 3800,
["Taxonomy/Coccinellidae"] = 2600,
["Taxonomy/Coccinellinae"] = 2000,
["Taxonomy/Coccinelloidea"] = 3000,
["Taxonomy/Coelolepida"] = 116000,
["Taxonomy/Coleoptera"] = 82000,
["Taxonomy/Coleopterida"] = 82000,
["Taxonomy/Colubridae"] = 2700,
["Taxonomy/Colubroidea"] = 2700,
["Taxonomy/Colubroides"] = 4300,
["Taxonomy/Commelinids"] = 12000,
["Taxonomy/Conchifera"] = 5300,
["Taxonomy/Condylognatha"] = 12000,
["Taxonomy/Conoidea"] = 7300,
["Taxonomy/Core_eudicots"] = 70000,
["Taxonomy/Cosmopterigidae"] = 2100,
["Taxonomy/Cossoidea"] = 2800,
["Taxonomy/Crambidae"] = 12000,
["Taxonomy/Crambinae"] = 2300,
["Taxonomy/Crocopoda"] = 5400,
["Taxonomy/Ctenosquamata"] = 18000,
["Taxonomy/Cucujiformia"] = 49000,
["Taxonomy/Curculionidae"] = 3200,
["Taxonomy/Curculionoidea"] = 3900,
["Taxonomy/Cyclorrhapha"] = 12000,
["Taxonomy/Cyperaceae"] = 2600,
["Taxonomy/Cypriniformes"] = 5100,
["Taxonomy/Cypriniphysi"] = 5100,
["Taxonomy/Cyprinoidei"] = 3900,
["Taxonomy/Decapoda"] = 4300,
["Taxonomy/Dendrobiinae"] = 2100,
["Taxonomy/Depressariidae"] = 3100,
["Taxonomy/Deuteropoda"] = 307000,
["Taxonomy/Deuterostomia"] = 116000,
["Taxonomy/Diaphoretickes"] = 117000,
["Taxonomy/Diaphoretickes/showdomain"] = 5100,
["Taxonomy/Diapsida"] = 25000,
["Taxonomy/Dicondylia"] = 263000,
["Taxonomy/Dictyoptera"] = 2400,
["Taxonomy/Dikarya"] = 24000,
["Taxonomy/Dinosauria"] = 4300,
["Taxonomy/Dinosauria/skip"] = 19000,
["Taxonomy/Dinosauromorpha"] = 4300,
["Taxonomy/Diptera"] = 24000,
["Taxonomy/Ditrysia"] = 113000,
["Taxonomy/Doryloformicia"] = 2900,
["Taxonomy/Dothideomyceta"] = 9700,
["Taxonomy/Dothideomycetes"] = 2700,
["Taxonomy/Ecdysozoa"] = 310000,
["Taxonomy/Echinodermata"] = 2800,
["Taxonomy/Elasmobranchii"] = 2200,
["Taxonomy/Elateriformia"] = 3800,
["Taxonomy/Elementaves"] = 2100,
["Taxonomy/Elpistostegalia"] = 74000,
["Taxonomy/Embryophytes"] = 110000,
["Taxonomy/Embryophytes/Plantae"] = 110000,
["Taxonomy/Ennominae"] = 2700,
["Taxonomy/Ensifera"] = 2200,
["Taxonomy/Entelegynae"] = 8100,
["Taxonomy/Eotetrapodiformes"] = 74000,
["Taxonomy/Epidendroideae"] = 5500,
["Taxonomy/Erebidae"] = 17000,
["Taxonomy/Eremoneura"] = 12000,
["Taxonomy/Ericales"] = 4200,
["Taxonomy/Euarchontoglires"] = 6300,
["Taxonomy/Eucarida"] = 4400,
["Taxonomy/Eucrocopoda"] = 5200,
["Taxonomy/Eudicots"] = 74000,
["Taxonomy/Eufalconimorphae"] = 11000,
["Taxonomy/Euformicia"] = 3200,
["Taxonomy/Eugnathostomata"] = 111000,
["Taxonomy/Eukaryota"] = 635000,
["Taxonomy/Eukaryota/displayed"] = 6400,
["Taxonomy/Eulepidoptera"] = 114000,
["Taxonomy/Eumalacostraca"] = 6900,
["Taxonomy/Eumetabola"] = 251000,
["Taxonomy/Eumetazoa"] = 490000,
["Taxonomy/Eupasseres"] = 9800,
["Taxonomy/Eupercaria"] = 5700,
["Taxonomy/Euphyllophytes"] = 2000,
["Taxonomy/Eupitheciini"] = 2000,
["Taxonomy/Eupulmonata"] = 6300,
["Taxonomy/Eureptilia"] = 25000,
["Taxonomy/Eurypterygii"] = 18000,
["Taxonomy/Euselachii"] = 2300,
["Taxonomy/Euteleostei"] = 19000,
["Taxonomy/Eutheria"] = 17000,
["Taxonomy/Euthyneura"] = 13000,
["Taxonomy/Euungulata"] = 4000,
["Taxonomy/Fabaceae"] = 6800,
["Taxonomy/Fabales"] = 7100,
["Taxonomy/Fabids"] = 18000,
["Taxonomy/Faboideae"] = 4000,
["Taxonomy/Ferae"] = 2400,
["Taxonomy/Ferungulata"] = 6400,
["Taxonomy/Filozoa"] = 492000,
["Taxonomy/Formicidae"] = 3300,
["Taxonomy/Formicoidea"] = 3300,
["Taxonomy/Fungi"] = 25000,
["Taxonomy/Gamasina"] = 2300,
["Taxonomy/Gammaproteobacteria"] = 2000,
["Taxonomy/Gastropoda"] = 44000,
["Taxonomy/Gekkonoidea"] = 2200,
["Taxonomy/Gekkonomorpha"] = 2600,
["Taxonomy/Gekkota"] = 2600,
["Taxonomy/Gelechiidae"] = 6100,
["Taxonomy/Gelechiinae"] = 3000,
["Taxonomy/Gelechioidea"] = 19000,
["Taxonomy/Gentianales"] = 5000,
["Taxonomy/Geometridae"] = 11000,
["Taxonomy/Geometroidea"] = 11000,
["Taxonomy/Glires"] = 4600,
["Taxonomy/Gliriformes"] = 4600,
["Taxonomy/Glossata"] = 116000,
["Taxonomy/Gnathostomata"] = 111000,
["Taxonomy/Gracillariidae"] = 2200,
["Taxonomy/Gracillarioidea"] = 2500,
["Taxonomy/Graminid_clade"] = 4100,
["Taxonomy/Halvaria"] = 3000,
["Taxonomy/Helicina_(suborder)"] = 5500,
["Taxonomy/Hemiptera"] = 10000,
["Taxonomy/Hesperiidae"] = 2700,
["Taxonomy/Heterobranchia"] = 13000,
["Taxonomy/Heteroneura"] = 115000,
["Taxonomy/Heteroptera"] = 5100,
["Taxonomy/Hexapoda"] = 265000,
["Taxonomy/Holometabola"] = 238000,
["Taxonomy/Holomycota"] = 25000,
["Taxonomy/Holozoa"] = 492000,
["Taxonomy/Hyloidea"] = 3600,
["Taxonomy/Hymenoptera"] = 14000,
["Taxonomy/Hymenopterida"] = 14000,
["Taxonomy/Iguania"] = 2500,
["Taxonomy/Iguanomorpha"] = 2500,
["Taxonomy/Insecta"] = 264000,
["Taxonomy/Lamiales"] = 6900,
["Taxonomy/Lamiids"] = 14000,
["Taxonomy/Lamiinae"] = 21000,
["Taxonomy/Larentiinae"] = 3700,
["Taxonomy/Laurasiatheria"] = 9200,
["Taxonomy/Lecanoromycetes"] = 4700,
["Taxonomy/Lecanoromycetidae"] = 3200,
["Taxonomy/Leotiomyceta"] = 14000,
["Taxonomy/Lepidoptera"] = 116000,
["Taxonomy/Lepidosauria"] = 15000,
["Taxonomy/Lepidosauromorpha"] = 15000,
["Taxonomy/Life"] = 653000,
["Taxonomy/Linyphiidae"] = 2100,
["Taxonomy/Lissamphibia"] = 9100,
["Taxonomy/Lithosiini"] = 3600,
["Taxonomy/Littorinimorpha"] = 5800,
["Taxonomy/Lophotrochozoa"] = 57000,
["Taxonomy/Lycaenidae"] = 4100,
["Taxonomy/Macroheterocera"] = 43000,
["Taxonomy/Magnoliids"] = 2900,
["Taxonomy/Malacostraca"] = 7100,
["Taxonomy/Malaxideae"] = 2200,
["Taxonomy/Malpighiales"] = 4900,
["Taxonomy/Malvales"] = 2700,
["Taxonomy/Malvids"] = 13000,
["Taxonomy/Mammalia"] = 19000,
["Taxonomy/Mammalia/skip"] = 19000,
["Taxonomy/Mandibulata"] = 278000,
["Taxonomy/Melolonthinae"] = 3000,
["Taxonomy/Meso-Papilionoideae"] = 3800,
["Taxonomy/Mesostigmata"] = 2800,
["Taxonomy/Mollusca"] = 52000,
["Taxonomy/Monocots"] = 27000,
["Taxonomy/Monogynaspida"] = 2500,
["Taxonomy/Multicrustacea"] = 8700,
["Taxonomy/Muricidae"] = 2200,
["Taxonomy/Muricoidea"] = 2200,
["Taxonomy/Muroidea"] = 2600,
["Taxonomy/Muscomorpha"] = 15000,
["Taxonomy/Mygalomorphae"] = 2400,
["Taxonomy/Myoglossata"] = 116000,
["Taxonomy/Myomorpha"] = 2700,
["Taxonomy/Myriapoda"] = 2400,
["Taxonomy/Myrtaceae"] = 3100,
["Taxonomy/Myrtales"] = 4600,
["Taxonomy/Myrtoideae"] = 3100,
["Taxonomy/Nematocera"] = 3300,
["Taxonomy/Neoaves"] = 17000,
["Taxonomy/Neobatrachia"] = 6800,
["Taxonomy/Neocephalopoda"] = 3900,
["Taxonomy/Neodiapsida"] = 24000,
["Taxonomy/Neogastropoda"] = 16000,
["Taxonomy/Neognathae"] = 18000,
["Taxonomy/Neolepidoptera"] = 116000,
["Taxonomy/Neoptera"] = 259000,
["Taxonomy/Neopterygii"] = 32000,
["Taxonomy/Neoreptilia"] = 25000,
["Taxonomy/Neoteleostei"] = 18000,
["Taxonomy/Nephrozoa"] = 486000,
["Taxonomy/Neuropteroidea"] = 83000,
["Taxonomy/Noctuidae"] = 8400,
["Taxonomy/Noctuinae"] = 2800,
["Taxonomy/Noctuoidea"] = 27000,
["Taxonomy/Non-protein_amino_acid-accumulating_clade"] = 2700,
["Taxonomy/Nudibranchia"] = 2700,
["Taxonomy/Nudipleura"] = 2700,
["Taxonomy/Nymphalidae"] = 4300,
["Taxonomy/Obazoa"] = 517000,
["Taxonomy/Obtectomera"] = 73000,
["Taxonomy/Odonata"] = 3100,
["Taxonomy/Odonatoptera"] = 3100,
["Taxonomy/Oestroidea"] = 5000,
["Taxonomy/Olfactores"] = 112000,
["Taxonomy/Ophidia"] = 5200,
["Taxonomy/Opisthokonta"] = 517000,
["Taxonomy/Opisthothelae"] = 18000,
["Taxonomy/Orchidaceae"] = 8100,
["Taxonomy/Orchidoideae"] = 2300,
["Taxonomy/Ornithodira"] = 5000,
["Taxonomy/Ornithurae"] = 19000,
["Taxonomy/Ornithurae/skip"] = 19000,
["Taxonomy/Orthoptera"] = 4400,
["Taxonomy/Ostariophysi"] = 10000,
["Taxonomy/Osteichthyes"] = 108000,
["Taxonomy/Otocephala"] = 11000,
["Taxonomy/Otophysi"] = 10000,
["Taxonomy/Ovalentaria"] = 5000,
["Taxonomy/Palaeoptera"] = 3800,
["Taxonomy/Pan-Carnivora"] = 2200,
["Taxonomy/Pan-Euteleostei"] = 19000,
["Taxonomy/Pan-Euungulata"] = 4100,
["Taxonomy/Panarthropoda"] = 307000,
["Taxonomy/Pancrustacea"] = 275000,
["Taxonomy/Panorpida"] = 141000,
["Taxonomy/Panpulmonata"] = 8600,
["Taxonomy/Pantetrapulmonata"] = 19000,
["Taxonomy/Papilionoidea"] = 13000,
["Taxonomy/ParaHoxozoa"] = 490000,
["Taxonomy/Parapleurota"] = 25000,
["Taxonomy/Parasitiformes"] = 3100,
["Taxonomy/Paraxonia"] = 2800,
["Taxonomy/Passerea"] = 13000,
["Taxonomy/Passeri"] = 7800,
["Taxonomy/Passerida"] = 3500,
["Taxonomy/Passerides"] = 5900,
["Taxonomy/Passeriformes"] = 9800,
["Taxonomy/Pentatomomorpha"] = 2300,
["Taxonomy/Peracarida"] = 2500,
["Taxonomy/Perciformes"] = 2800,
["Taxonomy/Percomorpha"] = 16000,
["Taxonomy/Pezizomycotina"] = 15000,
["Taxonomy/Phycitinae"] = 2600,
["Taxonomy/Phytophaga"] = 41000,
["Taxonomy/Placentalia"] = 17000,
["Taxonomy/Plantae"] = 112000,
["Taxonomy/Planulozoa"] = 3800,
["Taxonomy/Platyhelminthes"] = 2700,
["Taxonomy/Pleocyemata"] = 4100,
["Taxonomy/Poaceae"] = 4100,
["Taxonomy/Poales"] = 9400,
["Taxonomy/Podiata"] = 517000,
["Taxonomy/Polyneoptera"] = 8600,
["Taxonomy/Polyphaga"] = 68000,
["Taxonomy/Polypodiophyta"] = 2000,
["Taxonomy/Polypodiopsida"] = 2000,
["Taxonomy/Polysporangiophytes"] = 108000,
["Taxonomy/Polysporangiophytes/Plantae"] = 108000,
["Taxonomy/Proteales"] = 2000,
["Taxonomy/Protostomia"] = 370000,
["Taxonomy/Pseudomonadati"] = 8100,
["Taxonomy/Pseudomonadota"] = 5000,
["Taxonomy/Psittacopasseres"] = 11000,
["Taxonomy/Pteropliini"] = 2300,
["Taxonomy/Pterygota"] = 263000,
["Taxonomy/Pyralidae"] = 4500,
["Taxonomy/Pyraloidea"] = 16000,
["Taxonomy/Pyramidellidae"] = 2200,
["Taxonomy/Pyramidelloidea"] = 2200,
["Taxonomy/RTA_clade"] = 4400,
["Taxonomy/Ranoidea"] = 2900,
["Taxonomy/Reptantia"] = 3400,
["Taxonomy/Reptilia"] = 25000,
["Taxonomy/Reptiliomorpha"] = 64000,
["Taxonomy/Rhabditophora"] = 2700,
["Taxonomy/Rhipidistia"] = 75000,
["Taxonomy/Ringipleura"] = 2800,
["Taxonomy/Rodentia"] = 4400,
["Taxonomy/Romeriida"] = 25000,
["Taxonomy/Rosales"] = 3300,
["Taxonomy/Rosids"] = 31000,
["Taxonomy/Rouphozoa"] = 2800,
["Taxonomy/Rubiaceae"] = 2600,
["Taxonomy/Saccharomyceta"] = 15000,
["Taxonomy/Salientia"] = 7800,
["Taxonomy/Salticidae"] = 2900,
["Taxonomy/Salticinae"] = 2600,
["Taxonomy/Sapindales"] = 3300,
["Taxonomy/Sar"] = 4000,
["Taxonomy/Sarcopterygii"] = 75000,
["Taxonomy/Sauria"] = 23000,
["Taxonomy/Saurischia"] = 2900,
["Taxonomy/Sauropsida"] = 43000,
["Taxonomy/Scarabaeidae"] = 10000,
["Taxonomy/Scarabaeiformia"] = 11000,
["Taxonomy/Scarabaeoidea"] = 11000,
["Taxonomy/Schizophora"] = 12000,
["Taxonomy/Scincidae"] = 2100,
["Taxonomy/Scincomorpha"] = 2400,
["Taxonomy/Scrotifera"] = 8500,
["Taxonomy/Sericinae"] = 3900,
["Taxonomy/Sericini"] = 3600,
["Taxonomy/Serpentes"] = 5200,
["Taxonomy/Setaphyta"] = 2100,
["Taxonomy/Siluriformes"] = 3600,
["Taxonomy/Simplicidentata"] = 4400,
["Taxonomy/Sordariomyceta"] = 4600,
["Taxonomy/Sordariomycetes"] = 2900,
["Taxonomy/Spermatophyta"] = 106000,
["Taxonomy/Spermatophytes/Plantae"] = 106000,
["Taxonomy/Spilomelinae"] = 4300,
["Taxonomy/Spiralia"] = 60000,
["Taxonomy/Squamata"] = 15000,
["Taxonomy/Staphyliniformia"] = 3000,
["Taxonomy/Staphylinoidea"] = 2200,
["Taxonomy/Stegocephali"] = 74000,
["Taxonomy/Stylommatophora"] = 6000,
["Taxonomy/Superasterids"] = 38000,
["Taxonomy/Superrosids"] = 32000,
["Taxonomy/Syrphidae"] = 2100,
["Taxonomy/Syrphoidea"] = 2300,
["Taxonomy/TSAR"] = 4000,
["Taxonomy/Tachinidae"] = 4400,
["Taxonomy/Tectipleura"] = 9800,
["Taxonomy/Teleocephala"] = 30000,
["Taxonomy/Teleostei"] = 32000,
["Taxonomy/Teleosteomorpha"] = 32000,
["Taxonomy/Telluraves"] = 13000,
["Taxonomy/Tenebrionoidea"] = 3400,
["Taxonomy/Tephritidae"] = 3300,
["Taxonomy/Tephritinae"] = 2400,
["Taxonomy/Tephritoidea"] = 4300,
["Taxonomy/Tetrapoda"] = 74000,
["Taxonomy/Tetrapodomorpha"] = 74000,
["Taxonomy/Tetrapulmonata"] = 19000,
["Taxonomy/Theria"] = 18000,
["Taxonomy/Theria/skip"] = 18000,
["Taxonomy/Theropoda/skip"] = 19000,
["Taxonomy/Tortricidae"] = 8500,
["Taxonomy/Tortricinae"] = 5900,
["Taxonomy/Tortricoidea"] = 8500,
["Taxonomy/Toxicofera"] = 8400,
["Taxonomy/Tracheophyta"] = 108000,
["Taxonomy/Tracheophytes/Plantae"] = 108000,
["Taxonomy/Trilobita"] = 2200,
["Taxonomy/Trilobitomorpha"] = 2300,
["Taxonomy/Trochida"] = 2800,
["Taxonomy/Trochoidea"] = 2800,
["Taxonomy/Tyranni"] = 2000,
["Taxonomy/Unicalcarida"] = 14000,
["Taxonomy/Vertebrata"] = 112000,
["Taxonomy/Vetigastropoda"] = 4900,
["Taxonomy/Virus"] = 2900,
["Taxonomy/crown_Formicidae"] = 3200,
["Taxonomy_key"] = 150000,
["Taxonomy_preload"] = 150000,
["Tb"] = 13000,
["Team_roster_navbox"] = 34000,
["Technical"] = 4100,
["Technically_indistinguishable"] = 2500,
["Television_debuts_endings_antonym"] = 7200,
["Television_episode_redirect_handler"] = 24000,
["Television_episode_short_description"] = 13000,
["Template"] = 4700,
["Template-Class"] = 14000,
["TemplateData_header"] = 18000,
["Template_category"] = 36000,
["Template_display"] = 57000,
["Template_for_discussion/dated"] = 16000,
["Template_for_discussion/styles.css"] = 37000,
["Template_for_merging/dated"] = 21000,
["Template_link"] = 7560000,
["Template_link_code"] = 1160000,
["Template_link_code_with_subst"] = 20000,
["Template_link_expanded"] = 2630000,
["Template_link_expanded_with_subst"] = 5100,
["Template_link_general"] = 24000,
["Template_link_interwiki"] = 9000,
["Template_link_null"] = 9200,
["Template_link_universal"] = 12000,
["Template_link_with_alternate_text"] = 2200,
["Template_link_with_link_off"] = 9800,
["Template_link_with_linked_braces"] = 8200,
["Template_link_with_parameters"] = 70000,
["Template_link_with_subst"] = 54000,
["Template_links"] = 2500,
["Template_other"] = 4970000,
["Template_parameter_usage"] = 20000,
["Template_parameter_value"] = 51000,
["Template_rating"] = 2600,
["Template_reference_list"] = 7400,
["Template_sandbox_notice"] = 6500,
["Template_shortcut"] = 6500,
["TennisEventInfo"] = 6800,
["TennisEvents"] = 2200,
["Tennis_events"] = 13000,
["Tennis_icon"] = 2800,
["Tennis_icon2"] = 2800,
["Tennis_record"] = 3000,
["Terminate_sentence"] = 53000,
["Testcases_notice"] = 5100,
["Text_diff"] = 3500,
["Tfd_links"] = 6900,
["Th/abp"] = 115000,
["Thank"] = 2400,
["Thank_you"] = 5400,
["The_edit-summary_field"] = 8900,
["The_edit-summary_field/OOUI"] = 2400,
["Their"] = 15000,
["They"] = 11000,
["They_have"] = 39000,
["Thin_space"] = 29000,
["Thinsp"] = 26000,
["Third-party"] = 6700,
["Thirteen_Colonies_article_name"] = 2100,
["This_is_a_new_user"] = 7000,
["Thursday"] = 2800,
["Tick"] = 81000,
["Ticket_confirmation"] = 3200,
["Time"] = 2800,
["Time_ago"] = 185000,
["Time_signature"] = 3300,
["Time_with_time_zone_link"] = 4300,
["Title_case"] = 5800,
["Title_century"] = 31000,
["Title_country"] = 42000,
["Title_decade"] = 31000,
["Title_demonym"] = 39000,
["Title_disambig_text"] = 251000,
["Title_language"] = 2600,
["Title_monthname"] = 41000,
["Title_number"] = 4400,
["Title_year"] = 264000,
["Title_year+1"] = 13000,
["Title_year-1"] = 3000,
["Title_year2range"] = 7900,
["Title_year2range-1"] = 6400,
["Title_year_range"] = 13000,
["Tl"] = 7270000,
["Tl2"] = 8900,
["Tlc"] = 909000,
["Tld"] = 253000,
["Tlf"] = 9700,
["Tlg"] = 22000,
["Tlit"] = 3200,
["Tlp"] = 70000,
["Tls"] = 52000,
["Tlsc"] = 20000,
["Tlsp"] = 2400,
["Tlu"] = 12000,
["Tlx"] = 2620000,
["Tlxs"] = 3400,
["Tmbox"] = 2400000,
["Tmpv"] = 50000,
["Tn"] = 8200,
["Tnull"] = 9000,
["To"] = 3000,
["To_USD"] = 2500,
["To_USD/CurrencyCheck"] = 2500,
["To_USD/General"] = 2200,
["To_be_announced"] = 7200,
["To_do"] = 7700,
["Toc_right"] = 2100,
["Tocright"] = 7300,
["Todo"] = 2700,
["Tomorrow"] = 7200,
["Tone"] = 7700,
["Tone-cmn"] = 2800,
["Toolbar"] = 349000,
["Toolforge"] = 12000,
["Tooltip"] = 563000,
["Tooltip/styles.css"] = 563000,
["Top-Class"] = 15000,
["Top-importance"] = 15000,
["Top_25_Report"] = 3900,
["Top_25_report"] = 6000,
["Top_icon"] = 84000,
["Totd"] = 4300,
["Totd_nav"] = 5400,
["Tp"] = 2600,
["Tpq"] = 3900,
["Tpr"] = 2900,
["Tps"] = 12000,
["Tpw"] = 3600,
["Tq"] = 172000,
["Tq2"] = 5700,
["Tqb"] = 5300,
["Tqq"] = 7400,
["Tquote"] = 2200,
["Track_gauge"] = 26000,
["Track_listing"] = 124000,
["Tracking_category"] = 5200,
["Tracklist"] = 15000,
["Trademark"] = 7800,
["Trademarked"] = 4300,
["Transclude"] = 18000,
["Transclude_lead_excerpt"] = 3700,
["Transcluded_section"] = 4700,
["Transclusionless"] = 5000,
["Translated"] = 25000,
["Translated_page"] = 114000,
["Translation"] = 20000,
["Translation/Base"] = 2400,
["Translation/Information"] = 2100,
["Translation/Summary"] = 2100,
["Transliteration"] = 69000,
["Tree_chart"] = 8400,
["Tree_chart/end"] = 8400,
["Tree_chart/start"] = 8400,
["Tree_list"] = 25000,
["Tree_list/end"] = 25000,
["Tree_list/styles.css"] = 25000,
["Trim"] = 2990000,
["Trim_%"] = 6700,
["Trim_brackets"] = 3600,
["Trim_leading"] = 2100,
["Trim_quotes"] = 26000,
["Trout"] = 2200,
["Tsh"] = 3300,
["Tsp"] = 2200,
["Tuesday"] = 2800,
["TuttoCalciatori"] = 2200,
["Twitter"] = 16000,
["Two-digit_year"] = 6000,
["TwoLegResult"] = 5800,
["TwoLegStart"] = 4600,
["TwoLeg_start"] = 5800,
["Module:TNT"] = 10000,
["Module:TableTools"] = 9590000,
["Module:Table_empty_cell"] = 33000,
["Module:Taxobox_ranks"] = 657000,
["Module:TaxonItalics"] = 656000,
["Module:TaxonList"] = 28000,
["Module:Taxonbar"] = 503000,
["Module:Taxonbar/candidate"] = 501000,
["Module:Taxonbar/conf"] = 503000,
["Module:Taxonbar/exists"] = 501000,
["Module:Taxonbar/whitelist"] = 503000,
["Module:Team_appearances_list"] = 17000,
["Module:Team_appearances_list/data"] = 17000,
["Module:Team_bracket"] = 55000,
["Module:Team_bracket_tracking"] = 3700,
["Module:Team_roster_navbox"] = 35000,
["Module:Television_episode_redirect_handler"] = 24000,
["Module:Television_episode_short_description"] = 35000,
["Module:Television_infoboxes_disambiguation_check"] = 72000,
["Module:TemplatePar"] = 33000,
["Module:TemplateStyles"] = 598000,
["Module:Template_invocation"] = 3200,
["Module:Template_link_general"] = 3790000,
["Module:Template_parameter_value"] = 12100000,
["Module:Template_redirect_regex"] = 1460000,
["Module:Template_test_case"] = 3300,
["Module:Template_test_case/config"] = 3300,
["Module:Template_test_case/data"] = 3300,
["Module:Template_wrapper"] = 1080000,
["Module:Tennis_events_nav"] = 22000,
["Module:Text"] = 2110000,
["Module:Text/data"] = 53000,
["Module:Tfd_links"] = 6900,
["Module:Time"] = 4500,
["Module:Time/data"] = 4500,
["Module:Time_ago"] = 192000,
["Module:Title_monthname"] = 41000,
["Module:Toolbar"] = 1510000,
["Module:Top_25_report"] = 5900,
["Module:Track_gauge"] = 26000,
["Module:Track_gauge/data"] = 26000,
["Module:Track_listing"] = 124000,
["Module:Track_listing/configuration"] = 124000,
["Module:Track_listing/styles.css"] = 124000,
["Module:Transclusion_count"] = 64000,
["Module:Transclusion_count/data/A"] = 3700,
["Module:Transclusion_count/data/B"] = 2800,
["Module:Transclusion_count/data/C"] = 12000,
["Module:Transclusion_count/data/E"] = 2400,
["Module:Transclusion_count/data/G"] = 2000,
["Module:Transclusion_count/data/I"] = 3300,
["Module:Transclusion_count/data/M"] = 3200,
["Module:Transclusion_count/data/N"] = 2800,
["Module:Transclusion_count/data/P"] = 2900,
["Module:Transclusion_count/data/S"] = 5000,
["Module:Transclusion_count/data/T"] = 2600,
["Module:Transclusion_count/data/U"] = 2600,
["Module:Transclusion_count/data/W"] = 3700,
["Module:Transclusion_count/data/other"] = 2200,
["Module:Tree_chart"] = 8400,
["Module:Tree_chart/data"] = 8400,
["Module:Trim_quotes"] = 68000,
["Module:TwitterSnowflake"] = 48000,
["Module:Type_in_location"] = 137000,
}
5vzfrul03393vqwlnxl3mn5r9fsk7y0
10432
10431
2026-08-24T13:15:13Z
RAPTOR7762
18
1 revision imported from [[:en:Module:Transclusion_count/data/T]]
10431
Scribunto
text/plain
return {
["T"] = 324000,
["T1"] = 9000,
["T:TDYK"] = 2700,
["TAFI/Picture_box"] = 2800,
["TBA"] = 6500,
["TCH"] = 2300,
["TCMDb_name"] = 2700,
["TCMDb_title"] = 15000,
["TDMCA"] = 23000,
["TERYT"] = 53000,
["TFAFULL"] = 14000,
["TFAIMAGE"] = 3000,
["TFA_footer"] = 9700,
["TFAfooter"] = 9700,
["TFArecentlist"] = 5400,
["THA"] = 4500,
["TOC_bottom"] = 86000,
["TOC_left"] = 3100,
["TOC_left/styles.css"] = 3100,
["TOC_limit"] = 24000,
["TOC_limit/styles.css"] = 26000,
["TOC_right"] = 51000,
["TOC_right/styles.css"] = 51000,
["TOC_top"] = 86000,
["TOC_top/styles.css"] = 86000,
["TOClimit"] = 3100,
["TOCright"] = 7500,
["TPE"] = 2500,
["TUN"] = 2300,
["TUR"] = 8100,
["TWA/Logo/3"] = 74000,
["TWA/Navigation2"] = 5200,
["TWA_nav_inner_black"] = 38000,
["Tab"] = 6700,
["Tab/Number_of_defined_parameters"] = 6700,
["Tab/styles.css"] = 6700,
["TableTBA"] = 3100,
["Table_alignment"] = 19000,
["Table_alignment/styles.css"] = 19000,
["Tag"] = 7300,
["Talk"] = 4300,
["Talk_Header"] = 5600,
["Talk_archive"] = 45000,
["Talk_archive_navigation"] = 20000,
["Talk_header"] = 846000,
["Talk_header/archivebotparse"] = 115000,
["Talk_header/styles.css"] = 846000,
["Talk_other"] = 4540000,
["Talk_page"] = 8100,
["Talk_page_header"] = 4700,
["Talk_page_of_a_redirect"] = 4200,
["Talk_page_of_redirect"] = 36000,
["Talk_page_stalker"] = 13000,
["Talk_page_watcher"] = 3700,
["Talk_quote"] = 2500,
["Talk_quote_block"] = 22000,
["Talk_quote_block/styles.css"] = 22000,
["Talk_quote_inline"] = 176000,
["Talk_quote_inline/styles.css"] = 176000,
["Talk_quote_inline_with_italics"] = 2800,
["Talk_quote_inline_with_quotes"] = 7400,
["Talkarchive"] = 117000,
["Talkarchivenav"] = 31000,
["Talkback"] = 65000,
["Talkheader"] = 119000,
["Talkpage"] = 5800,
["Talkquote"] = 9200,
["Talkref"] = 3500,
["Talkspace_detect"] = 557000,
["Tallyho"] = 2300,
["Tan"] = 5200,
["Task_force_assessment_category"] = 3100,
["Task_force_assessment_category/core"] = 3100,
["Tasks"] = 939000,
["Taxobox"] = 3400,
["Taxobox/Error_colour"] = 506000,
["Taxobox/core"] = 506000,
["Taxobox/core/styles.css"] = 506000,
["Taxobox/species"] = 200000,
["Taxobox_colour"] = 657000,
["Taxon_author"] = 6300,
["Taxon_info"] = 547000,
["Taxon_italics"] = 395000,
["Taxonbar"] = 503000,
["Taxonbar/candidate"] = 501000,
["Taxonomy"] = 401000,
["Taxonomy/Acalyptratae"] = 6700,
["Taxonomy/Acanthomorpha"] = 17000,
["Taxonomy/Acanthopterygii"] = 17000,
["Taxonomy/Acrididea"] = 2100,
["Taxonomy/Actinomycetes"] = 2600,
["Taxonomy/Actinomycetota"] = 2800,
["Taxonomy/Actinopteri"] = 32000,
["Taxonomy/Actinopterygii"] = 33000,
["Taxonomy/Aculeata"] = 10000,
["Taxonomy/Adephaga"] = 14000,
["Taxonomy/Afrophidia"] = 4500,
["Taxonomy/Agaricales"] = 3600,
["Taxonomy/Agaricomycetes"] = 7200,
["Taxonomy/Agaricomycetidae"] = 4600,
["Taxonomy/Agaricomycotina"] = 7500,
["Taxonomy/Alethinophidia"] = 4700,
["Taxonomy/Allotriocarida"] = 266000,
["Taxonomy/Alphaproteobacteria"] = 2100,
["Taxonomy/Amastigomycota"] = 24000,
["Taxonomy/Ambulacraria"] = 3100,
["Taxonomy/Ammonoidea"] = 2400,
["Taxonomy/Amniota"] = 64000,
["Taxonomy/Amorphea"] = 517000,
["Taxonomy/Amphibia"] = 9100,
["Taxonomy/Amphiesmenoptera"] = 117000,
["Taxonomy/Angiosperms"] = 104000,
["Taxonomy/Animalia"] = 492000,
["Taxonomy/Antennoclypeata"] = 3200,
["Taxonomy/Anthophila"] = 4600,
["Taxonomy/Anthozoa"] = 2200,
["Taxonomy/Antliophora"] = 24000,
["Taxonomy/Anura"] = 7800,
["Taxonomy/Aparaglossata"] = 224000,
["Taxonomy/Apiales"] = 2200,
["Taxonomy/Apo-Chiroptera"] = 2000,
["Taxonomy/Apocrita"] = 14000,
["Taxonomy/Apoditrysia"] = 107000,
["Taxonomy/Apoidea"] = 5200,
["Taxonomy/Arachnida"] = 26000,
["Taxonomy/Arachnopulmonata"] = 19000,
["Taxonomy/Araneae"] = 18000,
["Taxonomy/Araneoidea"] = 3000,
["Taxonomy/Araneomorphae"] = 16000,
["Taxonomy/Archaeplastida"] = 113000,
["Taxonomy/Archelosauria"] = 7200,
["Taxonomy/Archosauria"] = 25000,
["Taxonomy/Archosauria/skip"] = 19000,
["Taxonomy/Archosauriformes"] = 5300,
["Taxonomy/Archosauromorpha"] = 5500,
["Taxonomy/Arctiinae"] = 11000,
["Taxonomy/Arctiini"] = 5200,
["Taxonomy/Arthropoda"] = 307000,
["Taxonomy/Artiodactyla"] = 2700,
["Taxonomy/Artiofabula"] = 2400,
["Taxonomy/Artiopoda"] = 2300,
["Taxonomy/Aschiza"] = 2500,
["Taxonomy/Ascomycota"] = 16000,
["Taxonomy/Asilomorpha"] = 3400,
["Taxonomy/Asparagales"] = 12000,
["Taxonomy/Asteraceae"] = 8600,
["Taxonomy/Asterales"] = 9900,
["Taxonomy/Asterids"] = 31000,
["Taxonomy/Asteroideae"] = 6600,
["Taxonomy/Auchenorrhyncha"] = 4000,
["Taxonomy/Australaves"] = 11000,
["Taxonomy/Avemetatarsalia"] = 5100,
["Taxonomy/Avemetatarsalia/skip"] = 19000,
["Taxonomy/Aves"] = 19000,
["Taxonomy/Avicularioidea"] = 2300,
["Taxonomy/BOP_clade"] = 2300,
["Taxonomy/Bacillati"] = 5700,
["Taxonomy/Bacillota"] = 2300,
["Taxonomy/Bacteria"] = 14000,
["Taxonomy/Basidiomycota"] = 8300,
["Taxonomy/Batrachia"] = 8800,
["Taxonomy/Batrachomorpha"] = 9100,
["Taxonomy/Bilateria"] = 486000,
["Taxonomy/Bivalvia"] = 2800,
["Taxonomy/Bombycoidea"] = 3800,
["Taxonomy/Boreoeutheria"] = 16000,
["Taxonomy/Brachycera"] = 20000,
["Taxonomy/Brachyura"] = 2000,
["Taxonomy/Bromeliaceae"] = 2300,
["Taxonomy/Buccinoidea"] = 2500,
["Taxonomy/CAM"] = 113000,
["Taxonomy/Caelifera"] = 2200,
["Taxonomy/Caenogastropoda"] = 25000,
["Taxonomy/Caenophidia"] = 4300,
["Taxonomy/Caesalpinioideae"] = 2200,
["Taxonomy/Calyptratae"] = 5600,
["Taxonomy/Campanulids"] = 13000,
["Taxonomy/Carabidae"] = 11000,
["Taxonomy/Caraboidea"] = 12000,
["Taxonomy/Carnivoramorpha"] = 2000,
["Taxonomy/Caryophyllales"] = 5600,
["Taxonomy/Cassidinae"] = 3900,
["Taxonomy/Cephalopoda"] = 5000,
["Taxonomy/Cerambycidae"] = 29000,
["Taxonomy/Cerambycinae"] = 6200,
["Taxonomy/Cetruminantia"] = 2200,
["Taxonomy/Chelicerata"] = 27000,
["Taxonomy/Chiroptera"] = 2000,
["Taxonomy/Choanozoa"] = 492000,
["Taxonomy/Chondrichthyes"] = 2700,
["Taxonomy/Chordata"] = 113000,
["Taxonomy/Chrysomelidae"] = 7500,
["Taxonomy/Chrysomeloidea"] = 37000,
["Taxonomy/Cicadomorpha"] = 2800,
["Taxonomy/Cimicomorpha"] = 2200,
["Taxonomy/Clupeocephala"] = 30000,
["Taxonomy/Cnidaria"] = 3800,
["Taxonomy/Coccinellidae"] = 2600,
["Taxonomy/Coccinellinae"] = 2000,
["Taxonomy/Coccinelloidea"] = 3000,
["Taxonomy/Coelolepida"] = 116000,
["Taxonomy/Coleoptera"] = 82000,
["Taxonomy/Coleopterida"] = 82000,
["Taxonomy/Colubridae"] = 2700,
["Taxonomy/Colubroidea"] = 2700,
["Taxonomy/Colubroides"] = 4300,
["Taxonomy/Commelinids"] = 12000,
["Taxonomy/Conchifera"] = 5300,
["Taxonomy/Condylognatha"] = 12000,
["Taxonomy/Conoidea"] = 7300,
["Taxonomy/Core_eudicots"] = 70000,
["Taxonomy/Cosmopterigidae"] = 2100,
["Taxonomy/Cossoidea"] = 2800,
["Taxonomy/Crambidae"] = 12000,
["Taxonomy/Crambinae"] = 2300,
["Taxonomy/Crocopoda"] = 5400,
["Taxonomy/Ctenosquamata"] = 18000,
["Taxonomy/Cucujiformia"] = 49000,
["Taxonomy/Curculionidae"] = 3200,
["Taxonomy/Curculionoidea"] = 3900,
["Taxonomy/Cyclorrhapha"] = 12000,
["Taxonomy/Cyperaceae"] = 2600,
["Taxonomy/Cypriniformes"] = 5100,
["Taxonomy/Cypriniphysi"] = 5100,
["Taxonomy/Cyprinoidei"] = 3900,
["Taxonomy/Decapoda"] = 4300,
["Taxonomy/Dendrobiinae"] = 2100,
["Taxonomy/Depressariidae"] = 3100,
["Taxonomy/Deuteropoda"] = 307000,
["Taxonomy/Deuterostomia"] = 116000,
["Taxonomy/Diaphoretickes"] = 117000,
["Taxonomy/Diaphoretickes/showdomain"] = 5100,
["Taxonomy/Diapsida"] = 25000,
["Taxonomy/Dicondylia"] = 263000,
["Taxonomy/Dictyoptera"] = 2400,
["Taxonomy/Dikarya"] = 24000,
["Taxonomy/Dinosauria"] = 4300,
["Taxonomy/Dinosauria/skip"] = 19000,
["Taxonomy/Dinosauromorpha"] = 4300,
["Taxonomy/Diptera"] = 24000,
["Taxonomy/Ditrysia"] = 113000,
["Taxonomy/Doryloformicia"] = 2900,
["Taxonomy/Dothideomyceta"] = 9700,
["Taxonomy/Dothideomycetes"] = 2700,
["Taxonomy/Ecdysozoa"] = 310000,
["Taxonomy/Echinodermata"] = 2800,
["Taxonomy/Elasmobranchii"] = 2200,
["Taxonomy/Elateriformia"] = 3800,
["Taxonomy/Elementaves"] = 2100,
["Taxonomy/Elpistostegalia"] = 74000,
["Taxonomy/Embryophytes"] = 110000,
["Taxonomy/Embryophytes/Plantae"] = 110000,
["Taxonomy/Ennominae"] = 2700,
["Taxonomy/Ensifera"] = 2200,
["Taxonomy/Entelegynae"] = 8100,
["Taxonomy/Eotetrapodiformes"] = 74000,
["Taxonomy/Epidendroideae"] = 5500,
["Taxonomy/Erebidae"] = 17000,
["Taxonomy/Eremoneura"] = 12000,
["Taxonomy/Ericales"] = 4200,
["Taxonomy/Euarchontoglires"] = 6300,
["Taxonomy/Eucarida"] = 4400,
["Taxonomy/Eucrocopoda"] = 5200,
["Taxonomy/Eudicots"] = 74000,
["Taxonomy/Eufalconimorphae"] = 11000,
["Taxonomy/Euformicia"] = 3200,
["Taxonomy/Eugnathostomata"] = 111000,
["Taxonomy/Eukaryota"] = 635000,
["Taxonomy/Eukaryota/displayed"] = 6400,
["Taxonomy/Eulepidoptera"] = 114000,
["Taxonomy/Eumalacostraca"] = 6900,
["Taxonomy/Eumetabola"] = 251000,
["Taxonomy/Eumetazoa"] = 490000,
["Taxonomy/Eupasseres"] = 9800,
["Taxonomy/Eupercaria"] = 5700,
["Taxonomy/Euphyllophytes"] = 2000,
["Taxonomy/Eupitheciini"] = 2000,
["Taxonomy/Eupulmonata"] = 6300,
["Taxonomy/Eureptilia"] = 25000,
["Taxonomy/Eurypterygii"] = 18000,
["Taxonomy/Euselachii"] = 2300,
["Taxonomy/Euteleostei"] = 19000,
["Taxonomy/Eutheria"] = 17000,
["Taxonomy/Euthyneura"] = 13000,
["Taxonomy/Euungulata"] = 4000,
["Taxonomy/Fabaceae"] = 6800,
["Taxonomy/Fabales"] = 7100,
["Taxonomy/Fabids"] = 18000,
["Taxonomy/Faboideae"] = 4000,
["Taxonomy/Ferae"] = 2400,
["Taxonomy/Ferungulata"] = 6400,
["Taxonomy/Filozoa"] = 492000,
["Taxonomy/Formicidae"] = 3300,
["Taxonomy/Formicoidea"] = 3300,
["Taxonomy/Fungi"] = 25000,
["Taxonomy/Gamasina"] = 2300,
["Taxonomy/Gammaproteobacteria"] = 2000,
["Taxonomy/Gastropoda"] = 44000,
["Taxonomy/Gekkonoidea"] = 2200,
["Taxonomy/Gekkonomorpha"] = 2600,
["Taxonomy/Gekkota"] = 2600,
["Taxonomy/Gelechiidae"] = 6100,
["Taxonomy/Gelechiinae"] = 3000,
["Taxonomy/Gelechioidea"] = 19000,
["Taxonomy/Gentianales"] = 5000,
["Taxonomy/Geometridae"] = 11000,
["Taxonomy/Geometroidea"] = 11000,
["Taxonomy/Glires"] = 4600,
["Taxonomy/Gliriformes"] = 4600,
["Taxonomy/Glossata"] = 116000,
["Taxonomy/Gnathostomata"] = 111000,
["Taxonomy/Gracillariidae"] = 2200,
["Taxonomy/Gracillarioidea"] = 2500,
["Taxonomy/Graminid_clade"] = 4100,
["Taxonomy/Halvaria"] = 3000,
["Taxonomy/Helicina_(suborder)"] = 5500,
["Taxonomy/Hemiptera"] = 10000,
["Taxonomy/Hesperiidae"] = 2700,
["Taxonomy/Heterobranchia"] = 13000,
["Taxonomy/Heteroneura"] = 115000,
["Taxonomy/Heteroptera"] = 5100,
["Taxonomy/Hexapoda"] = 265000,
["Taxonomy/Holometabola"] = 238000,
["Taxonomy/Holomycota"] = 25000,
["Taxonomy/Holozoa"] = 492000,
["Taxonomy/Hyloidea"] = 3600,
["Taxonomy/Hymenoptera"] = 14000,
["Taxonomy/Hymenopterida"] = 14000,
["Taxonomy/Iguania"] = 2500,
["Taxonomy/Iguanomorpha"] = 2500,
["Taxonomy/Insecta"] = 264000,
["Taxonomy/Lamiales"] = 6900,
["Taxonomy/Lamiids"] = 14000,
["Taxonomy/Lamiinae"] = 21000,
["Taxonomy/Larentiinae"] = 3700,
["Taxonomy/Laurasiatheria"] = 9200,
["Taxonomy/Lecanoromycetes"] = 4700,
["Taxonomy/Lecanoromycetidae"] = 3200,
["Taxonomy/Leotiomyceta"] = 14000,
["Taxonomy/Lepidoptera"] = 116000,
["Taxonomy/Lepidosauria"] = 15000,
["Taxonomy/Lepidosauromorpha"] = 15000,
["Taxonomy/Life"] = 653000,
["Taxonomy/Linyphiidae"] = 2100,
["Taxonomy/Lissamphibia"] = 9100,
["Taxonomy/Lithosiini"] = 3600,
["Taxonomy/Littorinimorpha"] = 5800,
["Taxonomy/Lophotrochozoa"] = 57000,
["Taxonomy/Lycaenidae"] = 4100,
["Taxonomy/Macroheterocera"] = 43000,
["Taxonomy/Magnoliids"] = 2900,
["Taxonomy/Malacostraca"] = 7100,
["Taxonomy/Malaxideae"] = 2200,
["Taxonomy/Malpighiales"] = 4900,
["Taxonomy/Malvales"] = 2700,
["Taxonomy/Malvids"] = 13000,
["Taxonomy/Mammalia"] = 19000,
["Taxonomy/Mammalia/skip"] = 19000,
["Taxonomy/Mandibulata"] = 278000,
["Taxonomy/Melolonthinae"] = 3000,
["Taxonomy/Meso-Papilionoideae"] = 3800,
["Taxonomy/Mesostigmata"] = 2800,
["Taxonomy/Mollusca"] = 52000,
["Taxonomy/Monocots"] = 27000,
["Taxonomy/Monogynaspida"] = 2500,
["Taxonomy/Multicrustacea"] = 8700,
["Taxonomy/Muricidae"] = 2200,
["Taxonomy/Muricoidea"] = 2200,
["Taxonomy/Muroidea"] = 2600,
["Taxonomy/Muscomorpha"] = 15000,
["Taxonomy/Mygalomorphae"] = 2400,
["Taxonomy/Myoglossata"] = 116000,
["Taxonomy/Myomorpha"] = 2700,
["Taxonomy/Myriapoda"] = 2400,
["Taxonomy/Myrtaceae"] = 3100,
["Taxonomy/Myrtales"] = 4600,
["Taxonomy/Myrtoideae"] = 3100,
["Taxonomy/Nematocera"] = 3300,
["Taxonomy/Neoaves"] = 17000,
["Taxonomy/Neobatrachia"] = 6800,
["Taxonomy/Neocephalopoda"] = 3900,
["Taxonomy/Neodiapsida"] = 24000,
["Taxonomy/Neogastropoda"] = 16000,
["Taxonomy/Neognathae"] = 18000,
["Taxonomy/Neolepidoptera"] = 116000,
["Taxonomy/Neoptera"] = 259000,
["Taxonomy/Neopterygii"] = 32000,
["Taxonomy/Neoreptilia"] = 25000,
["Taxonomy/Neoteleostei"] = 18000,
["Taxonomy/Nephrozoa"] = 486000,
["Taxonomy/Neuropteroidea"] = 83000,
["Taxonomy/Noctuidae"] = 8400,
["Taxonomy/Noctuinae"] = 2800,
["Taxonomy/Noctuoidea"] = 27000,
["Taxonomy/Non-protein_amino_acid-accumulating_clade"] = 2700,
["Taxonomy/Nudibranchia"] = 2700,
["Taxonomy/Nudipleura"] = 2700,
["Taxonomy/Nymphalidae"] = 4300,
["Taxonomy/Obazoa"] = 517000,
["Taxonomy/Obtectomera"] = 73000,
["Taxonomy/Odonata"] = 3100,
["Taxonomy/Odonatoptera"] = 3100,
["Taxonomy/Oestroidea"] = 5000,
["Taxonomy/Olfactores"] = 112000,
["Taxonomy/Ophidia"] = 5200,
["Taxonomy/Opisthokonta"] = 517000,
["Taxonomy/Opisthothelae"] = 18000,
["Taxonomy/Orchidaceae"] = 8100,
["Taxonomy/Orchidoideae"] = 2300,
["Taxonomy/Ornithodira"] = 5000,
["Taxonomy/Ornithurae"] = 19000,
["Taxonomy/Ornithurae/skip"] = 19000,
["Taxonomy/Orthoptera"] = 4400,
["Taxonomy/Ostariophysi"] = 10000,
["Taxonomy/Osteichthyes"] = 108000,
["Taxonomy/Otocephala"] = 11000,
["Taxonomy/Otophysi"] = 10000,
["Taxonomy/Ovalentaria"] = 5000,
["Taxonomy/Palaeoptera"] = 3800,
["Taxonomy/Pan-Carnivora"] = 2200,
["Taxonomy/Pan-Euteleostei"] = 19000,
["Taxonomy/Pan-Euungulata"] = 4100,
["Taxonomy/Panarthropoda"] = 307000,
["Taxonomy/Pancrustacea"] = 275000,
["Taxonomy/Panorpida"] = 141000,
["Taxonomy/Panpulmonata"] = 8600,
["Taxonomy/Pantetrapulmonata"] = 19000,
["Taxonomy/Papilionoidea"] = 13000,
["Taxonomy/ParaHoxozoa"] = 490000,
["Taxonomy/Parapleurota"] = 25000,
["Taxonomy/Parasitiformes"] = 3100,
["Taxonomy/Paraxonia"] = 2800,
["Taxonomy/Passerea"] = 13000,
["Taxonomy/Passeri"] = 7800,
["Taxonomy/Passerida"] = 3500,
["Taxonomy/Passerides"] = 5900,
["Taxonomy/Passeriformes"] = 9800,
["Taxonomy/Pentatomomorpha"] = 2300,
["Taxonomy/Peracarida"] = 2500,
["Taxonomy/Perciformes"] = 2800,
["Taxonomy/Percomorpha"] = 16000,
["Taxonomy/Pezizomycotina"] = 15000,
["Taxonomy/Phycitinae"] = 2600,
["Taxonomy/Phytophaga"] = 41000,
["Taxonomy/Placentalia"] = 17000,
["Taxonomy/Plantae"] = 112000,
["Taxonomy/Planulozoa"] = 3800,
["Taxonomy/Platyhelminthes"] = 2700,
["Taxonomy/Pleocyemata"] = 4100,
["Taxonomy/Poaceae"] = 4100,
["Taxonomy/Poales"] = 9400,
["Taxonomy/Podiata"] = 517000,
["Taxonomy/Polyneoptera"] = 8600,
["Taxonomy/Polyphaga"] = 68000,
["Taxonomy/Polypodiophyta"] = 2000,
["Taxonomy/Polypodiopsida"] = 2000,
["Taxonomy/Polysporangiophytes"] = 108000,
["Taxonomy/Polysporangiophytes/Plantae"] = 108000,
["Taxonomy/Proteales"] = 2000,
["Taxonomy/Protostomia"] = 370000,
["Taxonomy/Pseudomonadati"] = 8100,
["Taxonomy/Pseudomonadota"] = 5000,
["Taxonomy/Psittacopasseres"] = 11000,
["Taxonomy/Pteropliini"] = 2300,
["Taxonomy/Pterygota"] = 263000,
["Taxonomy/Pyralidae"] = 4500,
["Taxonomy/Pyraloidea"] = 16000,
["Taxonomy/Pyramidellidae"] = 2200,
["Taxonomy/Pyramidelloidea"] = 2200,
["Taxonomy/RTA_clade"] = 4400,
["Taxonomy/Ranoidea"] = 2900,
["Taxonomy/Reptantia"] = 3400,
["Taxonomy/Reptilia"] = 25000,
["Taxonomy/Reptiliomorpha"] = 64000,
["Taxonomy/Rhabditophora"] = 2700,
["Taxonomy/Rhipidistia"] = 75000,
["Taxonomy/Ringipleura"] = 2800,
["Taxonomy/Rodentia"] = 4400,
["Taxonomy/Romeriida"] = 25000,
["Taxonomy/Rosales"] = 3300,
["Taxonomy/Rosids"] = 31000,
["Taxonomy/Rouphozoa"] = 2800,
["Taxonomy/Rubiaceae"] = 2600,
["Taxonomy/Saccharomyceta"] = 15000,
["Taxonomy/Salientia"] = 7800,
["Taxonomy/Salticidae"] = 2900,
["Taxonomy/Salticinae"] = 2600,
["Taxonomy/Sapindales"] = 3300,
["Taxonomy/Sar"] = 4000,
["Taxonomy/Sarcopterygii"] = 75000,
["Taxonomy/Sauria"] = 23000,
["Taxonomy/Saurischia"] = 2900,
["Taxonomy/Sauropsida"] = 43000,
["Taxonomy/Scarabaeidae"] = 10000,
["Taxonomy/Scarabaeiformia"] = 11000,
["Taxonomy/Scarabaeoidea"] = 11000,
["Taxonomy/Schizophora"] = 12000,
["Taxonomy/Scincidae"] = 2100,
["Taxonomy/Scincomorpha"] = 2400,
["Taxonomy/Scrotifera"] = 8500,
["Taxonomy/Sericinae"] = 3900,
["Taxonomy/Sericini"] = 3600,
["Taxonomy/Serpentes"] = 5200,
["Taxonomy/Setaphyta"] = 2100,
["Taxonomy/Siluriformes"] = 3600,
["Taxonomy/Simplicidentata"] = 4400,
["Taxonomy/Sordariomyceta"] = 4600,
["Taxonomy/Sordariomycetes"] = 2900,
["Taxonomy/Spermatophyta"] = 106000,
["Taxonomy/Spermatophytes/Plantae"] = 106000,
["Taxonomy/Spilomelinae"] = 4300,
["Taxonomy/Spiralia"] = 60000,
["Taxonomy/Squamata"] = 15000,
["Taxonomy/Staphyliniformia"] = 3000,
["Taxonomy/Staphylinoidea"] = 2200,
["Taxonomy/Stegocephali"] = 74000,
["Taxonomy/Stylommatophora"] = 6000,
["Taxonomy/Superasterids"] = 38000,
["Taxonomy/Superrosids"] = 32000,
["Taxonomy/Syrphidae"] = 2100,
["Taxonomy/Syrphoidea"] = 2300,
["Taxonomy/TSAR"] = 4000,
["Taxonomy/Tachinidae"] = 4400,
["Taxonomy/Tectipleura"] = 9800,
["Taxonomy/Teleocephala"] = 30000,
["Taxonomy/Teleostei"] = 32000,
["Taxonomy/Teleosteomorpha"] = 32000,
["Taxonomy/Telluraves"] = 13000,
["Taxonomy/Tenebrionoidea"] = 3400,
["Taxonomy/Tephritidae"] = 3300,
["Taxonomy/Tephritinae"] = 2400,
["Taxonomy/Tephritoidea"] = 4300,
["Taxonomy/Tetrapoda"] = 74000,
["Taxonomy/Tetrapodomorpha"] = 74000,
["Taxonomy/Tetrapulmonata"] = 19000,
["Taxonomy/Theria"] = 18000,
["Taxonomy/Theria/skip"] = 18000,
["Taxonomy/Theropoda/skip"] = 19000,
["Taxonomy/Tortricidae"] = 8500,
["Taxonomy/Tortricinae"] = 5900,
["Taxonomy/Tortricoidea"] = 8500,
["Taxonomy/Toxicofera"] = 8400,
["Taxonomy/Tracheophyta"] = 108000,
["Taxonomy/Tracheophytes/Plantae"] = 108000,
["Taxonomy/Trilobita"] = 2200,
["Taxonomy/Trilobitomorpha"] = 2300,
["Taxonomy/Trochida"] = 2800,
["Taxonomy/Trochoidea"] = 2800,
["Taxonomy/Tyranni"] = 2000,
["Taxonomy/Unicalcarida"] = 14000,
["Taxonomy/Vertebrata"] = 112000,
["Taxonomy/Vetigastropoda"] = 4900,
["Taxonomy/Virus"] = 2900,
["Taxonomy/crown_Formicidae"] = 3200,
["Taxonomy_key"] = 150000,
["Taxonomy_preload"] = 150000,
["Tb"] = 13000,
["Team_roster_navbox"] = 34000,
["Technical"] = 4100,
["Technically_indistinguishable"] = 2500,
["Television_debuts_endings_antonym"] = 7200,
["Television_episode_redirect_handler"] = 24000,
["Television_episode_short_description"] = 13000,
["Template"] = 4700,
["Template-Class"] = 14000,
["TemplateData_header"] = 18000,
["Template_category"] = 36000,
["Template_display"] = 57000,
["Template_for_discussion/dated"] = 16000,
["Template_for_discussion/styles.css"] = 37000,
["Template_for_merging/dated"] = 21000,
["Template_link"] = 7560000,
["Template_link_code"] = 1160000,
["Template_link_code_with_subst"] = 20000,
["Template_link_expanded"] = 2630000,
["Template_link_expanded_with_subst"] = 5100,
["Template_link_general"] = 24000,
["Template_link_interwiki"] = 9000,
["Template_link_null"] = 9200,
["Template_link_universal"] = 12000,
["Template_link_with_alternate_text"] = 2200,
["Template_link_with_link_off"] = 9800,
["Template_link_with_linked_braces"] = 8200,
["Template_link_with_parameters"] = 70000,
["Template_link_with_subst"] = 54000,
["Template_links"] = 2500,
["Template_other"] = 4970000,
["Template_parameter_usage"] = 20000,
["Template_parameter_value"] = 51000,
["Template_rating"] = 2600,
["Template_reference_list"] = 7400,
["Template_sandbox_notice"] = 6500,
["Template_shortcut"] = 6500,
["TennisEventInfo"] = 6800,
["TennisEvents"] = 2200,
["Tennis_events"] = 13000,
["Tennis_icon"] = 2800,
["Tennis_icon2"] = 2800,
["Tennis_record"] = 3000,
["Terminate_sentence"] = 53000,
["Testcases_notice"] = 5100,
["Text_diff"] = 3500,
["Tfd_links"] = 6900,
["Th/abp"] = 115000,
["Thank"] = 2400,
["Thank_you"] = 5400,
["The_edit-summary_field"] = 8900,
["The_edit-summary_field/OOUI"] = 2400,
["Their"] = 15000,
["They"] = 11000,
["They_have"] = 39000,
["Thin_space"] = 29000,
["Thinsp"] = 26000,
["Third-party"] = 6700,
["Thirteen_Colonies_article_name"] = 2100,
["This_is_a_new_user"] = 7000,
["Thursday"] = 2800,
["Tick"] = 81000,
["Ticket_confirmation"] = 3200,
["Time"] = 2800,
["Time_ago"] = 185000,
["Time_signature"] = 3300,
["Time_with_time_zone_link"] = 4300,
["Title_case"] = 5800,
["Title_century"] = 31000,
["Title_country"] = 42000,
["Title_decade"] = 31000,
["Title_demonym"] = 39000,
["Title_disambig_text"] = 251000,
["Title_language"] = 2600,
["Title_monthname"] = 41000,
["Title_number"] = 4400,
["Title_year"] = 264000,
["Title_year+1"] = 13000,
["Title_year-1"] = 3000,
["Title_year2range"] = 7900,
["Title_year2range-1"] = 6400,
["Title_year_range"] = 13000,
["Tl"] = 7270000,
["Tl2"] = 8900,
["Tlc"] = 909000,
["Tld"] = 253000,
["Tlf"] = 9700,
["Tlg"] = 22000,
["Tlit"] = 3200,
["Tlp"] = 70000,
["Tls"] = 52000,
["Tlsc"] = 20000,
["Tlsp"] = 2400,
["Tlu"] = 12000,
["Tlx"] = 2620000,
["Tlxs"] = 3400,
["Tmbox"] = 2400000,
["Tmpv"] = 50000,
["Tn"] = 8200,
["Tnull"] = 9000,
["To"] = 3000,
["To_USD"] = 2500,
["To_USD/CurrencyCheck"] = 2500,
["To_USD/General"] = 2200,
["To_be_announced"] = 7200,
["To_do"] = 7700,
["Toc_right"] = 2100,
["Tocright"] = 7300,
["Todo"] = 2700,
["Tomorrow"] = 7200,
["Tone"] = 7700,
["Tone-cmn"] = 2800,
["Toolbar"] = 349000,
["Toolforge"] = 12000,
["Tooltip"] = 563000,
["Tooltip/styles.css"] = 563000,
["Top-Class"] = 15000,
["Top-importance"] = 15000,
["Top_25_Report"] = 3900,
["Top_25_report"] = 6000,
["Top_icon"] = 84000,
["Totd"] = 4300,
["Totd_nav"] = 5400,
["Tp"] = 2600,
["Tpq"] = 3900,
["Tpr"] = 2900,
["Tps"] = 12000,
["Tpw"] = 3600,
["Tq"] = 172000,
["Tq2"] = 5700,
["Tqb"] = 5300,
["Tqq"] = 7400,
["Tquote"] = 2200,
["Track_gauge"] = 26000,
["Track_listing"] = 124000,
["Tracking_category"] = 5200,
["Tracklist"] = 15000,
["Trademark"] = 7800,
["Trademarked"] = 4300,
["Transclude"] = 18000,
["Transclude_lead_excerpt"] = 3700,
["Transcluded_section"] = 4700,
["Transclusionless"] = 5000,
["Translated"] = 25000,
["Translated_page"] = 114000,
["Translation"] = 20000,
["Translation/Base"] = 2400,
["Translation/Information"] = 2100,
["Translation/Summary"] = 2100,
["Transliteration"] = 69000,
["Tree_chart"] = 8400,
["Tree_chart/end"] = 8400,
["Tree_chart/start"] = 8400,
["Tree_list"] = 25000,
["Tree_list/end"] = 25000,
["Tree_list/styles.css"] = 25000,
["Trim"] = 2990000,
["Trim_%"] = 6700,
["Trim_brackets"] = 3600,
["Trim_leading"] = 2100,
["Trim_quotes"] = 26000,
["Trout"] = 2200,
["Tsh"] = 3300,
["Tsp"] = 2200,
["Tuesday"] = 2800,
["TuttoCalciatori"] = 2200,
["Twitter"] = 16000,
["Two-digit_year"] = 6000,
["TwoLegResult"] = 5800,
["TwoLegStart"] = 4600,
["TwoLeg_start"] = 5800,
["Module:TNT"] = 10000,
["Module:TableTools"] = 9590000,
["Module:Table_empty_cell"] = 33000,
["Module:Taxobox_ranks"] = 657000,
["Module:TaxonItalics"] = 656000,
["Module:TaxonList"] = 28000,
["Module:Taxonbar"] = 503000,
["Module:Taxonbar/candidate"] = 501000,
["Module:Taxonbar/conf"] = 503000,
["Module:Taxonbar/exists"] = 501000,
["Module:Taxonbar/whitelist"] = 503000,
["Module:Team_appearances_list"] = 17000,
["Module:Team_appearances_list/data"] = 17000,
["Module:Team_bracket"] = 55000,
["Module:Team_bracket_tracking"] = 3700,
["Module:Team_roster_navbox"] = 35000,
["Module:Television_episode_redirect_handler"] = 24000,
["Module:Television_episode_short_description"] = 35000,
["Module:Television_infoboxes_disambiguation_check"] = 72000,
["Module:TemplatePar"] = 33000,
["Module:TemplateStyles"] = 598000,
["Module:Template_invocation"] = 3200,
["Module:Template_link_general"] = 3790000,
["Module:Template_parameter_value"] = 12100000,
["Module:Template_redirect_regex"] = 1460000,
["Module:Template_test_case"] = 3300,
["Module:Template_test_case/config"] = 3300,
["Module:Template_test_case/data"] = 3300,
["Module:Template_wrapper"] = 1080000,
["Module:Tennis_events_nav"] = 22000,
["Module:Text"] = 2110000,
["Module:Text/data"] = 53000,
["Module:Tfd_links"] = 6900,
["Module:Time"] = 4500,
["Module:Time/data"] = 4500,
["Module:Time_ago"] = 192000,
["Module:Title_monthname"] = 41000,
["Module:Toolbar"] = 1510000,
["Module:Top_25_report"] = 5900,
["Module:Track_gauge"] = 26000,
["Module:Track_gauge/data"] = 26000,
["Module:Track_listing"] = 124000,
["Module:Track_listing/configuration"] = 124000,
["Module:Track_listing/styles.css"] = 124000,
["Module:Transclusion_count"] = 64000,
["Module:Transclusion_count/data/A"] = 3700,
["Module:Transclusion_count/data/B"] = 2800,
["Module:Transclusion_count/data/C"] = 12000,
["Module:Transclusion_count/data/E"] = 2400,
["Module:Transclusion_count/data/G"] = 2000,
["Module:Transclusion_count/data/I"] = 3300,
["Module:Transclusion_count/data/M"] = 3200,
["Module:Transclusion_count/data/N"] = 2800,
["Module:Transclusion_count/data/P"] = 2900,
["Module:Transclusion_count/data/S"] = 5000,
["Module:Transclusion_count/data/T"] = 2600,
["Module:Transclusion_count/data/U"] = 2600,
["Module:Transclusion_count/data/W"] = 3700,
["Module:Transclusion_count/data/other"] = 2200,
["Module:Tree_chart"] = 8400,
["Module:Tree_chart/data"] = 8400,
["Module:Trim_quotes"] = 68000,
["Module:TwitterSnowflake"] = 48000,
["Module:Type_in_location"] = 137000,
}
5vzfrul03393vqwlnxl3mn5r9fsk7y0
Tempilet:Bole Wikimedians User Group
10
1248
9552
2026-08-06T22:12:51Z
meta>RAPTOR7762
0
/* */
9552
wikitext
text/x-wiki
<noinclude><languages/>
</noinclude>{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Fulfulde_Wikimedia_Community_Logo.png|75px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Fulfulde Wikimedians User Group/Memberships|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Fulfulde Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Wikimedia_Fulfulde_Community/Reports/Annual_Report_2022|2022]] • [[Wikimedia_Fulfulde_Community/Reports/Annual_Report_2023|2023]] • [[Wikimedia_Fulfulde_Community/Reports/Annual_Report_2024|2024]] • [[Wikimedia_Fulfulde_Community/Reports/Annual_Report_2025|2025]] • [[Wikimedia_Fulfulde_Community/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Navbox|child
| listclass = hlist
| bodystyle = background: transparent; font-family: inherit; font-size: 12px;
| groupstyle = background: #edf2f7; color: #2d3748; font-weight: normal; border-right: none; padding: 1px 6px;
| liststyle = background: transparent; padding: 1px 6px;
| group1 = 2025
| list1 =
* [[Wikimedia_Fulfulde_Community_-_Annual_General_Meeting_2025|Jan]]
* [[Wikimedia_Fulfulde_Community_-_May_2025_Community_Meeting|May]]
* [[Wikimedia_Fulfulde_Community_-_September_2025_Community_Meeting|Sept]]
| group2 = 2026
| list2 =
* [[Wikimedia_Fulfulde_Community_-_January_2026_Community_Meeting|Jan]]
}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Wikimedia Fulfulde Community Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Wikimedia Fulfulde Community Gombe Network|<!--T:39--> Gombe Network]] • [[Special:MyLanguage/Fulfulde Wikimedia Wikidata Lexicographers Club|<!--T:41--> Wikidata Lexicographers]] • [[Special:MyLanguage/Fulfulde Wikimedia Commons Photographers Hub|<!--T:41--> Commons Photographers]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Fulfulde Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:Facebook icon.jpg|frameless|13px|alt={{Name|Facebook}}]] '''Wikimediafulah''' • [[File:X logo 2023.svg|frameless|13px|alt={{Name|Twitter}}]] '''Wikimediafulah''' • [[File:Instagram.svg|frameless|13px|alt={{Name|Instagram}}]] '''Wikimediafulah''' • [[File:Email-icon.png|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|fulfuldewikimediansusergroup|gmail.com}}'''
}}
1z46k0oaf1pfk5riznnek30wkaz71r5
9553
9552
2026-08-08T14:29:28Z
meta>RAPTOR7762
0
9553
wikitext
text/x-wiki
<noinclude><languages/>
</noinclude>{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group.svg|75px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimediams User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
92n4c3rjml0le3s5thr339nwlw47yze
9554
9553
2026-08-09T00:12:42Z
meta>RAPTOR7762
0
9554
wikitext
text/x-wiki
#REDIRECT[[]]<noinclude><languages/>
</noinclude>{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group.svg|75px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimediams User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
f3tlttwijcdfph81l8rauoqh3fkkmj1
9555
9554
2026-08-09T00:13:09Z
meta>RAPTOR7762
0
9555
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group.svg|75px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimediams User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
m9yuc2y4tyct8d42cvp5vutbsyf9rsu
9556
9555
2026-08-09T00:13:35Z
meta>RAPTOR7762
0
9556
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|75px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimediams User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
sp9bzkafnikomdh7fn3u2zt5d23hp7p
9557
9556
2026-08-09T00:13:50Z
meta>RAPTOR7762
0
9557
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimediams User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
bnxjuwqtb4swk9jmtxmfhbpec08911j
9558
9557
2026-08-24T13:00:36Z
RAPTOR7762
18
6 revisions imported from [[:meta:Template:Bole_Wikimedians_User_Group/footer]]
9557
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimediams User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
bnxjuwqtb4swk9jmtxmfhbpec08911j
10395
9558
2026-08-24T13:02:56Z
RAPTOR7762
18
10395
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
jwzkb1notc7tcjinebi6u05docm7s44
10396
10395
2026-08-24T13:03:15Z
RAPTOR7762
18
Protected "[[Tempilet:Bole Wikimedians User Group/footer]]" ([Ramu=Allow only autoconfirmed users] (indefinite) [Zeme=Allow only autoconfirmed users] (indefinite))
10395
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
jwzkb1notc7tcjinebi6u05docm7s44
10397
10396
2026-08-24T13:05:19Z
RAPTOR7762
18
10397
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''<bdi dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|{{{3|}}}}}}||font-size:12px;line-height:1.5;font-family:monospace}}">bolewikimediansusergroup@gmail.com}}</bdi>'''
}}
1yhg3ne0wmh7sgtju71pk66nabjh4lf
10398
10397
2026-08-24T13:06:18Z
RAPTOR7762
18
10398
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
jwzkb1notc7tcjinebi6u05docm7s44
10400
10398
2026-08-24T13:07:54Z
RAPTOR7762
18
RAPTOR7762 moved page [[Tempilet:Bole Wikimedians User Group/footer]] to [[Tempilet:Bole Wikimedians User Group]]
10398
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
jwzkb1notc7tcjinebi6u05docm7s44
10404
10400
2026-08-24T13:12:55Z
RAPTOR7762
18
10404
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
4rqmmpkruq601e4xnkjdbot0bwr8xeo
10439
10404
2026-08-24T13:24:56Z
RAPTOR7762
18
10439
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''Bole Wikimedians User Group''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
pi2yzkmpxnmm3k9xl5amg21bpypdqek
10440
10439
2026-08-24T13:28:24Z
RAPTOR7762
18
10440
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
6y7y4tw6jv4pxpt68j5pulc4g1mksig
10442
10440
2026-08-24T13:36:50Z
RAPTOR7762
18
10442
wikitext
text/x-wiki
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = {{{state|autocollapse}}}
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address|link=]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
o5anzkz4tbxpkk5bo2b60kdrkyjdsur
Tempilet:Flatlist/styles.css
10
1249
9822
2021-06-24T11:46:52Z
meta>ExE Boss
0
Create CSS page to style lists using <[[mw:Special:MyLanguage/Help:TemplateStyles|templatestyles]]>
9822
sanitized-css
text/css
/* Should be kept in sync with [[MediaWiki:Common.css]] */
/**
* Style for horizontal lists (separator following item).
* @source https://www.mediawiki.org/wiki/Snippets/Horizontal_lists
* @revision 9 (2016-08-10)
* @author [[User:Edokter]]
*/
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
padding: 0;
}
/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
margin: 0;
display: inline;
}
/* Display nested lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
.hlist dl dl, .hlist dl ol, .hlist dl ul,
.hlist ol dl, .hlist ol ol, .hlist ol ul,
.hlist ul dl, .hlist ul ol, .hlist ul ul {
display: inline;
}
/* Hide empty list items */
.hlist .mw-empty-li,
.hlist .mw-empty-elt {
display: none;
}
/* Generate interpuncts */
.hlist dt:after {
content: ": ";
}
.hlist dd:after,
.hlist li:after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child:after,
.hlist dt:last-child:after,
.hlist li:last-child:after {
content: none;
}
/* Add parentheses around nested lists */
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {
content: " (";
font-weight: normal;
}
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {
content: ")";
font-weight: normal;
}
/* Put ordinals in front of ordered list items */
.hlist ol {
counter-reset: listitem;
}
.hlist ol > li {
counter-increment: listitem;
}
.hlist ol > li:before {
content: " " counter(listitem) "\a0";
}
.hlist dd ol > li:first-child:before,
.hlist dt ol > li:first-child:before,
.hlist li ol > li:first-child:before {
content: " (" counter(listitem) "\a0";
}
/* end hlist */
/**
* Unbulleted lists
*/
.plainlist ul {
line-height: inherit;
list-style: none none;
margin: 0;
}
.plainlist ul li {
margin-bottom: 0;
}
ranyx8h1pulvnjmjry1ef6atjggqsq9
9823
9822
2021-06-28T11:11:01Z
meta>ExE Boss
0
ExE Boss moved page [[Module:List/styles.css]] to [[Template:Hlist/styles.css]] without leaving a redirect: Splitting into [[Template:Hlist/styles.css]] and [[Template:Plainlist/styles.css]]
9822
sanitized-css
text/css
/* Should be kept in sync with [[MediaWiki:Common.css]] */
/**
* Style for horizontal lists (separator following item).
* @source https://www.mediawiki.org/wiki/Snippets/Horizontal_lists
* @revision 9 (2016-08-10)
* @author [[User:Edokter]]
*/
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
padding: 0;
}
/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
margin: 0;
display: inline;
}
/* Display nested lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
.hlist dl dl, .hlist dl ol, .hlist dl ul,
.hlist ol dl, .hlist ol ol, .hlist ol ul,
.hlist ul dl, .hlist ul ol, .hlist ul ul {
display: inline;
}
/* Hide empty list items */
.hlist .mw-empty-li,
.hlist .mw-empty-elt {
display: none;
}
/* Generate interpuncts */
.hlist dt:after {
content: ": ";
}
.hlist dd:after,
.hlist li:after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child:after,
.hlist dt:last-child:after,
.hlist li:last-child:after {
content: none;
}
/* Add parentheses around nested lists */
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {
content: " (";
font-weight: normal;
}
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {
content: ")";
font-weight: normal;
}
/* Put ordinals in front of ordered list items */
.hlist ol {
counter-reset: listitem;
}
.hlist ol > li {
counter-increment: listitem;
}
.hlist ol > li:before {
content: " " counter(listitem) "\a0";
}
.hlist dd ol > li:first-child:before,
.hlist dt ol > li:first-child:before,
.hlist li ol > li:first-child:before {
content: " (" counter(listitem) "\a0";
}
/* end hlist */
/**
* Unbulleted lists
*/
.plainlist ul {
line-height: inherit;
list-style: none none;
margin: 0;
}
.plainlist ul li {
margin-bottom: 0;
}
ranyx8h1pulvnjmjry1ef6atjggqsq9
9824
9823
2021-06-28T11:19:19Z
meta>ExE Boss
0
Finish split into [[Template:Hlist/styles.css]] and [[Template:Plainlist/styles.css]]
9824
sanitized-css
text/css
/* Should be kept in sync with [[MediaWiki:Common.css]] */
/**
* Style for horizontal lists (separator following item).
* @source https://www.mediawiki.org/wiki/Snippets/Horizontal_lists
* @revision 9 (2016-08-10)
* @author [[User:Edokter]]
*/
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
padding: 0;
}
/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
margin: 0;
display: inline;
}
/* Display nested lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
.hlist dl dl, .hlist dl ol, .hlist dl ul,
.hlist ol dl, .hlist ol ol, .hlist ol ul,
.hlist ul dl, .hlist ul ol, .hlist ul ul {
display: inline;
}
/* Hide empty list items */
.hlist .mw-empty-li,
.hlist .mw-empty-elt {
display: none;
}
/* Generate interpuncts */
.hlist dt:after {
content: ": ";
}
.hlist dd:after,
.hlist li:after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child:after,
.hlist dt:last-child:after,
.hlist li:last-child:after {
content: none;
}
/* Add parentheses around nested lists */
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {
content: " (";
font-weight: normal;
}
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {
content: ")";
font-weight: normal;
}
/* Put ordinals in front of ordered list items */
.hlist ol {
counter-reset: listitem;
}
.hlist ol > li {
counter-increment: listitem;
}
.hlist ol > li:before {
content: " " counter(listitem) "\a0";
}
.hlist dd ol > li:first-child:before,
.hlist dt ol > li:first-child:before,
.hlist li ol > li:first-child:before {
content: " (" counter(listitem) "\a0";
}
hhjbqi9jupi4zy6i3ctldqkae31ivup
9825
9824
2021-07-05T15:09:36Z
meta>ExE Boss
0
ExE Boss moved page [[Template:Hlist/styles.css]] to [[Template:Flatlist/styles.css]] without leaving a redirect: Match [[mw:Template:Flatlist/styles.css]]
9824
sanitized-css
text/css
/* Should be kept in sync with [[MediaWiki:Common.css]] */
/**
* Style for horizontal lists (separator following item).
* @source https://www.mediawiki.org/wiki/Snippets/Horizontal_lists
* @revision 9 (2016-08-10)
* @author [[User:Edokter]]
*/
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
padding: 0;
}
/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
margin: 0;
display: inline;
}
/* Display nested lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
.hlist dl dl, .hlist dl ol, .hlist dl ul,
.hlist ol dl, .hlist ol ol, .hlist ol ul,
.hlist ul dl, .hlist ul ol, .hlist ul ul {
display: inline;
}
/* Hide empty list items */
.hlist .mw-empty-li,
.hlist .mw-empty-elt {
display: none;
}
/* Generate interpuncts */
.hlist dt:after {
content: ": ";
}
.hlist dd:after,
.hlist li:after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child:after,
.hlist dt:last-child:after,
.hlist li:last-child:after {
content: none;
}
/* Add parentheses around nested lists */
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {
content: " (";
font-weight: normal;
}
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {
content: ")";
font-weight: normal;
}
/* Put ordinals in front of ordered list items */
.hlist ol {
counter-reset: listitem;
}
.hlist ol > li {
counter-increment: listitem;
}
.hlist ol > li:before {
content: " " counter(listitem) "\a0";
}
.hlist dd ol > li:first-child:before,
.hlist dt ol > li:first-child:before,
.hlist li ol > li:first-child:before {
content: " (" counter(listitem) "\a0";
}
hhjbqi9jupi4zy6i3ctldqkae31ivup
9826
9825
2021-07-05T18:00:36Z
meta>MusikBot II
0
Protected "[[Template:Flatlist/styles.css]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9824
sanitized-css
text/css
/* Should be kept in sync with [[MediaWiki:Common.css]] */
/**
* Style for horizontal lists (separator following item).
* @source https://www.mediawiki.org/wiki/Snippets/Horizontal_lists
* @revision 9 (2016-08-10)
* @author [[User:Edokter]]
*/
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
padding: 0;
}
/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
margin: 0;
display: inline;
}
/* Display nested lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
.hlist dl dl, .hlist dl ol, .hlist dl ul,
.hlist ol dl, .hlist ol ol, .hlist ol ul,
.hlist ul dl, .hlist ul ol, .hlist ul ul {
display: inline;
}
/* Hide empty list items */
.hlist .mw-empty-li,
.hlist .mw-empty-elt {
display: none;
}
/* Generate interpuncts */
.hlist dt:after {
content: ": ";
}
.hlist dd:after,
.hlist li:after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child:after,
.hlist dt:last-child:after,
.hlist li:last-child:after {
content: none;
}
/* Add parentheses around nested lists */
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {
content: " (";
font-weight: normal;
}
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {
content: ")";
font-weight: normal;
}
/* Put ordinals in front of ordered list items */
.hlist ol {
counter-reset: listitem;
}
.hlist ol > li {
counter-increment: listitem;
}
.hlist ol > li:before {
content: " " counter(listitem) "\a0";
}
.hlist dd ol > li:first-child:before,
.hlist dt ol > li:first-child:before,
.hlist li ol > li:first-child:before {
content: " (" counter(listitem) "\a0";
}
hhjbqi9jupi4zy6i3ctldqkae31ivup
9827
9826
2023-03-15T13:50:59Z
meta>MarcoAurelio
0
No longer in Common.css
9827
sanitized-css
text/css
/**
* Style for horizontal lists (separator following item).
* @source https://www.mediawiki.org/wiki/Snippets/Horizontal_lists
* @revision 9 (2016-08-10)
* @author [[User:Edokter]]
*/
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
padding: 0;
}
/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
margin: 0;
display: inline;
}
/* Display nested lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
.hlist dl dl, .hlist dl ol, .hlist dl ul,
.hlist ol dl, .hlist ol ol, .hlist ol ul,
.hlist ul dl, .hlist ul ol, .hlist ul ul {
display: inline;
}
/* Hide empty list items */
.hlist .mw-empty-li,
.hlist .mw-empty-elt {
display: none;
}
/* Generate interpuncts */
.hlist dt:after {
content: ": ";
}
.hlist dd:after,
.hlist li:after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child:after,
.hlist dt:last-child:after,
.hlist li:last-child:after {
content: none;
}
/* Add parentheses around nested lists */
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {
content: " (";
font-weight: normal;
}
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {
content: ")";
font-weight: normal;
}
/* Put ordinals in front of ordered list items */
.hlist ol {
counter-reset: listitem;
}
.hlist ol > li {
counter-increment: listitem;
}
.hlist ol > li:before {
content: " " counter(listitem) "\a0";
}
.hlist dd ol > li:first-child:before,
.hlist dt ol > li:first-child:before,
.hlist li ol > li:first-child:before {
content: " (" counter(listitem) "\a0";
}
4744d7qw1b89w4wg80kvsmz5i9v771u
9828
9827
2025-08-26T15:59:03Z
meta>Pppery
0
/* {{pp-template}} */
9828
sanitized-css
text/css
/* {{pp-template}} */
/**
* Style for horizontal lists (separator following item).
* @source https://www.mediawiki.org/wiki/Snippets/Horizontal_lists
* @revision 9 (2016-08-10)
* @author [[User:Edokter]]
*/
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
padding: 0;
}
/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
margin: 0;
display: inline;
}
/* Display nested lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
.hlist dl dl, .hlist dl ol, .hlist dl ul,
.hlist ol dl, .hlist ol ol, .hlist ol ul,
.hlist ul dl, .hlist ul ol, .hlist ul ul {
display: inline;
}
/* Hide empty list items */
.hlist .mw-empty-li,
.hlist .mw-empty-elt {
display: none;
}
/* Generate interpuncts */
.hlist dt:after {
content: ": ";
}
.hlist dd:after,
.hlist li:after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child:after,
.hlist dt:last-child:after,
.hlist li:last-child:after {
content: none;
}
/* Add parentheses around nested lists */
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {
content: " (";
font-weight: normal;
}
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {
content: ")";
font-weight: normal;
}
/* Put ordinals in front of ordered list items */
.hlist ol {
counter-reset: listitem;
}
.hlist ol > li {
counter-increment: listitem;
}
.hlist ol > li:before {
content: " " counter(listitem) "\a0";
}
.hlist dd ol > li:first-child:before,
.hlist dt ol > li:first-child:before,
.hlist li ol > li:first-child:before {
content: " (" counter(listitem) "\a0";
}
a4wyf051b7o8tplxd2sf168cj98zrj2
9829
9828
2026-08-24T13:00:40Z
RAPTOR7762
18
7 revisions imported from [[:meta:Template:Flatlist/styles.css]]
9828
sanitized-css
text/css
/* {{pp-template}} */
/**
* Style for horizontal lists (separator following item).
* @source https://www.mediawiki.org/wiki/Snippets/Horizontal_lists
* @revision 9 (2016-08-10)
* @author [[User:Edokter]]
*/
.hlist dl,
.hlist ol,
.hlist ul {
margin: 0;
padding: 0;
}
/* Display list items inline */
.hlist dd,
.hlist dt,
.hlist li {
margin: 0;
display: inline;
}
/* Display nested lists inline */
.hlist.inline,
.hlist.inline dl,
.hlist.inline ol,
.hlist.inline ul,
.hlist dl dl, .hlist dl ol, .hlist dl ul,
.hlist ol dl, .hlist ol ol, .hlist ol ul,
.hlist ul dl, .hlist ul ol, .hlist ul ul {
display: inline;
}
/* Hide empty list items */
.hlist .mw-empty-li,
.hlist .mw-empty-elt {
display: none;
}
/* Generate interpuncts */
.hlist dt:after {
content: ": ";
}
.hlist dd:after,
.hlist li:after {
content: " · ";
font-weight: bold;
}
.hlist dd:last-child:after,
.hlist dt:last-child:after,
.hlist li:last-child:after {
content: none;
}
/* Add parentheses around nested lists */
.hlist dd dd:first-child:before, .hlist dd dt:first-child:before, .hlist dd li:first-child:before,
.hlist dt dd:first-child:before, .hlist dt dt:first-child:before, .hlist dt li:first-child:before,
.hlist li dd:first-child:before, .hlist li dt:first-child:before, .hlist li li:first-child:before {
content: " (";
font-weight: normal;
}
.hlist dd dd:last-child:after, .hlist dd dt:last-child:after, .hlist dd li:last-child:after,
.hlist dt dd:last-child:after, .hlist dt dt:last-child:after, .hlist dt li:last-child:after,
.hlist li dd:last-child:after, .hlist li dt:last-child:after, .hlist li li:last-child:after {
content: ")";
font-weight: normal;
}
/* Put ordinals in front of ordered list items */
.hlist ol {
counter-reset: listitem;
}
.hlist ol > li {
counter-increment: listitem;
}
.hlist ol > li:before {
content: " " counter(listitem) "\a0";
}
.hlist dd ol > li:first-child:before,
.hlist dt ol > li:first-child:before,
.hlist li ol > li:first-child:before {
content: " (" counter(listitem) "\a0";
}
a4wyf051b7o8tplxd2sf168cj98zrj2
Tempilet:Label
10
1250
9935
2015-08-22T22:04:45Z
meta>Bluerasberry
0
copied from English Wikipedia...
9935
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikibase|label|{{{1}}}}}</includeonly><noinclude>{{documentation}}</noinclude>
jesppw88bj6fg67gtt7pugoxb8xhd8b
9936
9935
2016-06-01T15:36:24Z
meta>Mahir256
0
9936
wikitext
text/x-wiki
<includeonly>{{#invoke: Wikidata | getLabel |entity={{{1|}}}|lang={{{2|{{int:lang}}}}}}}</includeonly><noinclude>
{{documentation}}</noinclude>
ru5q70rfr87skgw9j8bfibq1gb11rxz
9937
9936
2019-12-05T02:17:45Z
meta>MusikBot II
0
Protected "[[Template:Label]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only autoconfirmed users] (indefinite))
9936
wikitext
text/x-wiki
<includeonly>{{#invoke: Wikidata | getLabel |entity={{{1|}}}|lang={{{2|{{int:lang}}}}}}}</includeonly><noinclude>
{{documentation}}</noinclude>
ru5q70rfr87skgw9j8bfibq1gb11rxz
9938
9937
2020-12-07T23:11:55Z
meta>Verdy p
0
9938
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata|getLabel|entity={{{1|}}}|lang={{{2|{{int:lang}}}}}}}</includeonly><noinclude>{{Documentation}}</noinclude>
rdb4sipqmscm1gmfriig4mewy6ewlc4
9939
9938
2022-03-20T15:09:56Z
meta>Rdrg109
0
9939
wikitext
text/x-wiki
{{#if:{{{item|{{{1|}}} }}}|
{{#invoke:Wikidata label|getLabel
|entity={{{entity|{{{1|}}} }}}
|lang={{{lang|{{{2|}}} }}}
|link={{{link|-}}}
|capitalization={{{capitalization|none}}}
|show_id={{{show_id|}}}
}}
}}<noinclude>
{{documentation}}</noinclude>
osdfcwtvk1cgjj2uh699rkasnu3p3ts
9940
9939
2022-03-20T15:10:19Z
meta>Rdrg109
0
Undo revision 23029370 by [[Special:Contributions/Rdrg109|Rdrg109]] ([[User talk:Rdrg109|talk]])
9940
wikitext
text/x-wiki
<includeonly>{{#invoke:Wikidata|getLabel|entity={{{1|}}}|lang={{{2|{{int:lang}}}}}}}</includeonly><noinclude>{{Documentation}}</noinclude>
rdb4sipqmscm1gmfriig4mewy6ewlc4
9941
9940
2022-03-20T15:44:09Z
meta>Rdrg109
0
9941
wikitext
text/x-wiki
{{#if:{{{item|{{{1|}}} }}}|
{{#invoke:Wikidata label|getLabel
|item={{{item|{{{1|}}} }}}
|lang={{{lang|{{{2|}}} }}}
|link={{{link|-}}}
|capitalization={{{capitalization|none}}}
|show_id={{{show_id|}}}
}}
}}<noinclude>
{{documentation}}</noinclude>
3n5b146mlbpr2piyuavzxrctzu75y5c
9942
9941
2023-07-08T18:01:34Z
meta>MusikBot II
0
Changed protection settings for "[[Template:Label]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9941
wikitext
text/x-wiki
{{#if:{{{item|{{{1|}}} }}}|
{{#invoke:Wikidata label|getLabel
|item={{{item|{{{1|}}} }}}
|lang={{{lang|{{{2|}}} }}}
|link={{{link|-}}}
|capitalization={{{capitalization|none}}}
|show_id={{{show_id|}}}
}}
}}<noinclude>
{{documentation}}</noinclude>
3n5b146mlbpr2piyuavzxrctzu75y5c
9943
9942
2026-08-24T13:00:42Z
RAPTOR7762
18
8 revisions imported from [[:meta:Template:Label]]
9941
wikitext
text/x-wiki
{{#if:{{{item|{{{1|}}} }}}|
{{#invoke:Wikidata label|getLabel
|item={{{item|{{{1|}}} }}}
|lang={{{lang|{{{2|}}} }}}
|link={{{link|-}}}
|capitalization={{{capitalization|none}}}
|show_id={{{show_id|}}}
}}
}}<noinclude>
{{documentation}}</noinclude>
3n5b146mlbpr2piyuavzxrctzu75y5c
Module:Wikidata label
828
1251
9944
2019-10-13T08:04:18Z
meta>Lopullinen
0
Copied from [[:c:Module:Wikidata label]] (version 11:24, 16 July 2019)
9944
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
Thic module was copied from Commons please ask for changes there.
Please do not modify this code without applying the changes first at "Module:Wikidata label/sandbox" and testing
at "Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt - original version
Dependencies:
* Module:Yesno - used only if "show_id" parameter present
]]
-- use different sitelink call depending if you already have an entity or not
local function getSitelink(item, entity, lang)
if entity then -- if we have entity than use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity than use different function
return mw.wikibase.sitelink( item, lang .. 'wiki' )
end
end
local p = {}
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-code or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values: "wikipedia", "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter)
Error Handling:
Bad q-code will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id)
local entity, s, link, label, language
-- clean up the input parameters
if type(item)~='string' then -- "item" is not a q-code
entity = item -- "item" must be the entity
item = entity.id -- look-up q-code
elseif tonumber(item) then -- if it is just the number than add "Q" in front
item = 'Q'..item
end
item = string.gsub( string.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
-- build language fallback list
lang = string.lower(lang) or 'en'
local langList = mw.language.getFallbacksFor(lang)
table.insert(langList, 1, lang)
-- get label (visible part of the link)
for _, language in ipairs(langList) do -- loop over language fallback list looking for label in the specific language
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then break end -- label found and we are done
end
if not label then -- no labels found, so just show the q-code
label = item
elseif show_id then -- add id
local yesno = require('Module:Yesno')
show_id = yesno(show_id,false)
if show_id then
local id = mw.getCurrentFrame():preprocess( "{{int:parentheses|" .. item .."}}")
local wordsep = mw.message.new( "Word-separator" ):inLanguage(lang):plain()
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
-- change capitalization of the label
if capitalization=='ucfirst' then
label = mw.language.new(lang):ucfirst(label)
elseif capitalization=='lcfirst' then
label = mw.language.new(lang):lcfirst(label)
elseif capitalization=='uc' then
label = mw.language.new(lang):uc(label)
elseif capitalization=='lc' then
label = mw.language.new(lang):lc(label)
end
-- create URL part of the link
link_type = string.lower(link_type or '')
local dLink = 'd:'..item; -- create fallback wikidata link
if string.sub(item, 1, 1) == 'P' then
dLink = 'd:Property:'.. item
end
if link_type=='-' then -- allow different link formats
link = '' -- no link
elseif link_type=='wikidata' then
link = dLink -- link to wikidata
elseif link_type=='wikidata talk' and string.sub(item, 1, 1)=='P' then
link = 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type=='wikidata talk' then
link = 'd:Talk:'..item -- link to wikidata talk page
elseif link_type=='commons' or link_type=='commonscat' then
-- For link_type=='commons' we try the following links (in that order):
-- 1) sitelink to commons
-- 2) "Commons Category" P373 property
-- 3) "Commons Gallery" P935 property
-- Since most pages have a sitelink to commons we never have to call expensive mw.wikibase.getEntity
-- For link_type=='commonscat' we try to maximize chances of commons link beeing a category, so we
-- try the following links (in that order):
-- 1) sitelink to commons, which is kept if it points to a category
-- 2) "Commons Category" P373 property
-- 3) sitelink to commons (which does not point to a category)
-- 4) "Commons Gallery" P935 property
-- Since most pages have a sitelink to commons we never have to call expensive mw.wikibase.getEntity
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type=='commons') or (link_type=='commonscat' and string.find( sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 category
-- this is potentially memory expensive operation
entity = entity or mw.wikibase.getEntity(item);
assert(entity, "Item ID " .. item .. " is not valid")
s = entity:getBestStatements( 'P373' )
if s[1] and s[1].mainsnak.datavalue.value then
link = 'c:Category:' .. s[1].mainsnak.datavalue.value
end
end
link = link or sLink
if not link then -- try linking to P935 gallery
-- there is no need for mw.wikibase.getEntity(item) call since at this point it was already loded
s = entity:getBestStatements( 'P935' )
if s[1] and s[1].mainsnak.datavalue.value then
link = s[1].mainsnak.datavalue.value
end
end
end
if not link then-- apply default "Wikipedia" link type
for _, language in ipairs(langList) do
local sitelink = getSitelink(item, entity, language)
if sitelink then
link = mw.ustring.format('w:%s:%s', language, sitelink)
break
end
end
end
link = link or dLink -- no wiki sitelink, so link to wikidata
-- return the results
if link~='' then
return mw.ustring.format('[[%s|%s]]', link, label) -- return link
else
return label -- return just a label
end
end
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-code (required)
2: language (optional; default {{int:lang}} )
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "ucfirst", "lcfirst"
Error Handling:
Bad q-code will result in displayed error
]]
function p.getLabel(frame)
local args = frame.args
if not (args.lang and mw.language.isSupportedLanguage(args.lang)) then
args.lang = frame:callParserFunction( "int", "lang" ) -- get user's chosen language
end
if (not args.link) or (mw.text.trim(args.link) == "") then
args.link = "wikipedia"
end
if (not args.capitalization) or (mw.text.trim(args.capitalization) == "") then
args.capitalization = "none"
end
args.item = mw.text.trim(args.item or '')
return p._getLabel(args.item, args.lang, args.link, args.capitalization, args.show_id)
end
--[[
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-code or entity class
2: project - "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews", "wikiversity",
"wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table with language fields
]]
function p._sitelinks( item, project )
local entity, sitelink
-- get entity
if type(item)=='string' then -- "item" is a q-code
entity = mw.wikibase.getEntity(item);
else
entity = item -- "item" is the entity
item = entity.id -- look-up q-code
end
-- get project code
local LUT = {wikipedia='wiki', commons='commonswiki', mediawiki='mediawikiwiki', wikispecies='specieswiki', wikidata='wikidatawiki'}
project = string.lower(project)
if LUT[project] then -- correct the project name
project=LUT[project]
end
local n = string.len(project);
local s ={}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local lang = mw.ustring.sub( site, 1, mw.ustring.len(site) - n ) -- language part of the siteID
local proj = mw.ustring.sub( site, mw.ustring.len(site) - n + 1 ) -- project part of the siteID
if proj == project then -- proj matches desired "project"
s[lang] = sitelink.title
end
end
end
return s
end
--[[
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-code or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks", "wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local sitelinks = p._sitelinks(frame.args.item, frame.args.project)
local s = {}
for i, j in pairs(sitelinks) do
table.insert(s, i .. ':' .. j)
end
return table.concat(s, ', ')
end
--[[
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-code or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases
]]
function p._aliases( item, lang )
local entity
if type(item)=='string' then -- "item" is a q-code
entity = mw.wikibase.getEntity(item);
else
entity = item -- "item" is the entity
item = entity.id -- look-up q-code
end
local s = {}
if entity and entity.aliases then -- See if there is an entity and that is has aliases
if entity.aliases[lang] then -- See if it has English Aliases
for i, j in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(s, j.value) -- Create a table of English aliases
end
end
end
return s
end
--[[
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-code or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list of aliases
]]
function p.aliases(frame)
return table.concat(p._aliases(frame.args.item, frame.args.lang), ', ')
end
return p
02mwbjqxbngd2trldxz2uu13m26r5l6
9945
9944
2022-03-20T18:01:34Z
meta>MusikBot II
0
Protected "[[Module:Wikidata label]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only autoconfirmed users] (indefinite))
9944
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
Thic module was copied from Commons please ask for changes there.
Please do not modify this code without applying the changes first at "Module:Wikidata label/sandbox" and testing
at "Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt - original version
Dependencies:
* Module:Yesno - used only if "show_id" parameter present
]]
-- use different sitelink call depending if you already have an entity or not
local function getSitelink(item, entity, lang)
if entity then -- if we have entity than use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity than use different function
return mw.wikibase.sitelink( item, lang .. 'wiki' )
end
end
local p = {}
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-code or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values: "wikipedia", "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter)
Error Handling:
Bad q-code will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id)
local entity, s, link, label, language
-- clean up the input parameters
if type(item)~='string' then -- "item" is not a q-code
entity = item -- "item" must be the entity
item = entity.id -- look-up q-code
elseif tonumber(item) then -- if it is just the number than add "Q" in front
item = 'Q'..item
end
item = string.gsub( string.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
-- build language fallback list
lang = string.lower(lang) or 'en'
local langList = mw.language.getFallbacksFor(lang)
table.insert(langList, 1, lang)
-- get label (visible part of the link)
for _, language in ipairs(langList) do -- loop over language fallback list looking for label in the specific language
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then break end -- label found and we are done
end
if not label then -- no labels found, so just show the q-code
label = item
elseif show_id then -- add id
local yesno = require('Module:Yesno')
show_id = yesno(show_id,false)
if show_id then
local id = mw.getCurrentFrame():preprocess( "{{int:parentheses|" .. item .."}}")
local wordsep = mw.message.new( "Word-separator" ):inLanguage(lang):plain()
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
-- change capitalization of the label
if capitalization=='ucfirst' then
label = mw.language.new(lang):ucfirst(label)
elseif capitalization=='lcfirst' then
label = mw.language.new(lang):lcfirst(label)
elseif capitalization=='uc' then
label = mw.language.new(lang):uc(label)
elseif capitalization=='lc' then
label = mw.language.new(lang):lc(label)
end
-- create URL part of the link
link_type = string.lower(link_type or '')
local dLink = 'd:'..item; -- create fallback wikidata link
if string.sub(item, 1, 1) == 'P' then
dLink = 'd:Property:'.. item
end
if link_type=='-' then -- allow different link formats
link = '' -- no link
elseif link_type=='wikidata' then
link = dLink -- link to wikidata
elseif link_type=='wikidata talk' and string.sub(item, 1, 1)=='P' then
link = 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type=='wikidata talk' then
link = 'd:Talk:'..item -- link to wikidata talk page
elseif link_type=='commons' or link_type=='commonscat' then
-- For link_type=='commons' we try the following links (in that order):
-- 1) sitelink to commons
-- 2) "Commons Category" P373 property
-- 3) "Commons Gallery" P935 property
-- Since most pages have a sitelink to commons we never have to call expensive mw.wikibase.getEntity
-- For link_type=='commonscat' we try to maximize chances of commons link beeing a category, so we
-- try the following links (in that order):
-- 1) sitelink to commons, which is kept if it points to a category
-- 2) "Commons Category" P373 property
-- 3) sitelink to commons (which does not point to a category)
-- 4) "Commons Gallery" P935 property
-- Since most pages have a sitelink to commons we never have to call expensive mw.wikibase.getEntity
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type=='commons') or (link_type=='commonscat' and string.find( sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 category
-- this is potentially memory expensive operation
entity = entity or mw.wikibase.getEntity(item);
assert(entity, "Item ID " .. item .. " is not valid")
s = entity:getBestStatements( 'P373' )
if s[1] and s[1].mainsnak.datavalue.value then
link = 'c:Category:' .. s[1].mainsnak.datavalue.value
end
end
link = link or sLink
if not link then -- try linking to P935 gallery
-- there is no need for mw.wikibase.getEntity(item) call since at this point it was already loded
s = entity:getBestStatements( 'P935' )
if s[1] and s[1].mainsnak.datavalue.value then
link = s[1].mainsnak.datavalue.value
end
end
end
if not link then-- apply default "Wikipedia" link type
for _, language in ipairs(langList) do
local sitelink = getSitelink(item, entity, language)
if sitelink then
link = mw.ustring.format('w:%s:%s', language, sitelink)
break
end
end
end
link = link or dLink -- no wiki sitelink, so link to wikidata
-- return the results
if link~='' then
return mw.ustring.format('[[%s|%s]]', link, label) -- return link
else
return label -- return just a label
end
end
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-code (required)
2: language (optional; default {{int:lang}} )
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "ucfirst", "lcfirst"
Error Handling:
Bad q-code will result in displayed error
]]
function p.getLabel(frame)
local args = frame.args
if not (args.lang and mw.language.isSupportedLanguage(args.lang)) then
args.lang = frame:callParserFunction( "int", "lang" ) -- get user's chosen language
end
if (not args.link) or (mw.text.trim(args.link) == "") then
args.link = "wikipedia"
end
if (not args.capitalization) or (mw.text.trim(args.capitalization) == "") then
args.capitalization = "none"
end
args.item = mw.text.trim(args.item or '')
return p._getLabel(args.item, args.lang, args.link, args.capitalization, args.show_id)
end
--[[
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-code or entity class
2: project - "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews", "wikiversity",
"wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table with language fields
]]
function p._sitelinks( item, project )
local entity, sitelink
-- get entity
if type(item)=='string' then -- "item" is a q-code
entity = mw.wikibase.getEntity(item);
else
entity = item -- "item" is the entity
item = entity.id -- look-up q-code
end
-- get project code
local LUT = {wikipedia='wiki', commons='commonswiki', mediawiki='mediawikiwiki', wikispecies='specieswiki', wikidata='wikidatawiki'}
project = string.lower(project)
if LUT[project] then -- correct the project name
project=LUT[project]
end
local n = string.len(project);
local s ={}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local lang = mw.ustring.sub( site, 1, mw.ustring.len(site) - n ) -- language part of the siteID
local proj = mw.ustring.sub( site, mw.ustring.len(site) - n + 1 ) -- project part of the siteID
if proj == project then -- proj matches desired "project"
s[lang] = sitelink.title
end
end
end
return s
end
--[[
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-code or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks", "wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local sitelinks = p._sitelinks(frame.args.item, frame.args.project)
local s = {}
for i, j in pairs(sitelinks) do
table.insert(s, i .. ':' .. j)
end
return table.concat(s, ', ')
end
--[[
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-code or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases
]]
function p._aliases( item, lang )
local entity
if type(item)=='string' then -- "item" is a q-code
entity = mw.wikibase.getEntity(item);
else
entity = item -- "item" is the entity
item = entity.id -- look-up q-code
end
local s = {}
if entity and entity.aliases then -- See if there is an entity and that is has aliases
if entity.aliases[lang] then -- See if it has English Aliases
for i, j in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(s, j.value) -- Create a table of English aliases
end
end
end
return s
end
--[[
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-code or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list of aliases
]]
function p.aliases(frame)
return table.concat(p._aliases(frame.args.item, frame.args.lang), ', ')
end
return p
02mwbjqxbngd2trldxz2uu13m26r5l6
9946
9945
2023-01-11T21:00:51Z
meta>Pols12
0
Upgrades from [[c:Module:Wikidata_label]]
9946
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons please ask for changes there.
Please do not modify this code without applying the changes first at "Module:Wikidata label/sandbox" and testing
at "Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt - original version
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beggining and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, langList)
local link, eLink
link_type = mw.ustring.lower(link_type or '')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' then -- allow different link formats
link = '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
link = eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
link = 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
link = 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
end
if not link then -- apply default "Wikipedia" link type
for _, language in ipairs(langList) do
local sitelink = getSitelink(item, entity, language)
if sitelink then
link = 'w:'.. language ..':'.. sitelink
break
end
end
end
return link or eLink -- no wiki sitelink, so link to wikidata
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id)
local entity, s, link, label, language, desc
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if not lang then
label, lang = mw.wikibase.getLabelWithLang(item)
end
if not lang then -- if still no language
lang = mw.getCurrentFrame():callParserFunction("int","lang") -- get user's chosen language
label = nil
end
-- build language fallback list
lang = mw.ustring.lower(lang)
local langList = mw.language.getFallbacksFor(lang)
table.insert(langList, 1, lang)
-- get label (visible part of the link)
if not label then
for _, language in ipairs(langList) do -- loop over language fallback list looking for label in the specific language
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then break end -- label found and we are done
end
end
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, lang)
-- look for description
if entity and entity.descriptions and lang then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
desc = entity.descriptions[language].value
break
end
end
else
desc = mw.wikibase.getDescription(item)
end
if desc and link_type ~= '-' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
-- return the results
if link_type == '-' then
return label -- return just the label
else
link = getLink(link_type, item, entity, langList)
return '[[' .. link .. '|' .. label .. ']]' -- return link
end
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki', oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~', -- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See https://meta.wikimedia.org/wiki/Special_language_codes for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then -- See if there is an entity and that is has aliases
if entity.aliases[lang] then -- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value) -- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(args.item, args.lang, args.link, args.capitalization, args.show_id)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list of aliases
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
tubg9bh0033761yy22p4vw8xjare3q3
9947
9946
2023-07-02T18:01:32Z
meta>MusikBot II
0
Changed protection settings for "[[Module:Wikidata label]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9946
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons please ask for changes there.
Please do not modify this code without applying the changes first at "Module:Wikidata label/sandbox" and testing
at "Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt - original version
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beggining and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, langList)
local link, eLink
link_type = mw.ustring.lower(link_type or '')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' then -- allow different link formats
link = '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
link = eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
link = 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
link = 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
end
if not link then -- apply default "Wikipedia" link type
for _, language in ipairs(langList) do
local sitelink = getSitelink(item, entity, language)
if sitelink then
link = 'w:'.. language ..':'.. sitelink
break
end
end
end
return link or eLink -- no wiki sitelink, so link to wikidata
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id)
local entity, s, link, label, language, desc
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if not lang then
label, lang = mw.wikibase.getLabelWithLang(item)
end
if not lang then -- if still no language
lang = mw.getCurrentFrame():callParserFunction("int","lang") -- get user's chosen language
label = nil
end
-- build language fallback list
lang = mw.ustring.lower(lang)
local langList = mw.language.getFallbacksFor(lang)
table.insert(langList, 1, lang)
-- get label (visible part of the link)
if not label then
for _, language in ipairs(langList) do -- loop over language fallback list looking for label in the specific language
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then break end -- label found and we are done
end
end
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, lang)
-- look for description
if entity and entity.descriptions and lang then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
desc = entity.descriptions[language].value
break
end
end
else
desc = mw.wikibase.getDescription(item)
end
if desc and link_type ~= '-' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
-- return the results
if link_type == '-' then
return label -- return just the label
else
link = getLink(link_type, item, entity, langList)
return '[[' .. link .. '|' .. label .. ']]' -- return link
end
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki', oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~', -- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See https://meta.wikimedia.org/wiki/Special_language_codes for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then -- See if there is an entity and that is has aliases
if entity.aliases[lang] then -- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value) -- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(args.item, args.lang, args.link, args.capitalization, args.show_id)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list of aliases
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
tubg9bh0033761yy22p4vw8xjare3q3
9948
9947
2025-08-13T16:52:12Z
meta>Pppery
0
Update from Commons
9948
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons please ask for changes there.
Please do not modify this code without applying the changes first at "Module:Wikidata label/sandbox" and testing
at "Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt - original version
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beggining and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, langList)
local link, eLink
link_type = mw.ustring.lower(link_type or '')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' then -- allow different link formats
link = '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
link = eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
link = 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
link = 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
end
if not link then -- apply default "Wikipedia" link type
for _, language in ipairs(langList) do
local sitelink = getSitelink(item, entity, language)
if sitelink then
link = 'w:'.. language ..':'.. sitelink
break
end
end
end
return link or eLink -- no wiki sitelink, so link to wikidata
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id)
local entity, s, link, label, language, desc
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = '-'
end
if not lang then
label, lang = mw.wikibase.getLabelWithLang(item)
end
if not lang then -- if still no language
lang = mw.getCurrentFrame():callParserFunction("int","lang") -- get user's chosen language
label = nil
end
-- build language fallback list
lang = mw.ustring.lower(lang)
local langList = mw.language.getFallbacksFor(lang)
table.insert(langList, 1, lang)
table.insert(langList, 'mul') -- add "default for all languages"
-- get label (visible part of the link)
if not label then
for _, language in ipairs(langList) do -- loop over language fallback list looking for label in the specific language
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then break end -- label found and we are done
end
end
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, lang)
-- look for description
if entity and entity.descriptions and lang then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
desc = entity.descriptions[language].value
break
end
end
else
desc = mw.wikibase.getDescription(item)
end
if desc and link_type ~= '-' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
-- return the results
if link_type == '-' then
return label -- return just the label
else
link = getLink(link_type, item, entity, langList)
return '[[' .. link .. '|' .. label .. ']]' -- return link
end
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki', oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~', -- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See https://meta.wikimedia.org/wiki/Special_language_codes for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then -- See if there is an entity and that is has aliases
if entity.aliases[lang] then -- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value) -- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(args.item, args.lang, args.link, args.capitalization, args.show_id)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list of aliases
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
7b3k45meuo4sbudososz6gy9dx3nxzm
9949
9948
2026-08-24T13:00:42Z
RAPTOR7762
18
5 revisions imported from [[:meta:Module:Wikidata_label]]
9948
Scribunto
text/plain
--[[
__ __ _ _ __ ___ _ _ _ _ _ _ _
| \/ | ___ __| |_ _| | ___ \ \ / (_) | _(_) __| | __ _| |_ __ _ | | __ _| |__ ___| |
| |\/| |/ _ \ / _` | | | | |/ _ (_) \ /\ / /| | |/ / |/ _` |/ _` | __/ _` | | |/ _` | '_ \ / _ \ |
| | | | (_) | (_| | |_| | | __/_ \ V V / | | <| | (_| | (_| | || (_| | | | (_| | |_) | __/ |
|_| |_|\___/ \__,_|\__,_|_|\___(_) \_/\_/ |_|_|\_\_|\__,_|\__,_|\__\__,_| |_|\__,_|_.__/ \___|_|
This module is intended to be the engine behind "Template:Label".
This module was copied from Commons please ask for changes there.
Please do not modify this code without applying the changes first at "Module:Wikidata label/sandbox" and testing
at "Module:Wikidata label/testcases".
Authors and maintainers:
* User:Jarekt - original version
]]
require('strict') -- used for debugging purposes as it detects cases of unintended global variables
--=============================================
--=== Internal functions ======================
--=============================================
---------------------------------------------------------------------------
-- Normalize input arguments by converting them all to lower case and
-- replacing space with "_" in the argument name. Also empty strings are
-- converted to nils. Arguments are collected from arguments passed to the
-- module and if missing from the template that calls the module
local function getArgs(frame)
local function normalize_input_args(input_args, output_args)
for name, value in pairs( input_args ) do
value = mw.text.trim(value) -- trim whitespaces from the beggining and the end of the string
if value ~= '' then -- nuke empty strings
if type(name)=='string' then
name = string.gsub( string.lower(name), ' ', '_')
end
output_args[name] = value
end
end
return output_args
end
local args = {}
args = normalize_input_args(frame:getParent().args, args)
args = normalize_input_args(frame.args, args)
return args
end
---------------------------------------------------------------------------
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to Module:Yesno but does not assume val is a string
local function yesno(val, default)
if type(val) == 'boolean' then
return val
elseif type(val) == 'number' then
if val == 1 then
return true
elseif val == 0 then
return false
end
elseif type(val) == 'string' then
val = mw.ustring.lower(val) -- put in lower case
if val == 'no' or val == 'n' or val == 'false' or val == '0' then
return false
elseif val == 'yes' or val == 'y' or val == 'true' or val == '1' then
return true
end
end
return default
end
-------------------------------------------------------------------------
-- get message in a given language
-- INPUTS:
-- * msg - name of a message. For it to work [[MediaWiki:msg]] page need to be set up
-- * lang - translate message to language "lang"
-- * default - string to return in case this module is moved to a project where this message is not set
-- OUTPUT:
-- * translated message
local function getMessage(msg, lang, default)
msg = mw.message.new(msg):inLanguage(lang):plain()
return (msg == nil and default) or msg
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * lang - language of the project
-- OUTPUT:
-- * sitelink
local function getSitelink(item, entity, lang)
if entity and entity.getSitelink then -- if we have entity then use it
return entity:getSitelink(lang .. 'wiki')
else -- if no entity then use different function
return mw.wikibase.getSitelink(item, lang .. 'wiki')
end
end
---------------------------------------------------------------------------
-- use different sitelink call depending if you already have an entity or not
-- INPUTS:
-- * item and entity - entity id and entity: if full entity already uploded than use that
-- otherwise use entity id to look up sitelink
-- * prop - property for which to return the best statment
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function getBestStatementsValue(item, entity, prop)
local statments
if entity then
statments = entity:getBestStatements(prop)
else
statments = mw.wikibase.getBestStatements(item, prop)
end
for _, statment in ipairs(statments) do
if statment and statment.mainsnak.datavalue.value then
return statment.mainsnak.datavalue.value
end
end
end
---------------------------------------------------------------------------
-- change capitalization of the label
-- INPUTS:
-- * label - label string
-- * capitalization - capitalization to be applied: allowed values are "tc", "lc",
-- "uc", "lcfirst", and "ucfirst". Any other value will return original string
-- * lang - language of the label
-- OUTPUT:
-- * value of the best statment (only from the first one)
local function apply_capitalization(label, capitalization, lang)
capitalization = string.lower(capitalization or 'none')
if capitalization == 'none' then
return label
elseif capitalization == 'uc' then
return mw.language.new(lang):uc(label)
elseif capitalization == 'lc' then
return mw.language.new(lang):lc(label)
elseif capitalization == 'tc' then -- title case
local new_label = {}
for _, word in ipairs(mw.text.split(label, ' ')) do
table.insert(new_label, mw.language.new(lang):ucfirst(word))
end
return table.concat(new_label, ' ')
elseif capitalization == 'ucfirst' then
return mw.language.new(lang):ucfirst(label)
elseif capitalization == 'lcfirst' then
return mw.language.new(lang):lcfirst(label)
end
return label
end
--[[-------------------------------------------------------------------------
get link based on user preference
INPUTS:
* link_type - can be :
* "wikidata" - link to wikidata
* "wikipedia" - link to wikipedia (language dependent)
* "wikidata talk" - link to wikidata talk page
* "commons" - link to commons (try sitelink then commons category then commons gallery)
* "commonscat" - link to commons (try commons category then commons gallery)
* "-" - means no link
* item - entity ID (always provided)
* entity - whole entity. It can be nil if whole entity is not loaded
* langList - language fallback list for preferred language (required)
OUTPUT:
* link - link to the wikimedia page
]]
local function getLink(link_type, item, entity, langList)
local link, eLink
link_type = mw.ustring.lower(link_type or '')
local item_type = mw.ustring.sub(item, 1, 1) -- first letter prefix of item entity ID: 'Q', 'P' or 'M'
if item_type == 'M' then
eLink='c:Special:EntityPage/'..item
elseif item_type == 'Q' then
eLink='d:'..item -- wikibase entity page link
elseif item_type == 'P' then
eLink='d:Property:'..item -- wikibase entity page link
else
eLink='d:Special:EntityPage/'..item
end
if link_type == '-' then -- allow different link formats
link = '' -- no link
elseif link_type == 'wikidata' or item_type == 'M' then
link = eLink -- link to wikibase entity page
elseif link_type == 'wikidata talk' and item_type == 'P' then
link = 'd:Property talk:'.. item -- link to wikidata property talk page
elseif link_type == 'wikidata talk' then
link = 'd:Talk:'..item -- link to wikidata talk page
elseif link_type == 'commons' or link_type == 'commonscat' then
--[[
When link_type == 'commons' we try the following links (in specified order):
1) commons sitelink
2) P373 "Commons Category" claims
3) P935 "Commons Gallery" claims
Since most items have a commons sitelink we never have to look for claims
When link_type == 'commonscat' we try to maximize chances of commons link being a category, so we
try the following links (in specified order):
1) commons sitelink, which is kept if it points to a category
2) P373 "Commons Category" claims
3) commons sitelink (which does not point to a category)
4) P935 "Commons Gallery" claims
Since most pages have a commons sitelink we never have to look for claims
]]
local sLink = getSitelink(item, entity, 'commons') -- look for sitelink to commons
if sLink then
sLink = 'c:'..sLink
if (link_type == 'commons') or (link_type == 'commonscat' and mw.ustring.find(sLink, 'Category:')) then
link = sLink
end
end
if not link then -- try linking to P373 "Commons Category"
local cat = getBestStatementsValue(item, entity, 'P373')
link = (cat ~= nil and 'c:Category:' .. cat) or nil
end
link = link or sLink
if not link then -- try linking to P935 "Commons Gallery"
link = getBestStatementsValue(item, entity, 'P935')
end
end
if not link then -- apply default "Wikipedia" link type
for _, language in ipairs(langList) do
local sitelink = getSitelink(item, entity, language)
if sitelink then
link = 'w:'.. language ..':'.. sitelink
break
end
end
end
return link or eLink -- no wiki sitelink, so link to wikidata
end
--=============================================
--=== External functions ======================
--=============================================
local p = {}
--======================================================================
--=== API functions for use from other Scribunto modules ===============
--======================================================================
--[[
_getLabel
This function returns a label translated to desired language, created based on wikidata
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - desired language of the label
3: link_type - link style. Possible values (case-insensitive): "wikipedia", "wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc" (upper case), "lc" (lower case), "ucfirst" (upper case for the first letter),
"lcfirst" (lower case for the first letter), or 'none' (default)
Error Handling:
Bad q-id will result in displayed error
]]
function p._getLabel(item, lang, link_type, capitalization, show_id)
local entity, s, link, label, language, desc
-- clean up the input parameters
if type(item) ~= 'string' then -- "item" is not a q-id
entity = item -- "item" must be the entity
item = entity.id -- look-up q-id
elseif tonumber(item) then -- if it is just the number then add "Q" in front
item = 'Q'..item
end
item = mw.ustring.gsub(mw.ustring.upper(item), 'PROPERTY:P', 'P') -- make all the properties the same and capitalize
if link_type == 'no' then
link_type = '-'
end
if not lang then
label, lang = mw.wikibase.getLabelWithLang(item)
end
if not lang then -- if still no language
lang = mw.getCurrentFrame():callParserFunction("int","lang") -- get user's chosen language
label = nil
end
-- build language fallback list
lang = mw.ustring.lower(lang)
local langList = mw.language.getFallbacksFor(lang)
table.insert(langList, 1, lang)
table.insert(langList, 'mul') -- add "default for all languages"
-- get label (visible part of the link)
if not label then
for _, language in ipairs(langList) do -- loop over language fallback list looking for label in the specific language
if entity then
label = entity:getLabel(language)
else
label = mw.wikibase.getLabelByLang(item, language)
end
if label then break end -- label found and we are done
end
end
if label then -- wikitext-escape the label if we have one
label = mw.text.nowiki(label)
end
if not label then -- no labels found, so just show the q-id
label = item
elseif show_id then -- add id
show_id = yesno(show_id,false)
if show_id then
local wordsep = getMessage('Word-separator', lang, ' ')
local id = mw.message.new('parentheses', item):inLanguage(lang):plain()
id = (id~=nil and id) or ('('..item..')') -- in case this module is moved to a project where {{int:parenthesis}} is not set
label = label .. wordsep .. "<small>" .. id .. "</small>"
end
end
label = apply_capitalization(label, capitalization, lang)
-- look for description
if entity and entity.descriptions and lang then
for _, language in ipairs(langList) do
if entity.descriptions[language] then
desc = entity.descriptions[language].value
break
end
end
else
desc = mw.wikibase.getDescription(item)
end
if desc and link_type ~= '-' then -- wikitext-escape the description if we have one
desc = mw.text.nowiki(desc) -- add description as hover text
label = '<span title="' .. desc .. '">' .. label .. '</span>'
end
-- return the results
if link_type == '-' then
return label -- return just the label
else
link = getLink(link_type, item, entity, langList)
return '[[' .. link .. '|' .. label .. ']]' -- return link
end
end
--[[-------------------------------------------------------------------------------
_sitelinks
This function returns a table of sitelinks for a single project organized by language
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - (case-insensitive) one of: "wikipedia", "wikisource", "wikiquote", "wikibooks", "wikinews",
"wikiversity", "wikivoyage", "wiktionary", "commons", "mediawiki", "wikispecies", "wikidata", etc.
Output:
Table of sitelinks with language fields
Output:
Table of sitelinks with language fields
See also
* [https://foundation.wikimedia.org/wiki/Special:SiteMatrix] for the full list of supported interwikis.
* [https://dumps.wikimedia.org/backup-index.html] for the full list of sitecodes (used in database dumps).
]]
function p._sitelinks(item, project)
local entity, sitelink
-- get entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
-- convert from english project name to proproject code
local projLUT = {
wikipedia = 'wiki', commons = 'commonswiki',
foundation = 'foundationwiki', mediawiki = 'mediawikiwiki',
wikispecies = 'specieswiki', wikidata = 'wikidatawiki',
incubator = 'incubatorwiki', oldwikisource = 'sourceswiki',
}
local langLUT = {
-- These are not language codes before the 'wiki' or 'wikiversity' suffix in a sitecode:
foundation = '~', commons = '~', -- they will be skipped
incubator = '~', meta = '~',
mediawiki = '~', sources = '~',
species = '~', beta = '~',
-- Legacy language codes used in sitecodes, remapped to standard Wikimedia language codes:
-- See https://meta.wikimedia.org/wiki/Special_language_codes for details
als = 'gsw', bat_smg = 'sgs',
fiu_vro = 'vro', be_x_old = 'be-tarask',
roa_rup = 'rup', zh_classical = 'lzh',
zh_yue = 'yue', zh_min_nan = 'nan',
zh_wuu = 'wuu', no = 'nb',
}
project = project:lower()
project = projLUT[project] or project -- correct the project name
local n = project:len()
local linkTable = {}
if entity and entity.sitelinks then -- See if entity exists, and that it has sitelinks
for _, sitelink in pairs(entity.sitelinks) do -- loop over all sitelinks
local site = sitelink.site
local m = site:len() - n
local proj = site:sub(m +1) -- project part of the siteID
if proj == project then -- proj matches desired "project"
local lang = site:sub(1, m) -- language part of the siteID
lang = langLUT[lang] or lang:gsub('_','-')
if lang ~= '~' then -- proj matches desired "project"
linkTable[lang] = sitelink.title
end
end
end
end
return linkTable
end
--[[----------------------------------------------------------------
_aliases
This function returns a table of aliases for a single language
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Table of aliases with language fields
]]
function p._aliases(item, lang)
local entity
if type(item) == 'string' then -- "item" is a q-id
entity = mw.wikibase.getEntity(item)
else
entity = item -- "item" is the entity
end
local aliasTable = {}
if entity and entity.aliases then -- See if there is an entity and that is has aliases
if entity.aliases[lang] then -- See if it has English Aliases
for _, alias in pairs(entity.aliases[lang]) do -- Make a loop around the English aliases
table.insert(aliasTable, alias.value) -- Create a table of English aliases
end
end
end
return aliasTable
end
--======================================================================
--=== Invoke functions for use from wikitext, e.g., templates ==========
---=====================================================================
--[[
getLabel
This function returns a label translated to desired language, created based on wikidata
Usage:
{{#invoke:Wikidata label|getLabel|item=Q...|lang=..|link_style=..|capitalization=..}}
Parameters
1: wikidata's item's q-id (required)
2: language (optional; default {{int:lang}})
3: link_style: "wikipedia" (default), "Wikidata", "Commons", or "-" (no link)
4: capitalization - can be "uc", "lc", "tc", "ucfirst", "lcfirst"
Error Handling:
Bad q-id will result in displayed error
]]
function p.getLabel(frame)
local args = getArgs(frame)
return p._getLabel(args.item, args.lang, args.link, args.capitalization, args.show_id)
end
--[[-------------------------------------------------------------------------------
sitelinks
This function returns a comma separated list of sitelinks for a single project organized by language
Its main purpose is to help with testing of _sitelinks function.
Usage:
{{#invoke:Wikidata label|sitelinks|item=Q...|project=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: project - "wikipedia" (or "wiki"), "wikisource", "wikiquote", "wikibooks",
"wikinews", "wikiversity", "wikivoyage", "wiktionary", etc.
Output:
comma separated list
]]
function p.sitelinks(frame)
local args = getArgs(frame)
local sitelinks = p._sitelinks(args.item, args.project)
local sitelinkList = {}
for lang, sitelink in pairs(sitelinks) do
table.insert(sitelinkList, (lang=='' and sitelink) or (lang .. ':' .. sitelink))
end
return table.concat(sitelinkList, ', ')
end
--[[----------------------------------------------------------------------------
aliases
This function returns a comma separated list of aliases for a single language
Its main purpose is to help with testing of _aliases function.
Usage:
{{#invoke:Wikidata label|aliases|item=Q...|lang=..}}
Inputs:
1: item - wikidata's item's q-id or entity class
2: lang - language code, like 'en' or 'de'
Output:
Comma separated list of aliases
]]
function p.aliases(frame)
local args = getArgs(frame)
return table.concat(p._aliases(args.item, args.lang), ', ')
end
return p
7b3k45meuo4sbudososz6gy9dx3nxzm
Tempilet:Nospam
10
1252
9950
2012-02-12T03:22:39Z
meta>Steven Crossin
0
++
9950
wikitext
text/x-wiki
<span class="nowrap">{{{1|account}}}[[File:At sign.svg|15px|@|link=]]{{{2|example.com}}}</span><noinclude>
{{Documentation}}
<!-- PLEASE ADD THIS TEMPLATE'S CATEGORIES AND INTERWIKIS TO THE /doc SUBPAGE, THANKS -->
</noinclude>
5i5wxt4meffzorieo8zbdnwgfi6le8a
9951
9950
2014-01-11T04:40:44Z
meta>Verdy p
0
9951
wikitext
text/x-wiki
<tt class="nowrap">{{{1|account}}}[[File:At sign.svg|15px|@|link=]]{{{2|example.com}}}</tt><noinclude>{{Documentation}}</noinclude>
o2m9ft1le8rwm8ddv42q1s3va5jphds
9952
9951
2014-03-25T21:10:01Z
meta>TeleComNasSprVen
0
Redirect to [[Template:NonSpamEmail]]
9952
wikitext
text/x-wiki
#REDIRECT [[Template:NonSpamEmail]]
597768eswsrwj62xm2iw6kzmma27ovm
9953
9952
2014-03-28T05:46:58Z
meta>Verdy p
0
Undo revision 7957075 by [[Special:Contributions/TeleComNasSprVen|TeleComNasSprVen]] ([[User talk:TeleComNasSprVen|talk]]) not equivalent (and incompatible target is not modificable)
9953
wikitext
text/x-wiki
<tt class="nowrap">{{{1|account}}}[[File:At sign.svg|15px|@|link=]]{{{2|example.com}}}</tt><noinclude>{{Documentation}}</noinclude>
o2m9ft1le8rwm8ddv42q1s3va5jphds
9954
9953
2014-07-31T15:49:55Z
meta>Verdy p
0
alt text more explicit for text readers(an arrobace alone is not read); and still better as "(at)" instead of "@" (too explicit for spambots); also use explicit icon height.
9954
wikitext
text/x-wiki
<tt class="nowrap">{{{1|account}}}[[File:At sign.svg|15x15px|link=|alt=(at)]]{{{2|example.com}}}</tt><noinclude>{{Documentation}}</noinclude>
h05hprev0jym81mmh4d2jccjdj7834c
9955
9954
2014-07-31T16:05:54Z
meta>Verdy p
0
precise vertical alignment: font-size/line-hine-height fixed to match to the fixed icon size (in CSS "logical" pixels): the whole is like a single image with a static height
9955
wikitext
text/x-wiki
<tt style="white-space:nowrap;font-size:12px;line-height:1.5">{{{1|account}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{{2|example.com}}}</tt><noinclude>{{Documentation}}</noinclude>
lxbgri52psarht1o4oqhpttyoohsdsb
9956
9955
2014-07-31T16:15:53Z
meta>Verdy p
0
fix order for RTL pages
9956
wikitext
text/x-wiki
<tt dir="ltr" style="white-space:nowrap;font-size:12px;line-height:1.5">{{{1|account}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{{2|example.com}}}</tt><noinclude>{{Documentation}}</noinclude>
52py2gp4m68v64mb1raqja7e8iksknc
9957
9956
2018-03-29T03:10:41Z
2403:AC00:0:2:0:0:2:50D9
9957
wikitext
text/x-wiki
<tt dir="ltr" style="white-space:nowrap;font-size:12px;line-height:1.5">{{{1|account}}}@{{{2|example.com}}}</tt><noinclude>{{Documentation}}</noinclude>
3olmjt9552f1gvugk1fe5pibuavd8e9
9958
9957
2018-03-29T03:55:14Z
meta>Ammarpad
0
Undo revision 17880517 by [[Special:Contributions/2403:AC00:0:2:0:0:2:50D9|2403:AC00:0:2:0:0:2:50D9]] ([[User talk:2403:AC00:0:2:0:0:2:50D9|talk]])
9958
wikitext
text/x-wiki
<tt dir="ltr" style="white-space:nowrap;font-size:12px;line-height:1.5">{{{1|account}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{{2|example.com}}}</tt><noinclude>{{Documentation}}</noinclude>
52py2gp4m68v64mb1raqja7e8iksknc
9959
9953
2014-04-11T12:23:04Z
meta>Mdennis
0
establishing
9959
wikitext
text/x-wiki
<span class="nowrap">{{{1|<noinclude>account</noinclude>}}}[[File:At sign.svg|15px|@|link=]]{{{2|<noinclude>example.com</noinclude>}}}</span><noinclude>
aup7rfbdxvajj6njdku0bnlib6unrpc
9960
9959
2014-04-11T12:23:21Z
meta>Mdennis
0
cat
9960
wikitext
text/x-wiki
<span class="nowrap">{{{1|<noinclude>account</noinclude>}}}[[File:At sign.svg|15px|@|link=]]{{{2|<noinclude>example.com</noinclude>}}}</span><noinclude>
<noinclude>
[[Category:Templates]]
</noinclude>
4lefwrq9lyvh8km204nph2kydq01oir
9961
9958
2018-07-31T00:17:56Z
meta>GVarnum-WMF
0
2 revisions imported from [[:foundation:Template:Nospam]]: Importing from old Foundation Wiki
9958
wikitext
text/x-wiki
<tt dir="ltr" style="white-space:nowrap;font-size:12px;line-height:1.5">{{{1|account}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{{2|example.com}}}</tt><noinclude>{{Documentation}}</noinclude>
52py2gp4m68v64mb1raqja7e8iksknc
9962
9961
2018-12-20T16:35:55Z
meta>Tholme
0
lintfix
9962
wikitext
text/x-wiki
<span dir="ltr" style="white-space:nowrap;font-size:12px;line-height:1.5; font-family:monospace;">{{{1|account}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{{2|example.com}}}</span><noinclude>{{Documentation}}</noinclude>
4yiwwaznt8z6xbjajzyek82hqw1uzi7
9963
9962
2018-12-20T16:37:43Z
meta>Tholme
0
why should this have different formatting than the rest of the text?
9963
wikitext
text/x-wiki
<span dir="ltr" style="white-space:nowrap;">{{{1|account}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{{2|example.com}}}</span><noinclude>{{Documentation}}</noinclude>
0r0injb77sh96slserzssu1kyyhhwp0
9964
9963
2019-05-03T01:12:37Z
meta>Billinghurst
0
Undo revision 18730223 by [[Special:Contributions/Tholme|Tholme]] ([[User talk:Tholme|talk]]); it was done to differentiate an email address in text; add as option
9964
wikitext
text/x-wiki
<span dir="ltr" style="white-space:nowrap;{{#if:{{{nolook}}}||font-size:12px;line-height:1.5; font-family:monospace;}}">{{{1|account}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{{2|example.com}}}</span><noinclude>{{Documentation}}</noinclude>
g62gakaa1ar99a3c2y4843ic8hqi1eg
9965
9964
2019-05-03T02:36:06Z
meta>Billinghurst
0
update
9965
wikitext
text/x-wiki
<span dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|}}}||font-size:12px;line-height:1.5; font-family:monospace;}}">{{{1|account}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{{2|example.com}}}</span><noinclude>{{Documentation}}</noinclude>
bnpzmxapml4588lp9ymn543rsmro4w0
9966
9965
2019-05-03T02:39:25Z
meta>Billinghurst
0
{{{3}}}
9966
wikitext
text/x-wiki
<span dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|{{{3|}}}}}}||font-size:12px;line-height:1.5; font-family:monospace;}}">{{{1|account}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{{2|example.com}}}</span><noinclude>{{Documentation}}</noinclude>
jv5gqr2m7uay4f83h608izpdpue1eou
9967
9966
2019-05-03T02:39:52Z
meta>Billinghurst
0
Protected "[[Template:Nospam]]": Highly transcluded template ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only autoconfirmed users] (indefinite))
9966
wikitext
text/x-wiki
<span dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|{{{3|}}}}}}||font-size:12px;line-height:1.5; font-family:monospace;}}">{{{1|account}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{{2|example.com}}}</span><noinclude>{{Documentation}}</noinclude>
jv5gqr2m7uay4f83h608izpdpue1eou
9968
9967
2020-11-12T11:58:54Z
meta>Verdy p
0
use bdi, and cipher the dots with vector image in the domain name part
9968
wikitext
text/x-wiki
<bdi dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|{{{3|}}}}}}||font-size:12px;line-height:1.5;font-family:monospace}}">{{{1<noinclude>|account</noinclude>}}}[[File:At sign.svg|15x15px|middle|link=|alt=(at)]]{{#invoke:String|replace|{{{2<noinclude>|example.com</noinclude>}}}|.|[[File:Dot.svg|4x13px|middle|link=|alt=(dot)]]}}</bdi><noinclude>{{Documentation}}</noinclude>
cr9oexjiu6l85oq37u5tey1fwxiv878
9969
9968
2020-11-12T12:01:08Z
meta>Verdy p
0
9969
wikitext
text/x-wiki
<bdi dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|{{{3|}}}}}}||font-size:12px;line-height:1.5;font-family:monospace}}">{{{1<noinclude>|account</noinclude>}}}[[File:At sign.svg|x15px|middle|link=|alt=(at)]]{{#invoke:String|replace|{{{2<noinclude>|example.com</noinclude>}}}|.|[[File:Dot.svg|x15px|middle|link=|alt=(dot)]]}}</bdi><noinclude>{{Documentation}}</noinclude>
ilqmltczaspny201fao6bv27ydsn1en
9970
9969
2021-11-24T15:58:44Z
meta>Krinkle
0
Use true symbols as alt text for easier copy-pasting. this still results in more or less the same HTML which seems unlikely to be scraped if the old one wasn't already scraped. This matches enwiki [[Template:No spam]].
9970
wikitext
text/x-wiki
<bdi dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|{{{3|}}}}}}||font-size:12px;line-height:1.5;font-family:monospace}}">{{{1<noinclude>|account</noinclude>}}}[[File:At sign.svg|x15px|middle|link=|alt=@]]{{#invoke:String|replace|{{{2<noinclude>|example.com</noinclude>}}}|.|[[File:Dot.svg|x15px|middle|link=|alt=.]]}}</bdi><noinclude>{{Documentation}}</noinclude>
tk042xv1kibzidfpg46vt60wcild50n
9971
9970
2024-10-28T15:24:07Z
meta>Null the Great
0
add support for dark version
9971
wikitext
text/x-wiki
<bdi dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|{{{3|}}}}}}||font-size:12px;line-height:1.5;font-family:monospace}}">{{{1<noinclude>|account</noinclude>}}}[[File:At sign.svg|x15px|middle|link=|alt=@|class=skin-invert]]{{#invoke:String|replace|{{{2<noinclude>|example.com</noinclude>}}}|.|[[File:Dot.svg|x15px|middle|link=|alt=.|class=skin-invert]]}}</bdi><noinclude>{{Documentation}}</noinclude>
hfb819xs14dldtgv4k3o9h9cgkqetvx
9972
9971
2024-11-22T19:34:12Z
meta>Nemoralis
0
9972
wikitext
text/x-wiki
<bdi dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|{{{3|}}}}}}||font-size:12px;line-height:1.5;font-family:monospace}}">{{{1<noinclude>|account</noinclude>}}}[[File:At sign.svg|x15px|middle|link=|alt=@|class=skin-invert-image]]{{#invoke:String|replace|{{{2<noinclude>|example.com</noinclude>}}}|.|[[File:Dot.svg|x15px|middle|link=|alt=.|class=skin-invert-image]]}}</bdi><noinclude>{{Documentation}}</noinclude>
mp1bv8dh3cu3087u3fmllrucd6fagv9
9973
9972
2025-02-24T18:08:16Z
meta>MusikBot II
0
Changed protection settings for "[[Template:Nospam]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
9972
wikitext
text/x-wiki
<bdi dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|{{{3|}}}}}}||font-size:12px;line-height:1.5;font-family:monospace}}">{{{1<noinclude>|account</noinclude>}}}[[File:At sign.svg|x15px|middle|link=|alt=@|class=skin-invert-image]]{{#invoke:String|replace|{{{2<noinclude>|example.com</noinclude>}}}|.|[[File:Dot.svg|x15px|middle|link=|alt=.|class=skin-invert-image]]}}</bdi><noinclude>{{Documentation}}</noinclude>
mp1bv8dh3cu3087u3fmllrucd6fagv9
9974
9973
2026-08-24T13:00:44Z
RAPTOR7762
18
24 revisions imported from [[:meta:Template:Nospam]]
9972
wikitext
text/x-wiki
<bdi dir="ltr" style="white-space:nowrap;{{#if:{{{nolook|{{{3|}}}}}}||font-size:12px;line-height:1.5;font-family:monospace}}">{{{1<noinclude>|account</noinclude>}}}[[File:At sign.svg|x15px|middle|link=|alt=@|class=skin-invert-image]]{{#invoke:String|replace|{{{2<noinclude>|example.com</noinclude>}}}|.|[[File:Dot.svg|x15px|middle|link=|alt=.|class=skin-invert-image]]}}</bdi><noinclude>{{Documentation}}</noinclude>
mp1bv8dh3cu3087u3fmllrucd6fagv9
Tempilet:Name
10
1253
10042
2022-06-28T14:42:45Z
meta>Pols12
0
Created page with "<noinclude><languages/> {{documentation|content= == Usage == Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes. You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles). As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive): * Eventbrite: ev..."
10042
wikitext
text/x-wiki
<noinclude><languages/>
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Eventbrite |evtb = <translate><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate><!--T:4--> Google Meet</translate>
| LimeSurvey |limesurvey = <translate><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate><!--T:7--> QuickSurveys</translate>
| Skype |skype = <translate><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate><!--T:10--> Twitter</translate>
| Zoom |zoom = <translate><!--T:11--> Zoom</translate>
|#default = <span class="error">Unknown name given to {{tl|Name}}</span>
}}
ci57h83e4k98f6h0zakvkt9drndxlif
10043
10042
2022-06-28T16:01:33Z
meta>Pols12
0
do not display the error when passing empty string
10043
wikitext
text/x-wiki
<noinclude><languages/>
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Eventbrite |evtb = <translate><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate><!--T:4--> Google Meet</translate>
| LimeSurvey |limesurvey = <translate><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate><!--T:7--> QuickSurveys</translate>
| Skype |skype = <translate><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate><!--T:10--> Twitter</translate>
| Zoom |zoom = <translate><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}</span>
}}
4q9tp4mgvk35aqdtlhppc5baoa2p2xb
10044
10043
2022-07-16T16:31:58Z
meta>Pols12
0
+Instagram
10044
wikitext
text/x-wiki
<noinclude><languages/>
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* Instagram: insta
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Eventbrite |evtb = <translate><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate><!--T:4--> Google Meet</translate>
| Instagram | insta = <translate><!--T:12--> Instagram</translate>
| LimeSurvey |limesurvey = <translate><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate><!--T:7--> QuickSurveys</translate>
| Skype |skype = <translate><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate><!--T:10--> Twitter</translate>
| Zoom |zoom = <translate><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}, please add it to the template.</span>
}}
ppfh40obmvs41szb68tyqkeml1en37j
10045
10044
2022-07-19T09:36:57Z
meta>Pols12
0
+Youtube
10045
wikitext
text/x-wiki
<noinclude><languages/>
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* Instagram: insta
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* YouTube : yt
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Eventbrite |evtb = <translate><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate><!--T:4--> Google Meet</translate>
| Instagram | insta = <translate><!--T:12--> Instagram</translate>
| LimeSurvey |limesurvey = <translate><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate><!--T:7--> QuickSurveys</translate>
| Skype |skype = <translate><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate><!--T:10--> Twitter</translate>
| YouTube | Youtube |yt = <translate><!--T:13--> YouTube</translate>
| Zoom |zoom = <translate><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}, please add it to the template.</span>
}}
r45a344bowii1dztepiczqibszrekri
10046
10045
2022-07-20T16:55:04Z
meta>Pols12
0
+Etherpad
10046
wikitext
text/x-wiki
<noinclude><languages/>
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Etherpad: pad
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* Instagram: insta
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* YouTube : yt
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Etherpad |pad = <translate><!--T:14--> Etherpad</translate>
| Eventbrite |evtb = <translate><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate><!--T:4--> Google Meet</translate>
| Instagram | insta = <translate><!--T:12--> Instagram</translate>
| LimeSurvey |limesurvey = <translate><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate><!--T:7--> QuickSurveys</translate>
| Skype |skype = <translate><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate><!--T:10--> Twitter</translate>
| YouTube | Youtube |yt = <translate><!--T:13--> YouTube</translate>
| Zoom |zoom = <translate><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}, please add it to the template.</span>
}}
2tmf1948h05bh1hb09d5z1951p6pkut
10047
10046
2022-08-06T09:46:19Z
meta>Pols12
0
+quora
10047
wikitext
text/x-wiki
<noinclude><languages/>
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Etherpad: pad
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* Instagram: insta
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Quora: quo
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* YouTube : yt
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Etherpad |pad = <translate><!--T:14--> Etherpad</translate>
| Eventbrite |evtb = <translate><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate><!--T:4--> Google Meet</translate>
| Instagram | insta = <translate><!--T:12--> Instagram</translate>
| LimeSurvey |limesurvey = <translate><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate><!--T:7--> QuickSurveys</translate>
| Quora |quo = <translate><!--T:15--> Quora</translate>
| Skype |skype = <translate><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate><!--T:10--> Twitter</translate>
| YouTube | Youtube |yt = <translate><!--T:13--> YouTube</translate>
| Zoom |zoom = <translate><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}, please add it to the template.</span>
}}
h37rwgia15hfqliugtoklkqio9h7l6n
10048
10047
2022-08-06T13:24:14Z
meta>Pols12
0
+Identi.ca
10048
wikitext
text/x-wiki
<noinclude><languages/>
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Etherpad: pad
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* Identi.ca: ica
* Instagram: insta
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Quora: quo
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* YouTube : yt
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Etherpad |pad = <translate><!--T:14--> Etherpad</translate>
| Eventbrite |evtb = <translate><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate><!--T:4--> Google Meet</translate>
| Identi.ca |Identica |ica <translate><!--T:16--> Identi.ca</translate>
| Instagram |insta = <translate><!--T:12--> Instagram</translate>
| LimeSurvey |limesurvey = <translate><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate><!--T:7--> QuickSurveys</translate>
| Quora |quo = <translate><!--T:15--> Quora</translate>
| Skype |skype = <translate><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate><!--T:10--> Twitter</translate>
| YouTube | Youtube |yt = <translate><!--T:13--> YouTube</translate>
| Zoom |zoom = <translate><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}, please add it to the template.</span>
}}
m0nr3rej1dcfdvof7iol25rumj3cpfi
10049
10048
2022-08-06T14:33:48Z
meta>Pols12
0
nowrap: wrapping is mostly useless and may cause big issues
10049
wikitext
text/x-wiki
<noinclude><languages/>
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Etherpad: pad
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* Identi.ca: ica
* Instagram: insta
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Quora: quo
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* YouTube : yt
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Etherpad |pad = <translate nowrap><!--T:14--> Etherpad</translate>
| Eventbrite |evtb = <translate nowrap><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate nowrap><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate nowrap><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate nowrap><!--T:4--> Google Meet</translate>
| Identi.ca |Identica |ica <translate nowrap><!--T:16--> Identi.ca</translate>
| Instagram |insta = <translate nowrap><!--T:12--> Instagram</translate>
| LimeSurvey |limesurvey = <translate nowrap><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate nowrap><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate nowrap><!--T:7--> QuickSurveys</translate>
| Quora |quo = <translate nowrap><!--T:15--> Quora</translate>
| Skype |skype = <translate nowrap><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate nowrap><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate nowrap><!--T:10--> Twitter</translate>
| YouTube | Youtube |yt = <translate nowrap><!--T:13--> YouTube</translate>
| Zoom |zoom = <translate nowrap><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}, please add it to the template.</span>
}}
kep0z8dmyhn5gs8ozuywqblphbtjlr7
10050
10049
2022-09-26T16:48:45Z
meta>GVarnum-WMF
0
{{Help translate/Common messages}}
10050
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Etherpad: pad
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* Identi.ca: ica
* Instagram: insta
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Quora: quo
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* YouTube : yt
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Etherpad |pad = <translate nowrap><!--T:14--> Etherpad</translate>
| Eventbrite |evtb = <translate nowrap><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate nowrap><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate nowrap><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate nowrap><!--T:4--> Google Meet</translate>
| Identi.ca |Identica |ica <translate nowrap><!--T:16--> Identi.ca</translate>
| Instagram |insta = <translate nowrap><!--T:12--> Instagram</translate>
| LimeSurvey |limesurvey = <translate nowrap><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate nowrap><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate nowrap><!--T:7--> QuickSurveys</translate>
| Quora |quo = <translate nowrap><!--T:15--> Quora</translate>
| Skype |skype = <translate nowrap><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate nowrap><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate nowrap><!--T:10--> Twitter</translate>
| YouTube | Youtube |yt = <translate nowrap><!--T:13--> YouTube</translate>
| Zoom |zoom = <translate nowrap><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}, please add it to the template.</span>
}}
rii20kaeq0ltq824qa2p2pcb5hxfc1d
10051
10050
2022-09-26T18:22:03Z
meta>GVarnum-WMF
0
+Creative Commons
10051
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Creative Commons: cc
* Etherpad: pad
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* Identi.ca: ica
* Instagram: insta
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Quora: quo
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* YouTube : yt
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Creative Commons |cc = <translate nowrap>Creative Commons</translate>
| Etherpad |pad = <translate nowrap><!--T:14--> Etherpad</translate>
| Eventbrite |evtb = <translate nowrap><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate nowrap><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate nowrap><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate nowrap><!--T:4--> Google Meet</translate>
| Identi.ca |Identica |ica <translate nowrap><!--T:16--> Identi.ca</translate>
| Instagram |insta = <translate nowrap><!--T:12--> Instagram</translate>
| LimeSurvey |limesurvey = <translate nowrap><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate nowrap><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate nowrap><!--T:7--> QuickSurveys</translate>
| Quora |quo = <translate nowrap><!--T:15--> Quora</translate>
| Skype |skype = <translate nowrap><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate nowrap><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate nowrap><!--T:10--> Twitter</translate>
| YouTube | Youtube |yt = <translate nowrap><!--T:13--> YouTube</translate>
| Zoom |zoom = <translate nowrap><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}, please add it to the template.</span>
}}
l10vlc8it7znuusoypfnc5cax36o4b2
10052
10051
2022-09-26T18:22:09Z
meta>GVarnum-WMF
0
Marked this version for translation
10052
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Creative Commons: cc
* Etherpad: pad
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* Identi.ca: ica
* Instagram: insta
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Quora: quo
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* YouTube : yt
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Creative Commons |cc = <translate nowrap><!--T:17--> Creative Commons</translate>
| Etherpad |pad = <translate nowrap><!--T:14--> Etherpad</translate>
| Eventbrite |evtb = <translate nowrap><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate nowrap><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate nowrap><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate nowrap><!--T:4--> Google Meet</translate>
| Identi.ca |Identica |ica <translate nowrap><!--T:16--> Identi.ca</translate>
| Instagram |insta = <translate nowrap><!--T:12--> Instagram</translate>
| LimeSurvey |limesurvey = <translate nowrap><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate nowrap><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate nowrap><!--T:7--> QuickSurveys</translate>
| Quora |quo = <translate nowrap><!--T:15--> Quora</translate>
| Skype |skype = <translate nowrap><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate nowrap><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate nowrap><!--T:10--> Twitter</translate>
| YouTube | Youtube |yt = <translate nowrap><!--T:13--> YouTube</translate>
| Zoom |zoom = <translate nowrap><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}, please add it to the template.</span>
}}
sbn4hiel2u94k4zmvu4w1cwyhalp2ry
10053
10052
2022-09-26T18:26:53Z
meta>GVarnum-WMF
0
{{merge|Template:Int string}}
10053
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{merge|Template:Int string}}
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
As first parameter you may give the full name or a short identifier from the following list (note it is case-sensitive):
* Creative Commons: cc
* Etherpad: pad
* Eventbrite: evtb
* Facebook: fb
* Google Forms: gforms
* Google Meet: gmeet
* Identi.ca: ica
* Instagram: insta
* LimeSurvey: limesurvey
* Qualtrics: qual
* QuickSurveys: qsurveys
* Quora: quo
* Skype: skype
* SurveyMonkey: surveymonkey
* Twitter: tw
* YouTube : yt
* Zoom: zoom
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude>{{#switch:{{{1}}}
| Creative Commons |cc = <translate nowrap><!--T:17--> Creative Commons</translate>
| Etherpad |pad = <translate nowrap><!--T:14--> Etherpad</translate>
| Eventbrite |evtb = <translate nowrap><!--T:1--> Eventbrite</translate>
| Facebook |fb = <translate nowrap><!--T:2--> Facebook</translate>
| Google Forms |gforms = <translate nowrap><!--T:3--> Google Forms</translate>
| Google Meet |gmeet = <translate nowrap><!--T:4--> Google Meet</translate>
| Identi.ca |Identica |ica <translate nowrap><!--T:16--> Identi.ca</translate>
| Instagram |insta = <translate nowrap><!--T:12--> Instagram</translate>
| LimeSurvey |limesurvey = <translate nowrap><!--T:5--> LimeSurvey</translate>
| Qualtrics |qual = <translate nowrap><!--T:6--> Qualtrics</translate>
| QuickSurveys |qsurveys = <translate nowrap><!--T:7--> QuickSurveys</translate>
| Quora |quo = <translate nowrap><!--T:15--> Quora</translate>
| Skype |skype = <translate nowrap><!--T:8--> Skype</translate>
| SurveyMonkey |surveymonkey = <translate nowrap><!--T:9--> SurveyMonkey</translate>
| Twitter |tw = <translate nowrap><!--T:10--> Twitter</translate>
| YouTube | Youtube |yt = <translate nowrap><!--T:13--> YouTube</translate>
| Zoom |zoom = <translate nowrap><!--T:11--> Zoom</translate>
| =
|#default = <span class="error">Unknown name given to {{tl|Name}}, please add it to the template.</span>
}}
r7zcz79q3lyax1jtmpkusib97gyrv6u
10054
10053
2022-09-26T22:44:39Z
meta>GVarnum-WMF
0
setup as redirect to [[Template:Int string]]
10054
wikitext
text/x-wiki
#REDIRECT [[Template:Int string]]
evrvl2aaq0rvsshude99bbbbtl7glss
10055
10054
2022-09-26T22:47:01Z
meta>GVarnum-WMF
0
wrapper for {{Int string}}
10055
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|content=
== Usage ==
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
Managed by use of the {{tl|Int string}} template.
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude><includeonly>{{Int string|1={{{1}}}}}</includeonly>
ceszedrb80wyou7ykr5koouym98ogm6
10056
10055
2022-09-26T22:47:51Z
meta>GVarnum-WMF
0
formatting
10056
wikitext
text/x-wiki
<noinclude>
{{documentation|content=
== Usage ==
{{Help translate/Common messages}}
Displays the localized name of a product, trademark, service or any proper noun. This is useful in tables or infoboxes.
You should avoid using it inside sentences, because the translation may change depending on grammatical case (especially for proper noun with articles).
Managed by use of the {{tl|Int string}} template.
=== Example ===
<code><nowiki>Used service: <tvar name=Service>{{name|qual}}</tvar></nowiki></code> gives "Used service: {{name|qual}}" in English
== See also ==
* [[:Category:Common messages|Common messages category]]: other templates to localize common phrases
[[Category:Common messages{{#translation:}}]]
}}
</noinclude><includeonly>{{Int string|1={{{1}}}}}</includeonly>
ntzy06u3djwa2his8n3rtjwu1vqenci
10057
10056
2022-09-26T23:16:11Z
meta>GVarnum-WMF
0
Redirect to [[Template:Int string]]
10057
wikitext
text/x-wiki
#REDIRECT [[Template:Int string]]
evrvl2aaq0rvsshude99bbbbtl7glss
10058
10057
2023-11-29T18:02:08Z
meta>MusikBot II
0
Protected "[[Template:Name]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only autoconfirmed users] (indefinite))
10057
wikitext
text/x-wiki
#REDIRECT [[Template:Int string]]
evrvl2aaq0rvsshude99bbbbtl7glss
10059
10058
2026-08-24T13:00:45Z
RAPTOR7762
18
17 revisions imported from [[:meta:Template:Name]]
10057
wikitext
text/x-wiki
#REDIRECT [[Template:Int string]]
evrvl2aaq0rvsshude99bbbbtl7glss
Tempilet:Int string
10
1254
10060
2022-09-24T20:19:12Z
meta>GVarnum-WMF
0
Created page with "<noinclude> <languages /> </noinclude> <includeonly> {{#switch: {{{1|}}} </includeonly> | Home = <translate>Home</translate> | MediaWiki = <translate>MediaWiki</translate> | Resources = <translate>Resources</translate> | Wikimedia = <translate>Wikimedia</translate> | Wikimedia Foundation = <translate>Wikimedia Foundation</translate> <includeonly> }} </includeonly><noinclude> {{doc}} </noinclude>"
10060
wikitext
text/x-wiki
<noinclude>
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Home = <translate>Home</translate>
| MediaWiki = <translate>MediaWiki</translate>
| Resources = <translate>Resources</translate>
| Wikimedia = <translate>Wikimedia</translate>
| Wikimedia Foundation = <translate>Wikimedia Foundation</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
h8kltw1bcxa4zycyk3jomgu5bujuvu5
10061
10060
2022-09-24T20:19:34Z
meta>GVarnum-WMF
0
10061
wikitext
text/x-wiki
<noinclude>
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Home = <translate>Home</translate>
| MediaWiki = <translate>MediaWiki</translate>
| Resources = <translate>Resources</translate>
| Wikimedia = <translate>Wikimedia</translate>
| Wikimedia Foundation = <translate>Wikimedia Foundation</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
5uq8jyr4hkc7qkujgd6op9j9w06uvkg
10062
10061
2022-09-24T20:19:49Z
meta>GVarnum-WMF
0
{{draft}}
10062
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Home = <translate>Home</translate>
| MediaWiki = <translate>MediaWiki</translate>
| Resources = <translate>Resources</translate>
| Wikimedia = <translate>Wikimedia</translate>
| Wikimedia Foundation = <translate>Wikimedia Foundation</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
jgms4gjl7ytuf2fbq3bhklad3dvp24i
10063
10062
2022-09-24T20:19:56Z
meta>GVarnum-WMF
0
Marked this version for translation
10063
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Home = <translate><!--T:1--> Home</translate>
| MediaWiki = <translate><!--T:2--> MediaWiki</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
b1fw5utznnvap7cckcjd09av5edpad4
10064
10063
2022-09-24T20:24:17Z
meta>GVarnum-WMF
0
Protected "[[Template:Int content]]": Highly transcluded template: Potential long-term usage/concerns ([Edit=Allow only autoconfirmed users] (indefinite) [Move=Allow only administrators] (indefinite))
10063
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Home = <translate><!--T:1--> Home</translate>
| MediaWiki = <translate><!--T:2--> MediaWiki</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
b1fw5utznnvap7cckcjd09av5edpad4
10065
10064
2022-09-24T20:32:01Z
meta>GVarnum-WMF
0
more terms added using {{int:}}
10065
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Home = <translate><!--T:1--> Home</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Resources = <translate><!--T:3--> Resources</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
a25d310vfko13muh0f0e5gi8bxxw8ui
10066
10065
2022-09-24T20:46:30Z
meta>GVarnum-WMF
0
more strings
10066
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Hello = {{int:hello}}
| Home = <translate><!--T:1--> Home</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Resources = <translate><!--T:3--> Resources</translate>
| Thank you = {{int:thank-you}}
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
ntbc2fnyenc03cijhr1r5xojy50frw0
10067
10066
2022-09-24T20:48:42Z
meta>GVarnum-WMF
0
more strings from {{int:}}
10067
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Feedback = {{int:specialblockfeedback}}
| Hello = {{int:hello}}
| Home = <translate><!--T:1--> Home</translate>
| Leave Feedback = {{int:specialinvestigate-feedback}}
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Resources = <translate><!--T:3--> Resources</translate>
| Thank you = {{int:thank-you}}
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
45bog9lokqlh3za09mmfqnxfpgxq0jm
10068
10067
2022-09-24T20:55:56Z
meta>GVarnum-WMF
0
additional strings
10068
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate>Commons</translate>
| Creative Commons = <translate>Creative Commons</translate>
| Feedback = {{int:specialblockfeedback}}
| Hello = {{int:hello}}
| Home = <translate><!--T:1--> Home</translate>
| Leave Feedback = {{int:specialinvestigate-feedback}}
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Meta-Wiki = {{int:project-localized-name-metawiki}}
| Resources = <translate><!--T:3--> Resources</translate>
| Thank you = {{int:thank-you}}
| Wikibooks = <translate>Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki}}
| Wikinews = <translate>Wikinews</translate>
| Wikiquote = <translate>Wikiquote</translate>
| Wikisource = <translate>Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki}}
| Wikitech = {{int:project-localized-name-labswiki}}
| Wikiversity = <translate>Wikiversity</translate>
| Wikivoyage = <translate>Wikivoyage</translate>
| Wiktionary = <translate>Wiktionary</translate>
|
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
rfc1samme8k09to4wr5vhdpp15in38y
10069
10068
2022-09-24T20:56:11Z
meta>GVarnum-WMF
0
Marked this version for translation
10069
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate>
| Feedback = {{int:specialblockfeedback}}
| Hello = {{int:hello}}
| Home = <translate><!--T:1--> Home</translate>
| Leave Feedback = {{int:specialinvestigate-feedback}}
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Meta-Wiki = {{int:project-localized-name-metawiki}}
| Resources = <translate><!--T:3--> Resources</translate>
| Thank you = {{int:thank-you}}
| Wikibooks = <translate><!--T:8--> Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki}}
| Wikinews = <translate><!--T:9--> Wikinews</translate>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate>
| Wikisource = <translate><!--T:11--> Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki}}
| Wikitech = {{int:project-localized-name-labswiki}}
| Wikiversity = <translate><!--T:12--> Wikiversity</translate>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate>
|
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
96v9wersb1ey4sbw1y0569kni7nvu6o
10070
10069
2022-09-24T21:00:47Z
meta>GVarnum-WMF
0
social media string
10070
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate>
| Facebook = <translate>Facebook</translate>
| Feedback = {{int:specialblockfeedback}}
| Hello = {{int:hello}}
| Home = <translate><!--T:1--> Home</translate>
| Instagram = <translate>Instagram</translate>
| Leave Feedback = {{int:specialinvestigate-feedback}}
| LinkedIn = <translate>LinkedIn</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Meta-Wiki = {{int:project-localized-name-metawiki}}
| Resources = <translate><!--T:3--> Resources</translate>
| Thank you = {{int:thank-you}}
| Twitter = <translate>Twitter</translate>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki}}
| Wikinews = <translate><!--T:9--> Wikinews</translate>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate>
| Wikisource = <translate><!--T:11--> Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki}}
| Wikitech = {{int:project-localized-name-labswiki}}
| Wikiversity = <translate><!--T:12--> Wikiversity</translate>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate>
|
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
mdyahifzfuirpoit0751evt7drh5dlj
10071
10070
2022-09-24T21:13:52Z
meta>GVarnum-WMF
0
Marked this version for translation
10071
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate>
| Facebook = <translate><!--T:15--> Facebook</translate>
| Feedback = {{int:specialblockfeedback}}
| Hello = {{int:hello}}
| Home = <translate><!--T:1--> Home</translate>
| Instagram = <translate><!--T:16--> Instagram</translate>
| Leave Feedback = {{int:specialinvestigate-feedback}}
| LinkedIn = <translate><!--T:17--> LinkedIn</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Meta-Wiki = {{int:project-localized-name-metawiki}}
| Resources = <translate><!--T:3--> Resources</translate>
| Thank you = {{int:thank-you}}
| Twitter = <translate><!--T:18--> Twitter</translate>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki}}
| Wikinews = <translate><!--T:9--> Wikinews</translate>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate>
| Wikisource = <translate><!--T:11--> Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki}}
| Wikitech = {{int:project-localized-name-labswiki}}
| Wikiversity = <translate><!--T:12--> Wikiversity</translate>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate>
|
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
165jd1loxr2f3lrdzwy7i2snpmkzd8e
10072
10071
2022-09-24T21:17:14Z
meta>GVarnum-WMF
0
additional strings
10072
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate>
| Connect = <translate>Connect</translate>
| Contribute = <translate>Contribute</translate>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate>
| Facebook = <translate><!--T:15--> Facebook</translate>
| Feedback = {{int:specialblockfeedback}}
| Frequently asked questions = <translate>Frequently asked questions</translate>
| Hello = {{int:hello}}
| Home = <translate><!--T:1--> Home</translate>
| Instagram = <translate><!--T:16--> Instagram</translate>
| Leave Feedback = {{int:specialinvestigate-feedback}}
| LinkedIn = <translate><!--T:17--> LinkedIn</translate>
| Plan = <translate>Plan</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Meta-Wiki = {{int:project-localized-name-metawiki}}
| Projects = <translate>Projects</translate>
| References = <translate>References</translate>
| Research = <translate>Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| See also = <translate>See also</translate>
| Start = <translate>Start</translate>
| Thank you = {{int:thank-you}}
| Twitter = <translate><!--T:18--> Twitter</translate>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki}}
| Wikinews = <translate><!--T:9--> Wikinews</translate>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate>
| Wikisource = <translate><!--T:11--> Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki}}
| Wikitech = {{int:project-localized-name-labswiki}}
| Wikiversity = <translate><!--T:12--> Wikiversity</translate>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate>
|
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
s41xogharl7w6sutvo5pfxh65cguzav
10073
10072
2022-09-24T21:17:38Z
meta>GVarnum-WMF
0
10073
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate>
| Connect = <translate>Connect</translate>
| Contribute = <translate>Contribute</translate>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate>
| Facebook = <translate><!--T:15--> Facebook</translate>
| Feedback = {{int:specialblockfeedback}}
| Frequently asked questions = <translate>Frequently asked questions</translate>
| Hello = {{int:hello}}
| Home = <translate><!--T:1--> Home</translate>
| Instagram = <translate><!--T:16--> Instagram</translate>
| Leave Feedback = {{int:specialinvestigate-feedback}}
| LinkedIn = <translate><!--T:17--> LinkedIn</translate>
| Plan = <translate>Plan</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Meta-Wiki = {{int:project-localized-name-metawiki}}
| Projects = <translate>Projects</translate>
| References = <translate>References</translate>
| Research = <translate>Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| See also = <translate>See also</translate>
| Start = <translate>Start</translate>
| Thank you = {{int:thank-you}}
| Twitter = <translate><!--T:18--> Twitter</translate>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki}}
| Wikinews = <translate><!--T:9--> Wikinews</translate>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate>
| Wikisource = <translate><!--T:11--> Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki}}
| Wikitech = {{int:project-localized-name-labswiki}}
| Wikiversity = <translate><!--T:12--> Wikiversity</translate>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
ldli5itppdfqts9pvmt1cuiqt6iwy7d
10074
10073
2022-09-24T21:17:46Z
meta>GVarnum-WMF
0
Marked this version for translation
10074
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate>
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate>
| Facebook = <translate><!--T:15--> Facebook</translate>
| Feedback = {{int:specialblockfeedback}}
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate>
| Hello = {{int:hello}}
| Home = <translate><!--T:1--> Home</translate>
| Instagram = <translate><!--T:16--> Instagram</translate>
| Leave Feedback = {{int:specialinvestigate-feedback}}
| LinkedIn = <translate><!--T:17--> LinkedIn</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Meta-Wiki = {{int:project-localized-name-metawiki}}
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| See also = <translate><!--T:26--> See also</translate>
| Start = <translate><!--T:27--> Start</translate>
| Thank you = {{int:thank-you}}
| Twitter = <translate><!--T:18--> Twitter</translate>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki}}
| Wikinews = <translate><!--T:9--> Wikinews</translate>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate>
| Wikisource = <translate><!--T:11--> Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki}}
| Wikitech = {{int:project-localized-name-labswiki}}
| Wikiversity = <translate><!--T:12--> Wikiversity</translate>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
etb28avoxye0jjvj5tiagpc05e6sgjr
10075
10074
2022-09-24T21:25:02Z
meta>GVarnum-WMF
0
/{{CURRENTCONTENTLANGUAGE}}
10075
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate>
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate>
| Facebook = <translate><!--T:15--> Facebook</translate>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}
| Home = <translate><!--T:1--> Home</translate>
| Instagram = <translate><!--T:16--> Instagram</translate>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}
| LinkedIn = <translate><!--T:17--> LinkedIn</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| See also = <translate><!--T:26--> See also</translate>
| Start = <translate><!--T:27--> Start</translate>
| Thank you = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}
| Twitter = <translate><!--T:18--> Twitter</translate>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikinews = <translate><!--T:9--> Wikinews</translate>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate>
| Wikisource = <translate><!--T:11--> Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikiversity = <translate><!--T:12--> Wikiversity</translate>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
lx7p6m76wm3suya9m8ykaeugjo8ovhu
10076
10075
2022-09-24T21:28:46Z
meta>GVarnum-WMF
0
ce
10076
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate>
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate>
| Facebook = <translate><!--T:15--> Facebook</translate>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}
| Home = <translate><!--T:1--> Home</translate>
| Instagram = <translate><!--T:16--> Instagram</translate>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}
| LinkedIn = <translate><!--T:17--> LinkedIn</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| See also = <translate><!--T:26--> See also</translate>
| Start = <translate><!--T:27--> Start</translate>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}
| Twitter = <translate><!--T:18--> Twitter</translate>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikinews = <translate><!--T:9--> Wikinews</translate>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate>
| Wikisource = <translate><!--T:11--> Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikiversity = <translate><!--T:12--> Wikiversity</translate>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
msnx580pvp9z1z5cv7qs2sw0n5y559p
10077
10076
2022-09-24T21:31:24Z
meta>GVarnum-WMF
0
GVarnum-WMF moved page [[Template:Int content]] to [[Template:Int string]] without leaving a redirect: Part of translatable page "Template:Int content"
10076
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate>
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate>
| Facebook = <translate><!--T:15--> Facebook</translate>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}
| Home = <translate><!--T:1--> Home</translate>
| Instagram = <translate><!--T:16--> Instagram</translate>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}
| LinkedIn = <translate><!--T:17--> LinkedIn</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| See also = <translate><!--T:26--> See also</translate>
| Start = <translate><!--T:27--> Start</translate>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}
| Twitter = <translate><!--T:18--> Twitter</translate>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikinews = <translate><!--T:9--> Wikinews</translate>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate>
| Wikisource = <translate><!--T:11--> Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikiversity = <translate><!--T:12--> Wikiversity</translate>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
msnx580pvp9z1z5cv7qs2sw0n5y559p
10078
10077
2022-09-24T21:38:37Z
meta>GVarnum-WMF
0
spacing fix
10078
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate>
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate>
| Facebook = <translate><!--T:15--> Facebook</translate>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}
| Home = <translate><!--T:1--> Home</translate>
| Instagram = <translate><!--T:16--> Instagram</translate>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}
| LinkedIn = <translate><!--T:17--> LinkedIn</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| See also = <translate><!--T:26--> See also</translate>
| Start = <translate><!--T:27--> Start</translate>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}
| Twitter = <translate><!--T:18--> Twitter</translate>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikinews = <translate><!--T:9--> Wikinews</translate>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate>
| Wikisource = <translate><!--T:11--> Wikisource</translate>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikiversity = <translate><!--T:12--> Wikiversity</translate>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
emadejqooud078dgp66ac3enup72x7o
10079
10078
2022-09-24T21:39:45Z
meta>GVarnum-WMF
0
<noinclude><br /></noinclude>
10079
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
epgvbrf8q833zktizeg0u0f9xg4sx19
10080
10079
2022-09-24T21:40:31Z
meta>GVarnum-WMF
0
<noinclude> == Available strings == </noinclude>
10080
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude>
== Available strings ==
</noinclude>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
aklowrbq4t2wmtgirn25et2u4iw55h9
10081
10080
2022-09-24T21:41:11Z
meta>GVarnum-WMF
0
header fix
10081
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude><translate>
== Available strings ==
</translate></noinclude>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
n8izn6eswpsrooos7072f173ov817df
10082
10081
2022-09-24T21:41:24Z
meta>GVarnum-WMF
0
Marked this version for translation
10082
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude><translate>
== Available strings == <!--T:28-->
</translate></noinclude>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
pm5ujktm262fjzv1i590gs2yzsyf727
10083
10082
2022-09-24T21:42:21Z
meta>GVarnum-WMF
0
formatting
10083
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate>
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
r3d0hnv2vva8uyeridjdjwsgua3386a
10084
10083
2022-09-24T21:42:44Z
meta>GVarnum-WMF
0
format fix
10084
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate>
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
ttxympq2rd7ogm6vq5kls6aekurj5e2
10085
10084
2022-09-24T21:44:16Z
meta>GVarnum-WMF
0
spacing
10085
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate>
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
cl6sriqnx0mvlta37kyu265niplbwqt
10086
10085
2022-09-24T21:46:47Z
meta>GVarnum-WMF
0
test
10086
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate>
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude> |
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
8r30w65vxpn62h8qxwfnqnfo11ix9qn
10087
10086
2022-09-24T21:47:23Z
meta>GVarnum-WMF
0
10087
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate>
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}} |<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
dz82y94d1vbr89z757vs8nchqn2lcsm
10088
10087
2022-09-24T21:48:12Z
meta>GVarnum-WMF
0
test
10088
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate>
</noinclude>
<includeonly>
{{#switch: {{{1|}}} |
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}} |<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
dl48n5mebgwvdcsm54mg745n2quf8m4
10089
10088
2022-09-24T21:49:18Z
meta>GVarnum-WMF
0
formatting
10089
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}} |
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}} |<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
gblrmb03mlb8uv8mgzpwn3uv1ss6f4u
10090
10089
2022-09-24T21:50:35Z
meta>GVarnum-WMF
0
undo some testing
10090
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
5gkznci3uknhcm540d61eflqkuxsco5
10091
10090
2022-09-24T21:55:18Z
meta>GVarnum-WMF
0
Talk to us
10091
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Talk to us = <translate>Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
gyixuqolk7mqgkx1u9ljorewjzm0260
10092
10091
2022-09-24T21:55:24Z
meta>GVarnum-WMF
0
Marked this version for translation
10092
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
c5zjc1k54nlg509i4u3fevnqi7gvsye
10093
10092
2022-09-26T02:49:38Z
meta>GVarnum-WMF
0
additional terms from Common messages / Category:Term missing from Int string template for no term
10093
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate>Closed</translate><noinclude><br /></noinclude>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Open = <translate>Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate>Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Status = <translate>Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Upcoming = <translate>Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
| [[Category:Term missing from Int string template]]<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
khx762pcv53z8la2mvkbum6a0cabdl1
10094
10093
2022-09-26T02:49:49Z
meta>GVarnum-WMF
0
Marked this version for translation
10094
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
| [[Category:Term missing from Int string template]]<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
lqxl6c5uhjcpcr710z5i407esre3gup
10095
10094
2022-09-26T02:54:04Z
meta>GVarnum-WMF
0
formatting
10095
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
| <includeonly>[[Category:String missing from Int string template]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
4x396ntp4t76wiepishmv8kk55zi33s
10096
10095
2022-09-26T02:58:36Z
meta>GVarnum-WMF
0
Pages with a string missing from Int string template cat name fix
10096
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Facebook = <translate><!--T:15--> Facebook</translate><noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Instagram = <translate><!--T:16--> Instagram</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = <translate><!--T:17--> LinkedIn</translate><noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = <translate><!--T:18--> Twitter</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
| <includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
2e3my7evhatkq2t70acoq9k2reddzu0
10097
10096
2022-09-26T15:37:59Z
meta>GVarnum-WMF
0
removing entries already in [[Template:Name]]
10097
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = <translate><!--T:6--> Commons</translate><noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = <translate><!--T:8--> Wikibooks</translate><noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = <translate><!--T:9--> Wikinews</translate><noinclude><br /></noinclude>
| Wikiquote = <translate><!--T:10--> Wikiquote</translate><noinclude><br /></noinclude>
| Wikisource = <translate><!--T:11--> Wikisource</translate><noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = <translate><!--T:12--> Wikiversity</translate><noinclude><br /></noinclude>
| Wikivoyage = <translate><!--T:13--> Wikivoyage</translate><noinclude><br /></noinclude>
| Wiktionary = <translate><!--T:14--> Wiktionary</translate><noinclude><br /></noinclude>
| <includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
cezdk7qyb5keh9h70kecmssm1tyhl9j
10098
10097
2022-09-26T16:35:41Z
meta>GVarnum-WMF
0
entries from wikibase - test use of [[Template:Int]]
10098
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| <includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
cndmqhaykaw70l8ej6tdhtdngup05st
10099
10098
2022-09-26T16:37:51Z
meta>GVarnum-WMF
0
taking out of draft
10099
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages /><translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| <includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
42pdbwgecphtom6ttcieumwj8n2rwmq
10100
10099
2022-09-26T16:47:55Z
meta>GVarnum-WMF
0
{{Help translate/Common messages}}
10100
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| <includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
e5r5xx7kfw9vguyom4oofl5jtz9gzwk
10101
10100
2022-09-26T17:33:27Z
meta>GVarnum-WMF
0
| #default
10101
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = <includeonly>{{{1|}}}[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
4ec7hfkb6l9ybdblfzp6hh1voxminn3
10102
10101
2022-09-26T17:33:58Z
meta>GVarnum-WMF
0
formatting tweak
10102
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Creative Commons = <translate><!--T:7--> Creative Commons</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1}}}<includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
lv3tsvepq9vl5gccvarejmmdtoy0c3x
10103
10102
2022-09-26T18:27:25Z
meta>GVarnum-WMF
0
Moved Creative Commons to [[Template:Name]]
10103
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1}}}<includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
kruq43m9bzhqsom6gpz49917p1h00w1
10104
10103
2022-09-26T18:31:21Z
meta>GVarnum-WMF
0
change support category setup
10104
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]</includeonly>}}}<includeonly>[[Category:Pages with missing string in Template:Int string{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
rg2svdp1v4mfqunc02qznd0ez70w1au
10105
10104
2022-09-26T18:33:50Z
meta>GVarnum-WMF
0
fix cat setup
10105
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]</includeonly>}}}<includeonly>[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
660qhfnmpkzhgwjb0s4lqje4t425ftq
10106
10105
2022-09-26T18:41:44Z
meta>GVarnum-WMF
0
change/fix support cat setup
10106
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1}}}<includeonly>{{#if:{{{1}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
c1zpzorvgggsfwzimbstg5ncsius18t
10107
10106
2022-09-26T18:44:44Z
meta>GVarnum-WMF
0
{{{1<includeonly>|</includeonly>}}}
10107
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
syyby36upm3cnnpxqkk537pm3823phw
10108
10107
2022-09-26T18:45:51Z
meta>GVarnum-WMF
0
#if fix
10108
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
8aj4u642ju0y2pni5khih7ccw07zvdv
10109
10108
2022-09-26T20:09:48Z
meta>Pols12
0
{{CURRENTCONTENTLANGUAGE}}→{{PAGELANGUAGE}}
10109
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int:hello/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = <translate><!--T:5--> Wikimedia Foundation</translate><noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
l906u72ilh9zyzlrtu5dhmxi6natgjv
10110
10109
2022-09-26T20:58:17Z
meta>GVarnum-WMF
0
switch some int: to {{int}} and others to {{label}}
10110
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int|hello}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| No = {{int|research-incentive-answer-negative}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int|thank-you}}<noinclude><br /></noinclude>
| Thank you! = {{int|research-incentive-confirm-msg}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
mdu656k1vksd8f03pdpljnodo08uen3
10111
10110
2022-09-26T20:59:07Z
meta>GVarnum-WMF
0
lingering int:
10111
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int|hello}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| No = {{int|research-incentive-answer-negative}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int|thank-you}}<noinclude><br /></noinclude>
| Thank you! = {{int|research-incentive-confirm-msg}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| Yes = {{int|research-incentive-answer-positive}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
6pxu6uv7it5wip6u9tubf0n00v77vzi
10112
10111
2022-09-26T21:33:38Z
meta>GVarnum-WMF
0
-contextually complex words to translate and apply consistently
10112
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Hello = {{int|hello}}<noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Thank you. = {{int|thank-you}}<noinclude><br /></noinclude>
| Thank you! = {{int|research-incentive-confirm-msg}}<noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
5g05ogokarbegx2l9v4egquypfp5n8x
10113
10112
2022-09-26T21:42:38Z
meta>GVarnum-WMF
0
added sections
10113
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude><translate>
=== Naming related ===
</translate></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
<noinclude><translate>
=== Navigation related ===
</translate></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
<noinclude><translate>
=== Timeline related ===
</translate></noinclude>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
i90cye0do5nmsrkgj4hxxbqsb2qbg3j
10114
10113
2022-09-26T21:42:50Z
meta>GVarnum-WMF
0
Marked this version for translation
10114
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude><translate>
=== Naming related === <!--T:35-->
</translate></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
<noinclude><translate>
=== Navigation related === <!--T:36-->
</translate></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
<noinclude><translate>
=== Timeline related === <!--T:37-->
</translate></noinclude>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
tk0k33mvpwe0j0fwnz4b8e26o901ksp
10115
10114
2022-09-26T21:46:50Z
meta>GVarnum-WMF
0
merged in [[Template:Name]]
10115
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude><translate>
=== Naming related === <!--T:35-->
</translate></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q56669074}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate nowrap>QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
<noinclude><translate>
=== Navigation related === <!--T:36-->
</translate></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
<noinclude><translate>
=== Timeline related === <!--T:37-->
</translate></noinclude>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
kvdzudy96snjpx64tkzbr1t992xkvav
10116
10115
2022-09-26T21:47:09Z
meta>GVarnum-WMF
0
Marked this version for translation
10116
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude><translate>
=== Naming related === <!--T:35-->
</translate></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q56669074}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate nowrap><!--T:38--> QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
<noinclude><translate>
=== Navigation related === <!--T:36-->
</translate></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
<noinclude><translate>
=== Timeline related === <!--T:37-->
</translate></noinclude>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
mdx3qmm3jolyq5zu265hrabpyo5bnmh
10117
10116
2022-09-26T22:29:06Z
meta>GVarnum-WMF
0
label fix
10117
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude><translate>
=== Naming related === <!--T:35-->
</translate></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate nowrap><!--T:38--> QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
<noinclude><translate>
=== Navigation related === <!--T:36-->
</translate></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
<noinclude><translate>
=== Timeline related === <!--T:37-->
</translate></noinclude>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
bh8sw61qrq5vsbridc6adibq3fyznvl
10118
10117
2022-09-26T22:49:29Z
meta>GVarnum-WMF
0
formatting tweak
10118
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude><translate>
=== Naming related === <!--T:35-->
</translate></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate nowrap><!--T:38--> QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /><translate>
=== Navigation related === <!--T:36-->
</translate></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /><translate>
=== Timeline related === <!--T:37-->
</translate></noinclude>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
jmbxxslrvy94bupaoiowavwga22nijq
10119
10118
2022-09-26T22:52:22Z
meta>GVarnum-WMF
0
<translate nowrap>
10119
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate nowrap>
== Available strings == <!--T:28-->
</translate></noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude><translate nowrap>
=== Naming related === <!--T:35-->
</translate></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate nowrap><!--T:38--> QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate nowrap><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /><translate nowrap>
=== Navigation related === <!--T:36-->
</translate></noinclude>
| Connect = <translate nowrap><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate nowrap><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate nowrap><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate nowrap><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate nowrap><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate nowrap><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate nowrap><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate nowrap><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate nowrap><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate nowrap><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /><translate nowrap>
=== Timeline related === <!--T:37-->
</translate></noinclude>
| Closed = <translate nowrap><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate nowrap><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate nowrap><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate nowrap><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate nowrap><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate nowrap><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate nowrap><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
islzdqq3obozxo13hii29ihcybxu4wn
10120
10119
2022-09-26T22:54:38Z
meta>GVarnum-WMF
0
spacing tweaks
10120
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate nowrap>
== Available strings == <!--T:28--></translate></noinclude><includeonly>
{{#switch: {{{1|}}}</includeonly><noinclude><translate nowrap>
=== Naming related === <!--T:35--></translate></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate nowrap><!--T:38--> QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate nowrap><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /><translate nowrap>
=== Navigation related === <!--T:36--></translate></noinclude>
| Connect = <translate nowrap><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate nowrap><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate nowrap><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate nowrap><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate nowrap><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate nowrap><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate nowrap><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate nowrap><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate nowrap><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate nowrap><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /><translate nowrap>
=== Timeline related === <!--T:37--></translate></noinclude>
| Closed = <translate nowrap><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate nowrap><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate nowrap><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate nowrap><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate nowrap><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate nowrap><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate nowrap><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}</noinclude>
i8bd8kn5p4lmd7xflj62bwtwybu0o7f
10121
10120
2022-09-26T22:56:38Z
meta>GVarnum-WMF
0
spacing test
10121
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate nowrap>
== Available strings == <!--T:28--></translate></noinclude><includeonly>
{{#switch: {{{1|}}}</includeonly><noinclude><translate nowrap>
=== Naming related === <!--T:35--></translate>
</noinclude>| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate nowrap><!--T:38--> QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate nowrap><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /><translate nowrap>
=== Navigation related === <!--T:36--></translate>
</noinclude>| Connect = <translate nowrap><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate nowrap><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate nowrap><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate nowrap><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate nowrap><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate nowrap><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate nowrap><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate nowrap><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate nowrap><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate nowrap><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /><translate nowrap>
=== Timeline related === <!--T:37--></translate>
</noinclude>| Closed = <translate nowrap><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate nowrap><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate nowrap><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate nowrap><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate nowrap><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate nowrap><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate nowrap><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}</noinclude>
izgpo1uk4erp6yw3ecqnk8440n7o5m7
10122
10121
2022-09-26T22:59:30Z
meta>GVarnum-WMF
0
remover headers
10122
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate nowrap>
== Available strings == <!--T:28--></translate></noinclude><includeonly>
{{#switch: {{{1|}}}</includeonly>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate nowrap><!--T:38--> QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate nowrap><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
| Connect = <translate nowrap><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate nowrap><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate nowrap><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate nowrap><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate nowrap><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate nowrap><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate nowrap><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate nowrap><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate nowrap><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate nowrap><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Closed = <translate nowrap><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate nowrap><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate nowrap><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate nowrap><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate nowrap><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate nowrap><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate nowrap><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}</noinclude>
ti4i2gyvke06v3g9utrkunhcfa0tn06
10123
10122
2022-09-26T23:01:12Z
meta>GVarnum-WMF
0
code cleanup
10123
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28--></translate></noinclude><includeonly>
{{#switch: {{{1|}}}</includeonly>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}</noinclude>
7ei1qh46ni2tbycyzi507f9tq2kr015
10124
10123
2022-09-26T23:02:57Z
meta>GVarnum-WMF
0
testing fix
10124
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}<translate>
== Available strings == <!--T:28--></translate></noinclude><includeonly>
{{#switch: {{{1|}}}</includeonly>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
}}</includeonly><noinclude>
{{doc}}</noinclude>
s4mbpb827mk3o85d9htulsugfymzvj6
10125
10124
2022-09-26T23:04:58Z
meta>GVarnum-WMF
0
fix test
10125
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>
{{#switch: {{{1|}}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate><noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = <translate><!--T:4--> Wikimedia</translate><noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
| Connect = <translate><!--T:19--> Connect</translate><noinclude><br /></noinclude>
| Contribute = <translate><!--T:20--> Contribute</translate><noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate><noinclude><br /></noinclude>
| Home = <translate><!--T:1--> Home</translate><noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = <translate><!--T:23--> Projects</translate><noinclude><br /></noinclude>
| References = <translate><!--T:24--> References</translate><noinclude><br /></noinclude>
| Research = <translate><!--T:25--> Research</translate><noinclude><br /></noinclude>
| Resources = <translate><!--T:3--> Resources</translate><noinclude><br /></noinclude>
| See also = <translate><!--T:26--> See also</translate><noinclude><br /></noinclude>
| Start = <translate><!--T:27--> Start</translate><noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Closed = <translate><!--T:30--> Closed</translate><noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = <translate><!--T:31--> Open</translate><noinclude><br /></noinclude>
| Plan = <translate><!--T:22--> Plan</translate><noinclude><br /></noinclude>
| Ongoing = <translate><!--T:32--> Ongoing</translate><noinclude><br /></noinclude>
| Status = <translate><!--T:33--> Status</translate><noinclude><br /></noinclude>
| Talk to us = <translate><!--T:29--> Talk to us</translate><noinclude><br /></noinclude>
| Upcoming = <translate><!--T:34--> Upcoming</translate><noinclude><br /></noinclude>
|}}
dhjg12t1tqt633qpcwy74s8fisahgte
10126
10125
2022-09-26T23:06:56Z
meta>GVarnum-WMF
0
code cleanup
10126
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>
{{#switch: {{{1|}}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| Quora |quo = {{label|Q51711}}
| Skype |skype = {{label|Q40984}}
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate>
| Home = <translate><!--T:1--> Home</translate>
| Leave Feedback = {{int|specialinvestigate-feedback}}
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| See also = <translate><!--T:26--> See also</translate>
| Start = <translate><!--T:27--> Start</translate>
| Statistics = {{int|wikimedia-statslink}}
| Closed = <translate><!--T:30--> Closed</translate>
| Done = {{int|Upload-dialog-button-done}}
| Open = <translate><!--T:31--> Open</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| Ongoing = <translate><!--T:32--> Ongoing</translate>
| Status = <translate><!--T:33--> Status</translate>
| Talk to us = <translate><!--T:29--> Talk to us</translate>
| Upcoming = <translate><!--T:34--> Upcoming</translate>
|}}
23k0zxnzyqpg47k9uqk0e18ubqogyhx
10127
10126
2022-09-26T23:07:55Z
meta>GVarnum-WMF
0
spacing
10127
wikitext
text/x-wiki
<noinclude>__NOTOC__<languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| Quora |quo = {{label|Q51711}}
| Skype |skype = {{label|Q40984}}
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate>
| Home = <translate><!--T:1--> Home</translate>
| Leave Feedback = {{int|specialinvestigate-feedback}}
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| See also = <translate><!--T:26--> See also</translate>
| Start = <translate><!--T:27--> Start</translate>
| Statistics = {{int|wikimedia-statslink}}
| Closed = <translate><!--T:30--> Closed</translate>
| Done = {{int|Upload-dialog-button-done}}
| Open = <translate><!--T:31--> Open</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| Ongoing = <translate><!--T:32--> Ongoing</translate>
| Status = <translate><!--T:33--> Status</translate>
| Talk to us = <translate><!--T:29--> Talk to us</translate>
| Upcoming = <translate><!--T:34--> Upcoming</translate>
|}}
la1mxe7ekf9esq1xxolsn3v5qzc6iho
10128
10127
2022-09-26T23:12:05Z
meta>GVarnum-WMF
0
alphabetize strings
10128
wikitext
text/x-wiki
<noinclude>__NOTOC__<languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| Closed = <translate><!--T:30--> Closed</translate>
| Done = {{int|Upload-dialog-button-done}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate>
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Home = <translate><!--T:1--> Home</translate>
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| Leave Feedback = {{int|specialinvestigate-feedback}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Ongoing = <translate><!--T:32--> Ongoing</translate>
| Open = <translate><!--T:31--> Open</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| Quora |quo = {{label|Q51711}}
| See also = <translate><!--T:26--> See also</translate>
| Skype |skype = {{label|Q40984}}
| Start = <translate><!--T:27--> Start</translate>
| Statistics = {{int|wikimedia-statslink}}
| Status = <translate><!--T:33--> Status</translate>
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Talk to us = <translate><!--T:29--> Talk to us</translate>
| Upcoming = <translate><!--T:34--> Upcoming</translate>
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| #default = {{{1<includeonly>|</includeonly>}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
rwxdkju2v6223x2h8ryvz8qfpqcxub9
10129
10128
2022-09-26T23:12:37Z
meta>GVarnum-WMF
0
cleanup
10129
wikitext
text/x-wiki
<noinclude>__NOTOC__<languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| Closed = <translate><!--T:30--> Closed</translate>
| Done = {{int|Upload-dialog-button-done}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate>
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Home = <translate><!--T:1--> Home</translate>
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| Leave Feedback = {{int|specialinvestigate-feedback}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Ongoing = <translate><!--T:32--> Ongoing</translate>
| Open = <translate><!--T:31--> Open</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| Quora |quo = {{label|Q51711}}
| See also = <translate><!--T:26--> See also</translate>
| Skype |skype = {{label|Q40984}}
| Start = <translate><!--T:27--> Start</translate>
| Statistics = {{int|wikimedia-statslink}}
| Status = <translate><!--T:33--> Status</translate>
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Talk to us = <translate><!--T:29--> Talk to us</translate>
| Upcoming = <translate><!--T:34--> Upcoming</translate>
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
0tfe7cjsa4gn0o3bptyiah1bfqgy5ib
10130
10129
2022-09-26T23:29:06Z
meta>GVarnum-WMF
0
remove __NOTOC__
10130
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| Closed = <translate><!--T:30--> Closed</translate>
| Done = {{int|Upload-dialog-button-done}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions = <translate><!--T:21--> Frequently asked questions</translate>
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Home = <translate><!--T:1--> Home</translate>
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| Leave Feedback = {{int|specialinvestigate-feedback}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Ongoing = <translate><!--T:32--> Ongoing</translate>
| Open = <translate><!--T:31--> Open</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| Quora |quo = {{label|Q51711}}
| See also = <translate><!--T:26--> See also</translate>
| Skype |skype = {{label|Q40984}}
| Start = <translate><!--T:27--> Start</translate>
| Statistics = {{int|wikimedia-statslink}}
| Status = <translate><!--T:33--> Status</translate>
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Talk to us = <translate><!--T:29--> Talk to us</translate>
| Upcoming = <translate><!--T:34--> Upcoming</translate>
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
45cqdoy26liahmurektjnrz9gblmz33
10131
10130
2022-10-12T14:25:52Z
meta>GVarnum-WMF
0
additional aliases
10131
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| Closed = <translate><!--T:30--> Closed</translate>
| Done = {{int|Upload-dialog-button-done}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Home = <translate><!--T:1--> Home</translate>
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| Leave Feedback = {{int|specialinvestigate-feedback}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki |mw = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Ongoing = <translate><!--T:32--> Ongoing</translate>
| Open = <translate><!--T:31--> Open</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| Quora |quo = {{label|Q51711}}
| See also = <translate><!--T:26--> See also</translate>
| Skype |skype = {{label|Q40984}}
| Start = <translate><!--T:27--> Start</translate>
| Statistics = {{int|wikimedia-statslink}}
| Status = <translate><!--T:33--> Status</translate>
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Talk to us = <translate><!--T:29--> Talk to us</translate>
| Upcoming = <translate><!--T:34--> Upcoming</translate>
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
catm4pku76hkrcv2upnmrgqr8tiiet9
10132
10131
2022-10-12T14:29:43Z
meta>GVarnum-WMF
0
int fix
10132
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| Closed = <translate><!--T:30--> Closed</translate>
| Done = {{int|Upload-dialog-button-done}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Home = <translate><!--T:1--> Home</translate>
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| Leave Feedback = {{int|specialinvestigate-feedback}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki |mw = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Ongoing = <translate><!--T:32--> Ongoing</translate>
| Open = <translate><!--T:31--> Open</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| Quora |quo = {{label|Q51711}}
| See also = <translate><!--T:26--> See also</translate>
| Skype |skype = {{label|Q40984}}
| Start = <translate><!--T:27--> Start</translate>
| Statistics = {{int|wikimedia-statslink}}
| Status = <translate><!--T:33--> Status</translate>
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Talk to us = <translate><!--T:29--> Talk to us</translate>
| Upcoming = <translate><!--T:34--> Upcoming</translate>
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|Wmf-wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
pkbhhqidav92ond4yhx4iedd7nhuxfi
10133
10132
2022-10-12T14:30:47Z
meta>GVarnum-WMF
0
fix
10133
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| Closed = <translate><!--T:30--> Closed</translate>
| Done = {{int|Upload-dialog-button-done}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Connect = <translate><!--T:19--> Connect</translate>
| Contribute = <translate><!--T:20--> Contribute</translate>
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Home = <translate><!--T:1--> Home</translate>
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| Leave Feedback = {{int|specialinvestigate-feedback}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki |mw = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Ongoing = <translate><!--T:32--> Ongoing</translate>
| Open = <translate><!--T:31--> Open</translate>
| Plan = <translate><!--T:22--> Plan</translate>
| Projects = <translate><!--T:23--> Projects</translate>
| References = <translate><!--T:24--> References</translate>
| Research = <translate><!--T:25--> Research</translate>
| Resources = <translate><!--T:3--> Resources</translate>
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| Quora |quo = {{label|Q51711}}
| See also = <translate><!--T:26--> See also</translate>
| Skype |skype = {{label|Q40984}}
| Start = <translate><!--T:27--> Start</translate>
| Statistics = {{int|wikimedia-statslink}}
| Status = <translate><!--T:33--> Status</translate>
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Talk to us = <translate><!--T:29--> Talk to us</translate>
| Upcoming = <translate><!--T:34--> Upcoming</translate>
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = <translate><!--T:4--> Wikimedia</translate>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wmf-wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
fpzdpdgb4paof2t5g3tud1nik1otp4u
10134
10133
2022-10-12T14:44:23Z
meta>GVarnum-WMF
0
lc:
10134
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation = {{label|Q180}}
| wikimedia foundation, inc. = {{int|wmf-wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
ibwanykso09e36mq9xi5b6g6wj6krew
10135
10134
2022-10-12T14:50:36Z
meta>GVarnum-WMF
0
| #default =
10135
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation = {{label|Q180}}
| wikimedia foundation, inc. = {{int|wmf-wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
cnc760a7zlj254puhw0xzx3p6yi33vp
10136
10135
2022-10-12T14:57:20Z
meta>GVarnum-WMF
0
additional aliases
10136
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wmf-wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
gbru97jck0iapz5mli7pouwe8pkx2uu
10137
10136
2022-10-12T14:58:56Z
meta>GVarnum-WMF
0
int fix
10137
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
llxtr34rsrqvuftnjxo6pltgqcdb32v
10138
10137
2022-10-12T15:00:44Z
meta>GVarnum-WMF
0
test
10138
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
56dhd73pwvasjr64qhecf0y71utuk7a
10139
10138
2022-10-12T15:01:50Z
meta>GVarnum-WMF
0
fix2
10139
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}
|}}
4sbdhynpf2k10zz0omtscosa1i3m191
10140
10139
2022-10-12T15:02:10Z
meta>GVarnum-WMF
0
hot fix
10140
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
229k9gmhfx8tjzys9t85pir1jvx4xtk
10141
10140
2022-10-12T15:04:24Z
meta>GVarnum-WMF
0
return lc:
10141
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
tr95o5zwv2lecxa02l71xbydamseurk
10142
10141
2022-10-12T15:08:29Z
meta>GVarnum-WMF
0
{{{1|{{{string|}}}}}}
10142
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
q2pn0kinsnfpdz00biaoh1cyhpk6icn
10143
10142
2022-10-12T15:10:11Z
meta>GVarnum-WMF
0
{{{1|{{{string|}}}}}}
10143
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
j2vgclu6skrtkrp4ue6zl5edcl1avso
10144
10143
2022-10-12T15:11:45Z
meta>GVarnum-WMF
0
doc|content={{Int string/doc}}
10144
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc|content={{Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
s0huf39er0zq4n8qib37fblsa76dr6v
10145
10144
2022-10-12T15:19:21Z
meta>GVarnum-WMF
0
{{PAGELANGUAGE}}
10145
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc|content={{Int string/doc/{{PAGELANGUAGE}}}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
oca922axh1gy0zqxpt6gmatqumn22l5
10146
10145
2022-10-12T16:40:42Z
meta>GVarnum-WMF
0
LinkedIn
10146
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc|content={{Int string/doc/{{PAGELANGUAGE}}}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
mgwi99d7fya3q4ewtp8kysbvrbc4ha8
10147
10146
2022-10-12T16:59:31Z
meta>GVarnum-WMF
0
{{TNTN|Int string/doc}}
10147
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
smwp0ublljqmcl2kt44r0vj3jll3cdn
10148
10147
2022-10-12T17:22:27Z
meta>GVarnum-WMF
0
<includeonly>
10148
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| plan = <translate><!--T:22--> Plan</translate>
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
fm6qzk0wkn8l7zgmst5efnv7c8pjfiv
10149
10148
2022-10-13T17:29:33Z
meta>GVarnum-WMF
0
table headers
10149
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| name = {{int|allmessagesname}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| photo = <translate>Photo</translate>
| plan = <translate><!--T:22--> Plan</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
h0jr16proixek9ebp9mkw9gwac9n5a8
10150
10149
2022-10-13T17:29:43Z
meta>GVarnum-WMF
0
Marked this version for translation
10150
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| name = {{int|allmessagesname}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| photo = <translate><!--T:39--> Photo</translate>
| plan = <translate><!--T:22--> Plan</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
f3btiwd65awgffqoeedjlnx1c3w1mam
10151
10150
2022-10-13T21:33:39Z
meta>GVarnum-WMF
0
fb alias for Facebook
10151
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = <translate><!--T:1--> Home</translate>
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| name = {{int|allmessagesname}}
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| photo = <translate><!--T:39--> Photo</translate>
| plan = <translate><!--T:22--> Plan</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| start = <translate><!--T:27--> Start</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
m52jcphvn62c27qry4ktxwcjpp5pzm8
10152
10151
2022-10-29T08:12:36Z
meta>GVarnum-WMF
0
+navigation
10152
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate>Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate>Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = <translate>Membership</translate>
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate>Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate>Overview</translate>
| participate = <translate>Participate</translate>
| photo = <translate><!--T:39--> Photo</translate>
| plan = <translate><!--T:22--> Plan</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| reports = <translate>Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate>Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate>Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate>Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
02gl12gx2njlkbkz3za827mbcasl73i
10153
10152
2022-10-29T08:12:56Z
meta>GVarnum-WMF
0
Marked this version for translation
10153
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = <translate><!--T:42--> Membership</translate>
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| photo = <translate><!--T:39--> Photo</translate>
| plan = <translate><!--T:22--> Plan</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| reports = <translate><!--T:46--> Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
a0hli9iu2vrzt7ub8qkgpgfblbfhjo8
10154
10153
2022-10-29T08:20:18Z
meta>GVarnum-WMF
0
+table headers
10154
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = <translate><!--T:20--> Contribute</translate>
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = <translate><!--T:42--> Membership</translate>
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| photo = <translate><!--T:39--> Photo</translate>
| plan = <translate><!--T:22--> Plan</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| reports = <translate><!--T:46--> Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
lr4516fmpar94wuswiu52oky4z85yt0
10155
10154
2022-10-29T08:50:16Z
meta>GVarnum-WMF
0
int entries
10155
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = <translate><!--T:21--> Frequently asked questions</translate>
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = <translate><!--T:42--> Membership</translate>
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| photo = <translate><!--T:39--> Photo</translate>
| plan = <translate><!--T:22--> Plan</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| reports = <translate><!--T:46--> Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ro313psksjcrj0dkgjqdqpir8r7t9n7
10156
10155
2022-10-29T08:54:07Z
meta>GVarnum-WMF
0
translate to int
10156
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = <translate><!--T:42--> Membership</translate>
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| photo = <translate><!--T:39--> Photo</translate>
| plan = <translate><!--T:22--> Plan</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| reports = <translate><!--T:46--> Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
giifk8vh1rqq2qxyxhe6o6pnitxs1um
10157
10156
2022-10-29T08:57:05Z
meta>GVarnum-WMF
0
translate to label
10157
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| photo = <translate><!--T:39--> Photo</translate>
| plan = <translate><!--T:22--> Plan</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| reports = <translate><!--T:46--> Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
48vvid1iqbl0ywtadjf2a5vr8bfpico
10158
10157
2022-10-29T09:08:55Z
meta>GVarnum-WMF
0
photo -> image
10158
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = <translate><!--T:22--> Plan</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| reports = <translate><!--T:46--> Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
4ramq9hqp41u8l989ciidpw2a8rkplr
10159
10158
2022-10-29T09:11:58Z
meta>GVarnum-WMF
0
translate to label
10159
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{label|Q1371819}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| reports = <translate><!--T:46--> Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
cfsohx3b7791b2cljwwa3bdbvy5l6ro
10160
10159
2022-10-29T09:12:35Z
meta>GVarnum-WMF
0
{{ucfirst:}} fix
10160
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = <translate><!--T:23--> Projects</translate>
| references = <translate><!--T:24--> References</translate>
| reports = <translate><!--T:46--> Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
swuqfm84lb15j458l8n7b6rc3awslcl
10161
10160
2022-10-29T09:16:22Z
meta>GVarnum-WMF
0
translate to int
10161
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = <translate><!--T:24--> References</translate>
| reports = <translate><!--T:46--> Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
73z2okqv0rtrngjkjwx240806xqwc5y
10162
10161
2022-10-29T09:19:33Z
meta>GVarnum-WMF
0
translate to int
10162
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = <translate><!--T:25--> Research</translate>
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
fzxqyzr1nr13o7sj6e5dk06t88v8dr8
10163
10162
2022-10-29T09:24:35Z
meta>GVarnum-WMF
0
translate to label
10163
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = <translate><!--T:3--> Resources</translate>
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
9evfrvkd93gr8w6hx8akqjesul461dc
10164
10163
2022-10-29T09:26:11Z
meta>GVarnum-WMF
0
translate to int
10164
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = <translate><!--T:27--> Start</translate>
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
6c8xueq3352l1avhvli8phsyvcukwsn
10165
10164
2022-10-29T09:39:45Z
meta>GVarnum-WMF
0
translate to int
10165
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = <translate><!--T:33--> Status</translate>
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
0osi4k79cz5wftbdserc51ss85rhse9
10166
10165
2022-10-29T09:43:44Z
meta>GVarnum-WMF
0
translate to int
10166
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = <translate><!--T:34--> Upcoming</translate>
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
d025dxj3gkrjy36p9zkftza52f9qpc6
10167
10166
2022-10-29T09:48:16Z
meta>GVarnum-WMF
0
translate to label
10167
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = <translate><!--T:4--> Wikimedia</translate>
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
os111tk3n6qd1ldf7jrxo7h0bn79351
10168
10167
2022-10-29T09:52:13Z
meta>GVarnum-WMF
0
translate to int
10168
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ozsv04ur0ovc8hb4y6xx3trj2i2jxxv
10169
10168
2022-10-29T09:56:56Z
meta>GVarnum-WMF
0
cap fix
10169
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
4bx64mjl8fwcti1jt508obx7j8td32r
10170
10169
2022-10-29T09:59:10Z
meta>GVarnum-WMF
0
formatting fix
10170
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
bmslp9obd71t402t3pr5qqhq07c8lk5
10171
10170
2022-11-03T12:19:55Z
meta>GVarnum-WMF
0
additional names
10171
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
fc3qx8vdrs5t3h8rkj7q0y8w87haul1
10172
10171
2022-11-04T20:17:55Z
meta>GVarnum-WMF
0
more names
10172
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encylopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
aiasbwv8sonbg4og0fiof8h6f3wk8zx
10173
10172
2022-11-04T20:50:10Z
meta>GVarnum-WMF
0
typo
10173
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
7tedl6zxzl5tgz05gl4mxfw5w84xrti
10174
10173
2022-11-04T20:56:13Z
meta>GVarnum-WMF
0
+yahoo
10174
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
aehgwd5afcaekb5aetryfgeou4curs7
10175
10174
2022-11-04T21:03:46Z
meta>GVarnum-WMF
0
+headers
10175
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = <translate>Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
1texmhl351tihkivovj55boonjt53q4
10176
10175
2022-11-04T21:03:53Z
meta>GVarnum-WMF
0
Marked this version for translation
10176
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
gt7z0zasiob1gbftbxh1fcd17oraejg
10177
10176
2022-11-04T21:16:20Z
meta>GVarnum-WMF
0
+Wikipedia
10177
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikipedia = {{label|Q52}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
f1zupc9s8rhdhq5iyv82nfjp6s5ex69
10178
10177
2022-11-09T09:11:13Z
meta>GVarnum-WMF
0
+Other
10178
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikipedia = {{label|Q52}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
kekfpteq7imbbvlpzrj48yn4h8l69oj
10179
10178
2022-11-09T09:22:27Z
meta>GVarnum-WMF
0
+total
10179
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{label|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{label|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikipedia = {{label|Q52}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
l9yfabom6zc153of15wj0xn0253vi6h
10180
10179
2022-11-09T09:29:25Z
meta>GVarnum-WMF
0
+average
10180
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{label|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{label|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{label|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikipedia = {{label|Q52}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
kf4edsv6p3s2tizhpsb7cgkrjb8xex1
10181
10180
2023-01-14T18:37:08Z
meta>Pols12
0
{{[[Template:LabelT|LabelT]]}} (uses page language instead of interface language). −useless {{TNTN}} in {{doc}} call
10181
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
kbnx50hirf324jxcvbqhpotsy6xdoa6
10182
10181
2023-01-14T18:39:03Z
meta>Pols12
0
Oops: doc page name is needed, sorry.
10182
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
284ai7fg80v2eicuvhzwmo8lb2cyg22
10183
10182
2023-02-05T18:57:58Z
meta>Pols12
0
+Matrix
10183
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
d8dxbs0846tniq8a9il4lhosefzqq5f
10184
10183
2023-03-09T21:24:20Z
meta>GVarnum-WMF
0
no / yes
10184
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|createpage-no}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|createpage-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
lmbvidbeaelee6nwcno03p9hngzpj8x
10185
10184
2023-03-09T21:37:58Z
meta>GVarnum-WMF
0
10185
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
aw97q1nueplbw89sp4l342qkblql078
10186
10185
2023-03-14T18:03:05Z
meta>GVarnum-WMF
0
back to top
10186
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = <translate><!--T:40--> Background</translate>
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
aykstmbdtq9w0v7ykthl9f9y2ptn76j
10187
10186
2023-03-14T18:03:44Z
meta>GVarnum-WMF
0
10187
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
3wrcts24paroxiclv58omptbbybtpv4
10188
10187
2023-03-15T01:35:10Z
meta>GVarnum-WMF
0
category
10188
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|visualeditor-dialog-meta-categories-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
7uz0lz1oslahcag25jv5x4vhnmwbq39
10189
10188
2023-03-15T01:36:36Z
meta>GVarnum-WMF
0
10189
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
b21r83x51zshw0elrosroylqbhfxj9p
10190
10189
2023-03-15T01:58:46Z
meta>GVarnum-WMF
0
noticeboard
10190
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate>Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
kijwzy28xwnhkze354rmnnm5dfp5me5
10191
10190
2023-03-15T02:00:57Z
meta>GVarnum-WMF
0
Marked this version for translation
10191
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
94pghqspgvuavri2n1ubce4eoqqublz
10192
10191
2023-03-28T06:06:33Z
meta>GVarnum-WMF
0
Wikimedia projects, Roadmap
10192
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
fxflfpnpqvo5x98m6i1o6vrjf7ez88x
10193
10192
2023-04-09T19:17:40Z
meta>Pols12
0
+Lingua Libre
10193
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
e9sau0v8u8rew3pg6lsyyyvq4t1ofdy
10194
10193
2023-05-01T13:46:10Z
meta>Pols12
0
+Phabricator
10194
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
7gv5taxsql6mj3zjskogsq4udnx893e
10195
10194
2023-05-25T12:21:58Z
meta>GVarnum-WMF
0
| approve = {{int|Wikilambda-function-details-table-approve}}
10195
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
bzxkatrx0i4d5alabmfyw4pgrk7fkhn
10196
10195
2023-06-20T18:58:51Z
meta>GVarnum-WMF
0
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
10196
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ar0tiui7yfdo8jymaedbhm6cvwmtrwu
10197
10196
2023-08-11T15:03:04Z
meta>GVarnum-WMF
0
activities = <translate>Activities</translate>
10197
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = <translate>Activities</translate>
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
1f9owb7lz8s49xls01r6nli8gkerpm7
10198
10197
2023-08-11T15:04:27Z
meta>GVarnum-WMF
0
Marked this version for translation
10198
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = <translate><!--T:54--> Activities</translate>
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
25puht83zxh13hqopec2j24ocnz6mkx
10199
10198
2023-08-11T16:05:05Z
meta>GVarnum-WMF
0
minutes = <translate>Minutes</translate>
10199
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = <translate><!--T:54--> Activities</translate>
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| minutes = <translate>Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
n5ememt3hd8hgyyaanbzdgwhax7s4p3
10200
10199
2023-08-11T16:05:23Z
meta>GVarnum-WMF
0
Marked this version for translation
10200
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = <translate><!--T:54--> Activities</translate>
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
5b0cmwne4ygg2o3ewhfahhay2wj8g06
10201
10200
2023-08-12T11:46:01Z
meta>Minorax
0
10201
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = <translate><!--T:54--> Activities</translate>
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = <translate> Blog</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
s58xnt7sxak2zt6umoxav7fw111oi7q
10202
10201
2023-08-12T11:46:53Z
meta>Minorax
0
Marked this version for translation
10202
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = <translate><!--T:54--> Activities</translate>
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = <translate> <!--T:56--> Blog</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
kpgc1aru9z9xmvetxvgafo4pwjau4hz
10203
10202
2023-10-04T00:25:16Z
meta>GVarnum-WMF
0
+Wikimania and Wikifunctions
10203
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = <translate><!--T:54--> Activities</translate>
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = <translate> <!--T:56--> Blog</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
pxpvg3j42l04v9az3zpscfb8vr95zuq
10204
10203
2023-10-14T06:52:23Z
meta>GVarnum-WMF
0
archives = <translate>Archives</translate>
10204
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = <translate>Archives</translate>
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = <translate> <!--T:56--> Blog</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
904e7acw8hkcfmz7hdmimlpis6qtltq
10205
10204
2023-10-14T06:52:38Z
meta>GVarnum-WMF
0
Marked this version for translation
10205
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = <translate><!--T:57--> Archives</translate>
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = <translate> <!--T:56--> Blog</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
2w06zv3t2jlxaxpgm7dtff6i9e5da47
10206
10205
2023-10-15T13:22:34Z
meta>Minorax
0
10206
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = <translate><!--T:57--> Archives</translate>
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = <translate><!--T:56--> Blog</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
92lsv0oaxfvwo8ezvmx42uhv7973euj
10207
10206
2024-01-19T00:14:46Z
meta>GVarnum-WMF
0
additional Wikimedia names
10207
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = <translate><!--T:57--> Archives</translate>
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = <translate><!--T:56--> Blog</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = <translate>Wikimedia Foundation projects</translate>
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = <translate>Wikimedia Mailservices</translate>
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = <translate>Wikistats</translate>
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
jjpvmy77e5gvids7fixwhqsunostq8g
10208
10207
2024-01-19T00:16:15Z
meta>GVarnum-WMF
0
Marked this version for translation
10208
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = <translate><!--T:57--> Archives</translate>
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = <translate><!--T:56--> Blog</translate>
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = <translate><!--T:58--> Wikimedia Foundation projects</translate>
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = <translate><!--T:59--> Wikimedia Mailservices</translate>
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = <translate><!--T:60--> Wikistats</translate>
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
9kixyh8eewn21yn97wdbmc9ftyg47ne
10209
10208
2024-01-19T00:17:03Z
meta>GVarnum-WMF
0
blog -> Q30849
10209
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = <translate><!--T:57--> Archives</translate>
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = <translate><!--T:58--> Wikimedia Foundation projects</translate>
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = <translate><!--T:59--> Wikimedia Mailservices</translate>
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = <translate><!--T:60--> Wikistats</translate>
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
jynbykn954qtfzbco6qpe3xwt1b8azl
10210
10209
2024-01-19T00:31:13Z
meta>GVarnum-WMF
0
10210
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = <translate><!--T:57--> Archives</translate>
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = <translate><!--T:52--> Roadmap</translate>
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = <translate><!--T:58--> Wikimedia Foundation projects</translate>
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = <translate><!--T:59--> Wikimedia Mailservices</translate>
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = <translate><!--T:60--> Wikistats</translate>
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
cvzspfktwo4xgxdzsg95jky01zyuey0
10211
10210
2024-01-19T01:04:12Z
meta>GVarnum-WMF
0
roadmap = {{ucfirst:{{labelT|Q106485006}}}}
10211
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = <translate><!--T:57--> Archives</translate>
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = <translate><!--T:58--> Wikimedia Foundation projects</translate>
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = <translate><!--T:59--> Wikimedia Mailservices</translate>
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = <translate><!--T:60--> Wikistats</translate>
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
7ijmgi4e1xwgcwofdpg29virxiu89nq
10212
10211
2024-01-19T01:15:31Z
meta>GVarnum-WMF
0
archives = {{ucfirst:{{labelT|Q56648173}}}}
10212
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = <translate><!--T:55--> Minutes</translate>
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = <translate><!--T:58--> Wikimedia Foundation projects</translate>
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = <translate><!--T:59--> Wikimedia Mailservices</translate>
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = <translate><!--T:60--> Wikistats</translate>
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
dk1klykncu7csei9t4tgjmaybh32qcq
10213
10212
2024-01-19T01:17:57Z
meta>GVarnum-WMF
0
minutes = {{ucfirst:{{labelT|Q2085515}}}}
10213
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = <translate><!--T:58--> Wikimedia Foundation projects</translate>
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = <translate><!--T:59--> Wikimedia Mailservices</translate>
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = <translate><!--T:60--> Wikistats</translate>
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ms79wqs853ijvf0lom2d8o00ejevfb3
10214
10213
2024-01-24T01:46:16Z
meta>GVarnum-WMF
0
| about = {{int|About}}
10214
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|About}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = <translate><!--T:58--> Wikimedia Foundation projects</translate>
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = <translate><!--T:59--> Wikimedia Mailservices</translate>
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = <translate><!--T:60--> Wikistats</translate>
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
7k7cqmathedz5jhr5sfwkzyubu220my
10215
10214
2024-02-16T19:33:54Z
meta>GVarnum-WMF
0
agenda = {{int|wm-commonstrings-agenda}}
10215
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|About}}
| activities = <translate><!--T:54--> Activities</translate>
| agenda = {{int|wm-commonstrings-agenda}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = <translate><!--T:40--> Background</translate>
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = <translate><!--T:30--> Closed</translate>
| done = {{int|upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = <translate><!--T:19--> Connect</translate>
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = <translate><!--T:41--> Events</translate>
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = <translate><!--T:43--> Objectives</translate>
| ongoing = <translate><!--T:32--> Ongoing</translate>
| open = <translate><!--T:31--> Open</translate>
| other = {{int|visualeditor-shortcuts-other}}
| overview = <translate><!--T:44--> Overview</translate>
| participate = <translate><!--T:45--> Participate</translate>
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = <translate><!--T:50--> Questions?</translate>
| quicksurveys |qsurveys = <translate><!--T:38--> QuickSurveys</translate>
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = <translate><!--T:46--> Reports</translate>
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = <translate><!--T:47--> Scope</translate>
| see also = <translate><!--T:26--> See also</translate>
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = <translate><!--T:48--> Staff</translate>
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = <translate><!--T:29--> Talk to us</translate>
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = <translate><!--T:49--> Updates</translate>
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = <translate><!--T:58--> Wikimedia Foundation projects</translate>
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = <translate><!--T:59--> Wikimedia Mailservices</translate>
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = <translate><!--T:53--> Wikimedia projects</translate>
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = <translate><!--T:60--> Wikistats</translate>
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ls920jy85axgvv9jex4mlm0wotnrxf9
10216
10215
2024-02-23T06:49:59Z
meta>GVarnum-WMF
0
more use of system messages
10216
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = {{int|wm-commonstrings-staff}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
qcg2dcblcdmyh36xbglkw1k4xec9f3h
10217
10216
2024-02-23T07:00:34Z
meta>GVarnum-WMF
0
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
10217
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = {{int|wm-commonstrings-staff}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ldzhogyhu5zk51io49h3lkp1sa6kfkh
10218
10217
2024-02-23T07:30:22Z
meta>GVarnum-WMF
0
more use of system messages; test wikipedia = {{int|project-localized-name-testwiki}}; wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
10218
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = {{int|wm-commonstrings-staff}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ne3e0iiw0t8155bxdn8l5u073agqx7k
10219
10218
2024-02-23T07:50:17Z
meta>GVarnum-WMF
0
alphabetizing fixes
10219
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = <translate><!--T:54--> Activities</translate>
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = <translate><!--T:51--> Noticeboard</translate>
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
0or239uuqok4iowwjc3co8g2r3eyjkm
10220
10219
2024-03-06T06:38:00Z
meta>GVarnum-WMF
0
more use of system messages
10220
wikitext
text/x-wiki
<noinclude><languages /><translate><tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
0nultkh9ejzf415pllmno7wjrujv5we
10221
10220
2024-03-06T06:38:26Z
meta>GVarnum-WMF
0
Marked this version for translation
10221
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
cn9fjabfldo9zs74tk838kicovk02mu
10222
10221
2024-03-06T06:47:46Z
meta>GVarnum-WMF
0
<translate>External links</translate>
10222
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = <translate>External links</translate>
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
hfhbuybkqv2rsg28hjzzvqxi31x30z1
10223
10222
2024-03-06T06:48:08Z
meta>GVarnum-WMF
0
Marked this version for translation
10223
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = <translate><!--T:62--> External links</translate>
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
6trgplg2swb3avwx7hmqgcyhz6jbg4x
10224
10223
2024-03-06T06:57:08Z
meta>GVarnum-WMF
0
more use of system messages
10224
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = <translate><!--T:62--> External links</translate>
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
n615hgjcrbw4xtrzc70vi3ch8yyj80j
10225
10224
2024-03-06T08:27:33Z
meta>GVarnum-WMF
0
translations = {{int|centralnotice-translations}}
10225
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = <translate><!--T:62--> External links</translate>
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ftswywbaxq4q2ibr7tbk1p0uqqh4cj6
10226
10225
2024-03-06T18:06:07Z
meta>MusikBot II
0
Changed protection settings for "[[Template:Int string]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
10225
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = <translate><!--T:62--> External links</translate>
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ftswywbaxq4q2ibr7tbk1p0uqqh4cj6
10227
10226
2024-03-12T19:39:04Z
meta>GVarnum-WMF
0
purpose = <translate>Purpose</translate>
10227
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = <translate><!--T:62--> External links</translate>
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate>Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
p48n2vj7fiwiyiadm87nefpi4p3012n
10228
10227
2024-03-12T19:39:15Z
meta>GVarnum-WMF
0
Marked this version for translation
10228
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = <translate><!--T:62--> External links</translate>
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
gd9drd657zc5x8jtmf8i2u7l8hb56wx
10229
10228
2024-03-12T21:28:13Z
meta>GVarnum-WMF
0
| x |twitter |tw
10229
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = <translate><!--T:62--> External links</translate>
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
c9klxcs3r86z9o33ry71pp30ah51ytu
10230
10229
2024-03-12T21:55:28Z
meta>GVarnum-WMF
0
policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate>Policies and guidelines</translate>
10230
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = <translate><!--T:62--> External links</translate>
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate>Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
nvjit3mtm60idm9kuqswdjfu2kjfzr8
10231
10230
2024-03-12T21:58:36Z
meta>GVarnum-WMF
0
Marked this version for translation
10231
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = <translate><!--T:62--> External links</translate>
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
p10z8mi8lvq48ewh6yqfeo84szpemtu
10232
10231
2024-03-13T20:24:28Z
meta>GVarnum-WMF
0
external links = {{int|wm-commonstrings-externallinks}}
10232
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
4h4lkanfbtzpogu5136yr204boxhtka
10233
10232
2024-03-15T02:27:24Z
meta>GVarnum-WMF
0
| conclusion = <translate>Conclusion</translate>
10233
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = <translate>Conclusion</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
h1gweytf998v8nog8hwebigi64y0pxc
10234
10233
2024-03-15T02:28:15Z
meta>GVarnum-WMF
0
Marked this version for translation
10234
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = <translate><!--T:65--> Conclusion</translate>
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
e9k4jj2szl7iyazes2a9fxtkp80jzn7
10235
10234
2024-03-15T14:44:01Z
meta>GVarnum-WMF
0
diff = {{ucfirst:{{int|diff}}}}
10235
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = <translate><!--T:65--> Conclusion</translate>
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
29kn5ks7z3srxu63rn4ag1954mo8eo8
10236
10235
2024-03-15T14:44:56Z
meta>GVarnum-WMF
0
mediawiki.org = <translate>MediaWiki.org</translate>
10236
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = <translate><!--T:65--> Conclusion</translate>
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki.org = <translate>MediaWiki.org</translate>
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
adbadj62n71ridvx3e6z9wgk5wats6i
10237
10236
2024-03-15T14:47:14Z
meta>GVarnum-WMF
0
10237
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = <translate><!--T:65--> Conclusion</translate>
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
29kn5ks7z3srxu63rn4ag1954mo8eo8
10238
10237
2024-03-15T20:22:42Z
meta>GVarnum-WMF
0
alias
10238
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = <translate><!--T:65--> Conclusion</translate>
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information |more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
a5b7p970x1a0tl3ic0rwilgrinamr5i
10239
10238
2024-03-15T20:24:53Z
meta>GVarnum-WMF
0
stats alias
10239
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = <translate><!--T:65--> Conclusion</translate>
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information |more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics |stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
t9y4cisket9r6tk95l5my0tu0inbbgy
10240
10239
2024-03-15T20:31:04Z
meta>GVarnum-WMF
0
alias adjustments
10240
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = <translate><!--T:65--> Conclusion</translate>
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
i4fi68bm0egeadvf0lx20zn0rqigq61
10241
10240
2024-03-16T01:23:33Z
meta>GVarnum-WMF
0
contact us | contactus = {{int|wm-commonstrings-contactus}}
10241
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = <translate><!--T:65--> Conclusion</translate>
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
tqplza5jvv7o3su91p2kjkckwwgn3ql
10242
10241
2024-03-19T11:19:54Z
meta>GVarnum-WMF
0
10242
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = <translate><!--T:65--> Conclusion</translate>
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
47gfqwfnq9me3ugx6gbqtgi8r7a3kdd
10243
10242
2024-04-03T08:52:09Z
meta>GVarnum-WMF
0
{{int|wm-commonstrings-conclusion}}
10243
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = <translate><!--T:64--> Policies and guidelines</translate>
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = <translate><!--T:63--> Purpose</translate>
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ixouyie0fpvkff0fv8zx3wdjexbb12b
10244
10243
2024-04-03T08:56:49Z
meta>GVarnum-WMF
0
use of system messages
10244
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
4bdgz06dw2vnmf0acir9sx8wo33tvqh
10245
10244
2024-05-22T17:42:24Z
meta>GVarnum-WMF
0
Leadership
10245
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = <translate>Leadership</translate>
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
awuxpah909vh8k82nzadgrui368aqkn
10246
10245
2024-05-22T17:44:16Z
meta>GVarnum-WMF
0
Marked this version for translation
10246
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = <translate><!--T:66--> Leadership</translate>
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
3zd98fuowubprg1s7jd6twapx97ry9k
10247
10246
2024-09-28T02:27:22Z
meta>GVarnum-WMF
0
| tiktok = {{labelT|Q48938223}}
10247
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = <translate><!--T:66--> Leadership</translate>
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
c9cj3epbuudi76ggqr47vexjbwhcjpk
10248
10247
2024-10-24T01:58:27Z
meta>GVarnum-WMF
0
10248
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = <translate>Feedback</translate>
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = <translate><!--T:66--> Leadership</translate>
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
44e6apn5celhylp1l4nl1m0fgw0q709
10249
10248
2024-10-24T01:58:40Z
meta>GVarnum-WMF
0
Marked this version for translation
10249
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = <translate><!--T:67--> Feedback</translate>
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = <translate><!--T:66--> Leadership</translate>
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
1do6t5jgjk6ejbpao90q9jzx980tbuu
10250
10249
2025-01-23T07:52:25Z
meta>Minorax
0
don't see a need to put this into {{#translation:}} categories
10250
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = <translate><!--T:67--> Feedback</translate>
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = <translate><!--T:66--> Leadership</translate>
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string]]}}</includeonly>
}}
3xiwlvt251gq7p4o95ijd87erwpb5rq
10251
10250
2026-02-11T17:25:38Z
meta>GVarnum-WMF
0
| wayback | wayback machine | waybackmachine = {{labelT|Q648266}}
10251
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = <translate><!--T:67--> Feedback</translate>
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = <translate><!--T:66--> Leadership</translate>
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| wayback | wayback machine | waybackmachine = {{labelT|Q648266}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string]]}}</includeonly>
}}
tgrpoe2sf6pokughzb23hxk226rnn05
10252
10251
2026-02-11T17:29:50Z
meta>GVarnum-WMF
0
{{#translation:}}
10252
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = <translate><!--T:67--> Feedback</translate>
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = <translate><!--T:66--> Leadership</translate>
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| wayback | wayback machine | waybackmachine = {{labelT|Q648266}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
bpj4igoiwvyg67ei7mwiirgzot6taeh
10253
10252
2026-08-24T13:00:54Z
RAPTOR7762
18
193 revisions imported from [[:meta:Template:Int_string]]
10252
wikitext
text/x-wiki
<noinclude><languages /><translate><!--T:61--> <tvar name="1"></tvar></translate>
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = <translate><!--T:67--> Feedback</translate>
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = <translate><!--T:66--> Leadership</translate>
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| wayback | wayback machine | waybackmachine = {{labelT|Q648266}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
bpj4igoiwvyg67ei7mwiirgzot6taeh
Tempilet:Int string/en
10
1256
10254
2022-09-24T20:20:02Z
meta>FuzzyBot
0
Updating to match new version of source page
10254
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Home = Home
| MediaWiki = MediaWiki
| Resources = Resources
| Wikimedia = Wikimedia
| Wikimedia Foundation = Wikimedia Foundation
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
px0mz3za0bebl0om8rjn7tpaplusell
10255
10254
2022-09-24T20:32:22Z
meta>FuzzyBot
0
Updating to match new version of source page
10255
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Home = Home
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Resources = Resources
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = Wikimedia
| Wikimedia Foundation = Wikimedia Foundation
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
3byx46rvdu4v1umxn57zlncx0drgrk1
10256
10255
2022-09-24T20:46:42Z
meta>FuzzyBot
0
Updating to match new version of source page
10256
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Hello = {{int:hello}}
| Home = Home
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Resources = Resources
| Thank you = {{int:thank-you}}
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = Wikimedia
| Wikimedia Foundation = Wikimedia Foundation
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
o1wyahi8kwqruwscznvvqkj8a7fv82t
10257
10256
2022-09-24T20:56:41Z
meta>FuzzyBot
0
Updating to match new version of source page
10257
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = Commons
| Creative Commons = Creative Commons
| Feedback = {{int:specialblockfeedback}}
| Hello = {{int:hello}}
| Home = Home
| Leave Feedback = {{int:specialinvestigate-feedback}}
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Meta-Wiki = {{int:project-localized-name-metawiki}}
| Resources = Resources
| Thank you = {{int:thank-you}}
| Wikibooks = Wikibooks
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = Wikimedia
| Wikimedia Commons = {{int:project-localized-name-commonswiki}}
| Wikimedia Foundation = Wikimedia Foundation
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki}}
| Wikinews = Wikinews
| Wikiquote = Wikiquote
| Wikisource = Wikisource
| Wikispecies = {{int:project-localized-name-specieswiki}}
| Wikitech = {{int:project-localized-name-labswiki}}
| Wikiversity = Wikiversity
| Wikivoyage = Wikivoyage
| Wiktionary = Wiktionary
|
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
f1063l2tth1nprbrujpjo4koxhjxls0
10258
10257
2022-09-24T21:16:56Z
meta>FuzzyBot
0
Updating to match new version of source page
10258
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = Commons
| Creative Commons = Creative Commons
| Facebook = Facebook
| Feedback = {{int:specialblockfeedback}}
| Hello = {{int:hello}}
| Home = Home
| Instagram = Instagram
| Leave Feedback = {{int:specialinvestigate-feedback}}
| LinkedIn = LinkedIn
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Meta-Wiki = {{int:project-localized-name-metawiki}}
| Resources = Resources
| Thank you = {{int:thank-you}}
| Twitter = Twitter
| Wikibooks = Wikibooks
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = Wikimedia
| Wikimedia Commons = {{int:project-localized-name-commonswiki}}
| Wikimedia Foundation = Wikimedia Foundation
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki}}
| Wikinews = Wikinews
| Wikiquote = Wikiquote
| Wikisource = Wikisource
| Wikispecies = {{int:project-localized-name-specieswiki}}
| Wikitech = {{int:project-localized-name-labswiki}}
| Wikiversity = Wikiversity
| Wikivoyage = Wikivoyage
| Wiktionary = Wiktionary
|
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
2w2qzf5p47hfyebxrhh232mmai7ok4t
10259
10258
2022-09-24T21:20:43Z
meta>FuzzyBot
0
Updating to match new version of source page
10259
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = Commons
| Connect = Connect
| Contribute = Contribute
| Creative Commons = Creative Commons
| Facebook = Facebook
| Feedback = {{int:specialblockfeedback}}
| Frequently asked questions = Frequently asked questions
| Hello = {{int:hello}}
| Home = Home
| Instagram = Instagram
| Leave Feedback = {{int:specialinvestigate-feedback}}
| LinkedIn = LinkedIn
| Plan = Plan
| MediaWiki = {{int:project-localized-name-mediawikiwiki}}
| Meta-Wiki = {{int:project-localized-name-metawiki}}
| Projects = Projects
| References = References
| Research = Research
| Resources = Resources
| See also = See also
| Start = Start
| Thank you = {{int:thank-you}}
| Twitter = Twitter
| Wikibooks = Wikibooks
| Wikidata = {{int:project-localized-name-wikidatawiki}}
| Wikimedia = Wikimedia
| Wikimedia Commons = {{int:project-localized-name-commonswiki}}
| Wikimedia Foundation = Wikimedia Foundation
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki}}
| Wikinews = Wikinews
| Wikiquote = Wikiquote
| Wikisource = Wikisource
| Wikispecies = {{int:project-localized-name-specieswiki}}
| Wikitech = {{int:project-localized-name-labswiki}}
| Wikiversity = Wikiversity
| Wikivoyage = Wikivoyage
| Wiktionary = Wiktionary
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
06778mzd6ml77xruehg5npaakbopjgb
10260
10259
2022-09-24T21:27:44Z
meta>FuzzyBot
0
Updating to match new version of source page
10260
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = Commons
| Connect = Connect
| Contribute = Contribute
| Creative Commons = Creative Commons
| Facebook = Facebook
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}
| Frequently asked questions = Frequently asked questions
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}
| Home = Home
| Instagram = Instagram
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}
| LinkedIn = LinkedIn
| Plan = Plan
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Projects = Projects
| References = References
| Research = Research
| Resources = Resources
| See also = See also
| Start = Start
| Thank you = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}
| Twitter = Twitter
| Wikibooks = Wikibooks
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia = Wikimedia
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia Foundation = Wikimedia Foundation
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikinews = Wikinews
| Wikiquote = Wikiquote
| Wikisource = Wikisource
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikiversity = Wikiversity
| Wikivoyage = Wikivoyage
| Wiktionary = Wiktionary
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
hk3tp9yowprywsa1m1nwxwybt6o16o3
10261
10260
2022-09-24T21:31:18Z
meta>FuzzyBot
0
Updating to match new version of source page
10261
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = Commons
| Connect = Connect
| Contribute = Contribute
| Creative Commons = Creative Commons
| Facebook = Facebook
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}
| Frequently asked questions = Frequently asked questions
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}
| Home = Home
| Instagram = Instagram
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}
| LinkedIn = LinkedIn
| Plan = Plan
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Projects = Projects
| References = References
| Research = Research
| Resources = Resources
| See also = See also
| Start = Start
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}
| Twitter = Twitter
| Wikibooks = Wikibooks
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia = Wikimedia
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia Foundation = Wikimedia Foundation
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikinews = Wikinews
| Wikiquote = Wikiquote
| Wikisource = Wikisource
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikiversity = Wikiversity
| Wikivoyage = Wikivoyage
| Wiktionary = Wiktionary
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
el2l8ulbd827qgmpj8xlkhes05rrhw1
10262
10261
2022-09-24T21:31:25Z
meta>FuzzyBot
0
FuzzyBot moved page [[Template:Int content/en]] to [[Template:Int string/en]] without leaving a redirect: Part of translatable page "Template:Int content"
10261
wikitext
text/x-wiki
<noinclude>
{{draft}}
<languages />
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = Commons
| Connect = Connect
| Contribute = Contribute
| Creative Commons = Creative Commons
| Facebook = Facebook
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}
| Frequently asked questions = Frequently asked questions
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}
| Home = Home
| Instagram = Instagram
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}
| LinkedIn = LinkedIn
| Plan = Plan
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Projects = Projects
| References = References
| Research = Research
| Resources = Resources
| See also = See also
| Start = Start
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}
| Twitter = Twitter
| Wikibooks = Wikibooks
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia = Wikimedia
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikimedia Foundation = Wikimedia Foundation
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikinews = Wikinews
| Wikiquote = Wikiquote
| Wikisource = Wikisource
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}
| Wikiversity = Wikiversity
| Wikivoyage = Wikivoyage
| Wiktionary = Wiktionary
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
el2l8ulbd827qgmpj8xlkhes05rrhw1
10263
10262
2022-09-24T21:43:46Z
meta>FuzzyBot
0
Updating to match new version of source page
10263
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages />
== Available strings ==
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = Commons<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Facebook = Facebook<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Instagram = Instagram<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = LinkedIn<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = Twitter<noinclude><br /></noinclude>
| Wikibooks = Wikibooks<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = Wikinews<noinclude><br /></noinclude>
| Wikiquote = Wikiquote<noinclude><br /></noinclude>
| Wikisource = Wikisource<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = Wikiversity<noinclude><br /></noinclude>
| Wikivoyage = Wikivoyage<noinclude><br /></noinclude>
| Wiktionary = Wiktionary<noinclude><br /></noinclude>
<includeonly>
}}
</includeonly><noinclude>
{{doc}}
</noinclude>
ppyeui7jnzp0dkkti5fi44wc8tkbfh2
10264
10263
2022-09-24T21:45:18Z
meta>FuzzyBot
0
Updating to match new version of source page
10264
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages />
== Available strings ==
</noinclude>
<includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = Commons<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Facebook = Facebook<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Instagram = Instagram<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = LinkedIn<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = Twitter<noinclude><br /></noinclude>
| Wikibooks = Wikibooks<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = Wikinews<noinclude><br /></noinclude>
| Wikiquote = Wikiquote<noinclude><br /></noinclude>
| Wikisource = Wikisource<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = Wikiversity<noinclude><br /></noinclude>
| Wikivoyage = Wikivoyage<noinclude><br /></noinclude>
| Wiktionary = Wiktionary<noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
53ywnm4so4h11dqyjw9drzef4cnp7sx
10265
10264
2022-09-24T21:49:59Z
meta>FuzzyBot
0
Updating to match new version of source page
10265
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages />
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}} |
</includeonly>
| Commons = Commons<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Facebook = Facebook<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}} |<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Instagram = Instagram<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = LinkedIn<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = Twitter<noinclude><br /></noinclude>
| Wikibooks = Wikibooks<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = Wikinews<noinclude><br /></noinclude>
| Wikiquote = Wikiquote<noinclude><br /></noinclude>
| Wikisource = Wikisource<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = Wikiversity<noinclude><br /></noinclude>
| Wikivoyage = Wikivoyage<noinclude><br /></noinclude>
| Wiktionary = Wiktionary<noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
dgreifshggh5knpa236mxm7u2i7ewrm
10266
10265
2022-09-24T21:51:40Z
meta>FuzzyBot
0
Updating to match new version of source page
10266
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages />
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = Commons<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Facebook = Facebook<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Instagram = Instagram<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = LinkedIn<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = Twitter<noinclude><br /></noinclude>
| Wikibooks = Wikibooks<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = Wikinews<noinclude><br /></noinclude>
| Wikiquote = Wikiquote<noinclude><br /></noinclude>
| Wikisource = Wikisource<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = Wikiversity<noinclude><br /></noinclude>
| Wikivoyage = Wikivoyage<noinclude><br /></noinclude>
| Wiktionary = Wiktionary<noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
o84n1hg7nzuvj5xkfj3t8kd2aiyyugi
10267
10266
2022-09-24T21:58:00Z
meta>FuzzyBot
0
Updating to match new version of source page
10267
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages />
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Commons = Commons<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Facebook = Facebook<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Instagram = Instagram<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = LinkedIn<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = Twitter<noinclude><br /></noinclude>
| Wikibooks = Wikibooks<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = Wikinews<noinclude><br /></noinclude>
| Wikiquote = Wikiquote<noinclude><br /></noinclude>
| Wikisource = Wikisource<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = Wikiversity<noinclude><br /></noinclude>
| Wikivoyage = Wikivoyage<noinclude><br /></noinclude>
| Wiktionary = Wiktionary<noinclude><br /></noinclude>
|<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
t1kc1e2walz2g57ni2pbw2lppijodrk
10268
10267
2022-09-26T02:51:49Z
meta>FuzzyBot
0
Updating to match new version of source page
10268
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages />
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = Commons<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Facebook = Facebook<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Instagram = Instagram<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = LinkedIn<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = Twitter<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = Wikibooks<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = Wikinews<noinclude><br /></noinclude>
| Wikiquote = Wikiquote<noinclude><br /></noinclude>
| Wikisource = Wikisource<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = Wikiversity<noinclude><br /></noinclude>
| Wikivoyage = Wikivoyage<noinclude><br /></noinclude>
| Wiktionary = Wiktionary<noinclude><br /></noinclude>
| [[Category:Term missing from Int string template]]<includeonly>
}}</includeonly><noinclude>
{{doc}}
</noinclude>
j5rtme5r100vfkgyol4t43c41vneeks
10269
10268
2022-09-26T02:56:37Z
meta>FuzzyBot
0
Updating to match new version of source page
10269
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages />
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = Commons<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Facebook = Facebook<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Instagram = Instagram<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = LinkedIn<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = Twitter<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = Wikibooks<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = Wikinews<noinclude><br /></noinclude>
| Wikiquote = Wikiquote<noinclude><br /></noinclude>
| Wikisource = Wikisource<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = Wikiversity<noinclude><br /></noinclude>
| Wikivoyage = Wikivoyage<noinclude><br /></noinclude>
| Wiktionary = Wiktionary<noinclude><br /></noinclude>
| <includeonly>[[Category:String missing from Int string template]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
b2rm2q950unidycca92kdkjirosb3cm
10270
10269
2022-09-26T03:01:22Z
meta>FuzzyBot
0
Updating to match new version of source page
10270
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages />
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = Commons<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Facebook = Facebook<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Instagram = Instagram<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| LinkedIn = LinkedIn<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Twitter = Twitter<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = Wikibooks<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = Wikinews<noinclude><br /></noinclude>
| Wikiquote = Wikiquote<noinclude><br /></noinclude>
| Wikisource = Wikisource<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = Wikiversity<noinclude><br /></noinclude>
| Wikivoyage = Wikivoyage<noinclude><br /></noinclude>
| Wiktionary = Wiktionary<noinclude><br /></noinclude>
| <includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
9ixtoinxsbddde07pgsf3gaa717mfii
10271
10270
2022-09-26T15:39:32Z
meta>FuzzyBot
0
Updating to match new version of source page
10271
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages />
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = Commons<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = Wikibooks<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = Wikinews<noinclude><br /></noinclude>
| Wikiquote = Wikiquote<noinclude><br /></noinclude>
| Wikisource = Wikisource<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = Wikiversity<noinclude><br /></noinclude>
| Wikivoyage = Wikivoyage<noinclude><br /></noinclude>
| Wiktionary = Wiktionary<noinclude><br /></noinclude>
| <includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
6nbxccdmosd4ezzen9336a0ijfjbqwp
10272
10271
2022-09-26T16:36:05Z
meta>FuzzyBot
0
Updating to match new version of source page
10272
wikitext
text/x-wiki
<noinclude>
{{draft}}__NOTOC__
<languages />
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| <includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
kg42zfl8ss8tjjlz0336v4shkow6kgn
10273
10272
2022-09-26T16:38:00Z
meta>FuzzyBot
0
Updating to match new version of source page
10273
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| <includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
fy7au06dhqersj4afkhdmuagfghhdqn
10274
10273
2022-09-26T16:48:06Z
meta>FuzzyBot
0
Updating to match new version of source page
10274
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| <includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
95hc5f911j7kdpmn8lrclmqukxenxlr
10275
10274
2022-09-26T17:34:13Z
meta>FuzzyBot
0
Updating to match new version of source page
10275
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Creative Commons = Creative Commons<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1}}}<includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
r5g5a6qjv6ly36fplghghytx48sxgso
10276
10275
2022-09-26T18:27:42Z
meta>FuzzyBot
0
Updating to match new version of source page
10276
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1}}}<includeonly>[[Category:Pages with a string missing from Int string template{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
3ymldkc88pznps68s3zbqw4x7zlkksf
10277
10276
2022-09-26T18:34:00Z
meta>FuzzyBot
0
Updating to match new version of source page
10277
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]</includeonly>}}}<includeonly>[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]
}}</includeonly><noinclude>
{{doc}}
</noinclude>
9ddsq995r4h6lfk8yjs5cz6svr8ixz0
10278
10277
2022-09-26T18:41:57Z
meta>FuzzyBot
0
Updating to match new version of source page
10278
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1}}}<includeonly>{{#if:{{{1}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
s8cq0kwcfa859gak2gn0c910zuaqzoc
10279
10278
2022-09-26T18:44:54Z
meta>FuzzyBot
0
Updating to match new version of source page
10279
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
osrvsdvklxvmm3z6jqx3bn23a4rr1so
10280
10279
2022-09-26T18:46:02Z
meta>FuzzyBot
0
Updating to match new version of source page
10280
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{CURRENTCONTENTLANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
nnewc3x6xiilxk08yhmz6m682m3sylk
10281
10280
2022-09-26T20:10:45Z
meta>FuzzyBot
0
Updating to match new version of source page
10281
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int:wikibase-sitelinks-sitename-commonswiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Done = {{int:Upload-dialog-button-done/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Feedback = {{int:specialblockfeedback/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int:hello/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int:specialinvestigate-feedback/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| No = {{int:research-incentive-answer-negative/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{int:project-localized-name-mediawikiwiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int:project-localized-name-metawiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int:thank-you/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Thank you! = {{int:research-incentive-confirm-msg/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{int|wikibase-sitelinks-wikibooks}}<noinclude><br /></noinclude>
| Wikidata = {{int:project-localized-name-wikidatawiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int:project-localized-name-commonswiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Foundation = Wikimedia Foundation<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int:wikibase-page-schema-publisher-name/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{int:project-localized-name-incubatorwiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikinews = {{int|wikibase-sitelinks-wikinews}}<noinclude><br /></noinclude>
| Wikiquote = {{int|wikibase-sitelinks-wikiquote}}<noinclude><br /></noinclude>
| Wikisource = {{int|wikibase-sitelinks-wikisource}}<noinclude><br /></noinclude>
| Wikispecies = {{int:project-localized-name-specieswiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikitech = {{int:project-localized-name-labswiki/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| Wikiversity = {{int|wikibase-sitelinks-wikiversity}}<noinclude><br /></noinclude>
| Wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}<noinclude><br /></noinclude>
| Wiktionary = {{int|wikibase-sitelinks-wiktionary}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
cxwqphzoqqfsx37srsry181pexsoh2l
10282
10281
2022-09-26T20:58:42Z
meta>FuzzyBot
0
Updating to match new version of source page
10282
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int|hello}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| No = {{int|research-incentive-answer-negative}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int|thank-you}}<noinclude><br /></noinclude>
| Thank you! = {{int|research-incentive-confirm-msg}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| Yes = {{int:research-incentive-answer-positive/{{PAGELANGUAGE}}}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
oaofa9fr0t4qpxwdrmbpiik6z7cmpmy
10283
10282
2022-09-26T20:59:19Z
meta>FuzzyBot
0
Updating to match new version of source page
10283
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int|hello}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| No = {{int|research-incentive-answer-negative}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int|thank-you}}<noinclude><br /></noinclude>
| Thank you! = {{int|research-incentive-confirm-msg}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| Yes = {{int|research-incentive-answer-positive}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
i0blpjv6c6kpqkwntxvggr5zvnd51su
10284
10283
2022-09-26T21:34:38Z
meta>FuzzyBot
0
Updating to match new version of source page
10284
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly>
| Closed = Closed<noinclude><br /></noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Hello = {{int|hello}}<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Thank you. = {{int|thank-you}}<noinclude><br /></noinclude>
| Thank you! = {{int|research-incentive-confirm-msg}}<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
lix75104730jmc3wz3wym4qsbttgwtx
10285
10284
2022-09-26T21:43:09Z
meta>FuzzyBot
0
Updating to match new version of source page
10285
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude>
=== Naming related ===</noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
<noinclude>
=== Navigation related ===</noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
<noinclude>
=== Timeline related ===</noinclude>
| Closed = Closed<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
oqaejhssklpqwomrko72zitmzjpsign
10286
10285
2022-09-26T21:47:31Z
meta>FuzzyBot
0
Updating to match new version of source page
10286
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude>
=== Naming related ===</noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q56669074}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = QuickSurveys<noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
<noinclude>
=== Navigation related ===</noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
<noinclude>
=== Timeline related ===</noinclude>
| Closed = Closed<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
t5xvg92d4vzj9xpau9e1e4ymbn41i80
10287
10286
2022-09-26T22:29:17Z
meta>FuzzyBot
0
Updating to match new version of source page
10287
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude>
=== Naming related ===</noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = QuickSurveys<noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
<noinclude>
=== Navigation related ===</noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
<noinclude>
=== Timeline related ===</noinclude>
| Closed = Closed<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
doq7ey32q7oja95dgiusabgiu0gmvdg
10288
10287
2022-09-26T22:49:52Z
meta>FuzzyBot
0
Updating to match new version of source page
10288
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}
</includeonly><noinclude>
=== Naming related ===</noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = QuickSurveys<noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br />
=== Navigation related ===</noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br />
=== Timeline related ===</noinclude>
| Closed = Closed<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}
</noinclude>
ic09ak9b7djvj7sdspjxwijksjvg5hu
10289
10288
2022-09-26T22:54:52Z
meta>FuzzyBot
0
Updating to match new version of source page
10289
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}</includeonly><noinclude>
=== Naming related ===</noinclude>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = QuickSurveys<noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br />
=== Navigation related ===</noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br />
=== Timeline related ===</noinclude>
| Closed = Closed<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}</noinclude>
j3ei06lq8wrnl25ua0bc8v3nb4651bh
10290
10289
2022-09-26T22:56:47Z
meta>FuzzyBot
0
Updating to match new version of source page
10290
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}</includeonly><noinclude>
=== Naming related ===
</noinclude>| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = QuickSurveys<noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br />
=== Navigation related ===
</noinclude>| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br />
=== Timeline related ===
</noinclude>| Closed = Closed<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}</noinclude>
sl3bsbbs8impjx2kueelv3474uqq6cf
10291
10290
2022-09-26T22:59:44Z
meta>FuzzyBot
0
Updating to match new version of source page
10291
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
== Available strings ==</noinclude><includeonly>
{{#switch: {{{1|}}}</includeonly>
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = QuickSurveys<noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Closed = Closed<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
| #default = {{{1<includeonly>|</includeonly>}}}<includeonly>{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}</includeonly><noinclude>
{{doc}}</noinclude>
57pawaz1xwl5mcngd1i89gdg6vdkke6
10292
10291
2022-09-26T23:05:08Z
meta>FuzzyBot
0
Updating to match new version of source page
10292
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>
{{#switch: {{{1|}}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}<noinclude><br /></noinclude>
| Creative Commons |cc = {{label|Q43449}}<noinclude><br /></noinclude>
| Etherpad |pad = {{label|Q998543}}<noinclude><br /></noinclude>
| Eventbrite |evtb = {{label|Q5416738}}<noinclude><br /></noinclude>
| Facebook |fb = {{label|Q355}}<noinclude><br /></noinclude>
| Google Forms |gforms = {{label|Q47014869}}<noinclude><br /></noinclude>
| Google Meet |gmeet = {{label|Q56669074}}<noinclude><br /></noinclude>
| Identi.ca |Identica |ica = {{label|Q28773}}<noinclude><br /></noinclude>
| Instagram |insta = {{label|Q209330}}<noinclude><br /></noinclude>
| LimeSurvey |limesurvey = {{label|Q1514978}}<noinclude><br /></noinclude>
| MediaWiki = {{label|Q83}}<noinclude><br /></noinclude>
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}<noinclude><br /></noinclude>
| Qualtrics |qual = {{label|Q7268803}}<noinclude><br /></noinclude>
| QuickSurveys |qsurveys = QuickSurveys<noinclude><br /></noinclude>
| Quora |quo = {{label|Q51711}}<noinclude><br /></noinclude>
| Skype |skype = {{label|Q40984}}<noinclude><br /></noinclude>
| SurveyMonkey |surveymonkey = {{label|Q162852}}<noinclude><br /></noinclude>
| Twitter |tw = {{label|Q918}}<noinclude><br /></noinclude>
| Wikibooks = {{label|Q367}}<noinclude><br /></noinclude>
| Wikidata = {{label|Q2013}}<noinclude><br /></noinclude>
| Wikimedia = Wikimedia<noinclude><br /></noinclude>
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}<noinclude><br /></noinclude>
| Wikimedia Foundation = {{label|Q180}}<noinclude><br /></noinclude>
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}<noinclude><br /></noinclude>
| Wikimedia Incubator = {{label|Q846672}}<noinclude><br /></noinclude>
| Wikinews = {{label|Q964}}<noinclude><br /></noinclude>
| Wikiquote = {{label|Q369}}<noinclude><br /></noinclude>
| Wikisource = {{label|Q263}}<noinclude><br /></noinclude>
| Wikispecies = {{label|Q13679}}<noinclude><br /></noinclude>
| Wikitech = {{label|Q104819161}}<noinclude><br /></noinclude>
| Wikiversity = {{label|Q370}}<noinclude><br /></noinclude>
| Wikivoyage = {{label|Q373}}<noinclude><br /></noinclude>
| Wiktionary = {{label|Q151}}<noinclude><br /></noinclude>
| YouTube | Youtube |yt = {{label|Q866}}<noinclude><br /></noinclude>
| Zoom |zoom = {{label|Q94979732}}<noinclude><br /></noinclude>
| Connect = Connect<noinclude><br /></noinclude>
| Contribute = Contribute<noinclude><br /></noinclude>
| Feedback = {{int|specialblockfeedback}}<noinclude><br /></noinclude>
| Frequently asked questions = Frequently asked questions<noinclude><br /></noinclude>
| Home = Home<noinclude><br /></noinclude>
| Leave Feedback = {{int|specialinvestigate-feedback}}<noinclude><br /></noinclude>
| Projects = Projects<noinclude><br /></noinclude>
| References = References<noinclude><br /></noinclude>
| Research = Research<noinclude><br /></noinclude>
| Resources = Resources<noinclude><br /></noinclude>
| See also = See also<noinclude><br /></noinclude>
| Start = Start<noinclude><br /></noinclude>
| Statistics = {{int|wikimedia-statslink}}<noinclude><br /></noinclude>
| Closed = Closed<noinclude><br /></noinclude>
| Done = {{int|Upload-dialog-button-done}}<noinclude><br /></noinclude>
| Open = Open<noinclude><br /></noinclude>
| Plan = Plan<noinclude><br /></noinclude>
| Ongoing = Ongoing<noinclude><br /></noinclude>
| Status = Status<noinclude><br /></noinclude>
| Talk to us = Talk to us<noinclude><br /></noinclude>
| Upcoming = Upcoming<noinclude><br /></noinclude>
|}}
hcu44lf7f7nyf5ywm4glqnd98akwpge
10293
10292
2022-09-26T23:07:05Z
meta>FuzzyBot
0
Updating to match new version of source page
10293
wikitext
text/x-wiki
<noinclude>__NOTOC__
<languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>
{{#switch: {{{1|}}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = QuickSurveys
| Quora |quo = {{label|Q51711}}
| Skype |skype = {{label|Q40984}}
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = Wikimedia
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| Connect = Connect
| Contribute = Contribute
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions = Frequently asked questions
| Home = Home
| Leave Feedback = {{int|specialinvestigate-feedback}}
| Projects = Projects
| References = References
| Research = Research
| Resources = Resources
| See also = See also
| Start = Start
| Statistics = {{int|wikimedia-statslink}}
| Closed = Closed
| Done = {{int|Upload-dialog-button-done}}
| Open = Open
| Plan = Plan
| Ongoing = Ongoing
| Status = Status
| Talk to us = Talk to us
| Upcoming = Upcoming
|}}
0qyrac4qsogx7c003div0v91ngbm0vn
10294
10293
2022-09-26T23:08:04Z
meta>FuzzyBot
0
Updating to match new version of source page
10294
wikitext
text/x-wiki
<noinclude>__NOTOC__<languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = QuickSurveys
| Quora |quo = {{label|Q51711}}
| Skype |skype = {{label|Q40984}}
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = Wikimedia
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| Connect = Connect
| Contribute = Contribute
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions = Frequently asked questions
| Home = Home
| Leave Feedback = {{int|specialinvestigate-feedback}}
| Projects = Projects
| References = References
| Research = Research
| Resources = Resources
| See also = See also
| Start = Start
| Statistics = {{int|wikimedia-statslink}}
| Closed = Closed
| Done = {{int|Upload-dialog-button-done}}
| Open = Open
| Plan = Plan
| Ongoing = Ongoing
| Status = Status
| Talk to us = Talk to us
| Upcoming = Upcoming
|}}
5wyqkqcwt7jj3kdrm52fe89zopo5282
10295
10294
2022-09-26T23:12:56Z
meta>FuzzyBot
0
Updating to match new version of source page
10295
wikitext
text/x-wiki
<noinclude>__NOTOC__<languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| Closed = Closed
| Done = {{int|Upload-dialog-button-done}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Connect = Connect
| Contribute = Contribute
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions = Frequently asked questions
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Home = Home
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| Leave Feedback = {{int|specialinvestigate-feedback}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Ongoing = Ongoing
| Open = Open
| Plan = Plan
| Projects = Projects
| References = References
| Research = Research
| Resources = Resources
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = QuickSurveys
| Quora |quo = {{label|Q51711}}
| See also = See also
| Skype |skype = {{label|Q40984}}
| Start = Start
| Statistics = {{int|wikimedia-statslink}}
| Status = Status
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Talk to us = Talk to us
| Upcoming = Upcoming
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = Wikimedia
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
rslisbbqauht1bfveihr261qj8quijk
10296
10295
2022-09-26T23:29:47Z
meta>FuzzyBot
0
Updating to match new version of source page
10296
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| Closed = Closed
| Done = {{int|Upload-dialog-button-done}}
| Commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| Connect = Connect
| Contribute = Contribute
| Creative Commons |cc = {{label|Q43449}}
| Etherpad |pad = {{label|Q998543}}
| Eventbrite |evtb = {{label|Q5416738}}
| Facebook |fb = {{label|Q355}}
| Feedback = {{int|specialblockfeedback}}
| Frequently asked questions = Frequently asked questions
| Google Forms |gforms = {{label|Q47014869}}
| Google Meet |gmeet = {{label|Q56669074}}
| Home = Home
| Identi.ca |Identica |ica = {{label|Q28773}}
| Instagram |insta = {{label|Q209330}}
| Leave Feedback = {{int|specialinvestigate-feedback}}
| LimeSurvey |limesurvey = {{label|Q1514978}}
| MediaWiki = {{label|Q83}}
| Meta-Wiki |Meta = {{int|project-localized-name-metawiki}}
| Ongoing = Ongoing
| Open = Open
| Plan = Plan
| Projects = Projects
| References = References
| Research = Research
| Resources = Resources
| Qualtrics |qual = {{label|Q7268803}}
| QuickSurveys |qsurveys = QuickSurveys
| Quora |quo = {{label|Q51711}}
| See also = See also
| Skype |skype = {{label|Q40984}}
| Start = Start
| Statistics = {{int|wikimedia-statslink}}
| Status = Status
| SurveyMonkey |surveymonkey = {{label|Q162852}}
| Talk to us = Talk to us
| Upcoming = Upcoming
| Twitter |tw = {{label|Q918}}
| Wikibooks = {{label|Q367}}
| Wikidata = {{label|Q2013}}
| Wikimedia = Wikimedia
| Wikimedia Commons = {{int|project-localized-name-commonswiki}}
| Wikimedia Foundation = {{label|Q180}}
| Wikimedia Foundation, Inc. = {{int|wikibase-page-schema-publisher-name}}
| Wikimedia Incubator = {{label|Q846672}}
| Wikinews = {{label|Q964}}
| Wikiquote = {{label|Q369}}
| Wikisource = {{label|Q263}}
| Wikispecies = {{label|Q13679}}
| Wikitech = {{label|Q104819161}}
| Wikiversity = {{label|Q370}}
| Wikivoyage = {{label|Q373}}
| Wiktionary = {{label|Q151}}
| YouTube | Youtube |yt = {{label|Q866}}
| Zoom |zoom = {{label|Q94979732}}
| {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
pnks8er6g65ja8c4f6ve3tjyjm3i864
10297
10296
2022-10-12T14:45:17Z
meta>FuzzyBot
0
Updating to match new version of source page
10297
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation = {{label|Q180}}
| wikimedia foundation, inc. = {{int|wmf-wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
rbosy6uuexnfyblva4o8n001jst1mfs
10298
10297
2022-10-12T14:50:49Z
meta>FuzzyBot
0
Updating to match new version of source page
10298
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation = {{label|Q180}}
| wikimedia foundation, inc. = {{int|wmf-wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
e6zadr57lyww76vvgjpcxh1hvysvrcb
10299
10298
2022-10-12T14:57:36Z
meta>FuzzyBot
0
Updating to match new version of source page
10299
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wmf-wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
aold812h71gpk88zc67fe3w6s1ghwlp
10300
10299
2022-10-12T14:59:32Z
meta>FuzzyBot
0
Updating to match new version of source page
10300
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
3544blk2ntxyubovettz1wy6uroftsm
10301
10300
2022-10-12T15:00:59Z
meta>FuzzyBot
0
Updating to match new version of source page
10301
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
|}}
spuyeo7z285m66qpnscbiut8649jsod
10302
10301
2022-10-12T15:02:23Z
meta>FuzzyBot
0
Updating to match new version of source page
10302
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{{1|}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
2kr8pryzuz7nx62tyb91j8u5tktcpqe
10303
10302
2022-10-12T15:04:37Z
meta>FuzzyBot
0
Updating to match new version of source page
10303
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|}}}{{#if:{{{1|}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
ihf9qo82z5uvztcbq1p875xl8huf50e
10304
10303
2022-10-12T15:10:22Z
meta>FuzzyBot
0
Updating to match new version of source page
10304
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
mduuiqmzy6k34qh4hkak5e8f1qg0i65
10305
10304
2022-10-12T15:12:00Z
meta>FuzzyBot
0
Updating to match new version of source page
10305
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc|content={{Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
820pkum4o5n28si17mplnlf6hnx3gzs
10306
10305
2022-10-12T15:19:38Z
meta>FuzzyBot
0
Updating to match new version of source page
10306
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc|content={{Int string/doc/{{PAGELANGUAGE}}}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
89ybhjc63kc2s3tkalvrmg0p2617tly
10307
10306
2022-10-12T16:40:58Z
meta>FuzzyBot
0
Updating to match new version of source page
10307
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{doc|content={{Int string/doc/{{PAGELANGUAGE}}}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
kmia4bmsi9tgxgo3j2ab4lh4z4o6llp
10308
10307
2022-10-12T16:59:53Z
meta>FuzzyBot
0
Updating to match new version of source page
10308
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| #default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}
}}
eflya6k5hpk67ht1cb04e23awnhnz4a
10309
10308
2022-10-12T17:22:43Z
meta>FuzzyBot
0
Updating to match new version of source page
10309
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| ongoing = Ongoing
| open = Open
| plan = Plan
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
aefuecd0ipdgkmfi2yqszf7vkodx9u6
10310
10309
2022-10-13T17:29:54Z
meta>FuzzyBot
0
Updating to match new version of source page
10310
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| name = {{int|allmessagesname}}
| ongoing = Ongoing
| open = Open
| photo = Photo
| plan = Plan
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
j2t7fac99bsevugfvjmuop80u55mpmj
10311
10310
2022-10-13T21:33:52Z
meta>FuzzyBot
0
Updating to match new version of source page
10311
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| home = Home
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| mediawiki |mw = {{label|Q83}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| name = {{int|allmessagesname}}
| ongoing = Ongoing
| open = Open
| photo = Photo
| plan = Plan
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = Projects
| references = References
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| see also = See also
| skype = {{label|Q40984}}
| start = Start
| statistics = {{int|wikimedia-statslink}}
| status = Status
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
eu5ahbm7ohmdwun8p8x8e9skar46z2d
10312
10311
2022-10-29T08:13:04Z
meta>FuzzyBot
0
Updating to match new version of source page
10312
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = Membership
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| photo = Photo
| plan = Plan
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = Projects
| references = References
| reports = Reports
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = Start
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = Status
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| upcoming = Upcoming
| updates = Updates
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
3sgdo96ngz1pzziffizrmqilgc70y93
10313
10312
2022-10-29T08:20:36Z
meta>FuzzyBot
0
Updating to match new version of source page
10313
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = Contribute
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = Membership
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| photo = Photo
| plan = Plan
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = Projects
| references = References
| reports = Reports
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = Start
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = Status
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| type = {{int|math-wikibase-formula-type}}
| upcoming = Upcoming
| updates = Updates
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
i8v2awbsc3fyykq8fp0lu6exmsjf8ag
10314
10313
2022-10-29T08:50:34Z
meta>FuzzyBot
0
Updating to match new version of source page
10314
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = Frequently asked questions
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = Membership
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| photo = Photo
| plan = Plan
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = Projects
| references = References
| reports = Reports
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = Start
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = Status
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| type = {{int|math-wikibase-formula-type}}
| upcoming = Upcoming
| updates = Updates
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
8bgag8s5lmc66dpd96eihf80wzgvfmw
10315
10314
2022-10-29T08:54:34Z
meta>FuzzyBot
0
Updating to match new version of source page
10315
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = Membership
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| photo = Photo
| plan = Plan
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = Projects
| references = References
| reports = Reports
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = Start
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = Status
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| type = {{int|math-wikibase-formula-type}}
| upcoming = Upcoming
| updates = Updates
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
b5v4shqhv7ch9tegb015ggur20sc1o6
10316
10315
2022-10-29T09:13:01Z
meta>FuzzyBot
0
Updating to match new version of source page
10316
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = Projects
| references = References
| reports = Reports
| research = Research
| resources = Resources
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = Start
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = Status
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| type = {{int|math-wikibase-formula-type}}
| upcoming = Upcoming
| updates = Updates
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
tcep8wlacy4osgm7xev64k58fevui15
10317
10316
2022-10-29T09:49:00Z
meta>FuzzyBot
0
Updating to match new version of source page
10317
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = Wikimedia
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
j8b05e50g3f02rn6kbphtwv10ftdu9q
10318
10317
2022-10-29T09:52:29Z
meta>FuzzyBot
0
Updating to match new version of source page
10318
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{int|specialinvestigate-feedback}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
i0ivwn8t3hpa0k5c0wta7jo1r7nzut4
10319
10318
2022-10-29T09:57:11Z
meta>FuzzyBot
0
Updating to match new version of source page
10319
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|Filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
pccfbcat3a0irvy97ixwsy7tdobocx5
10320
10319
2022-10-29T09:59:23Z
meta>FuzzyBot
0
Updating to match new version of source page
10320
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
0zz3rlufu0fnx2vzeh3ph3zk5aecbeq
10321
10320
2022-11-03T12:20:44Z
meta>FuzzyBot
0
Updating to match new version of source page
10321
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ocfeoonf7t2dxj4cy7t1ufrtnnhfhc6
10322
10321
2022-11-04T20:18:13Z
meta>FuzzyBot
0
Updating to match new version of source page
10322
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encylopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
fpyt8petu210637nup6erhmf2pl5a7t
10323
10322
2022-11-04T20:50:26Z
meta>FuzzyBot
0
Updating to match new version of source page
10323
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
0njcy8wszsjt6kjkg6c6guj8darw0nj
10324
10323
2022-11-04T20:56:29Z
meta>FuzzyBot
0
Updating to match new version of source page
10324
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
sbzurardwxflurre7m1x3vyxxo6mhd9
10325
10324
2022-11-04T21:04:01Z
meta>FuzzyBot
0
Updating to match new version of source page
10325
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ao6v5r9959hhvtdq36mx9b4coc2qk76
10326
10325
2022-11-04T21:16:45Z
meta>FuzzyBot
0
Updating to match new version of source page
10326
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikipedia = {{label|Q52}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
rgyg5mqkenm2cu36rgm1bx4jem3vfwd
10327
10326
2022-11-09T09:12:43Z
meta>FuzzyBot
0
Updating to match new version of source page
10327
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| telegram = {{label|Q15616276}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| twitter |tw = {{label|Q918}}
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikipedia = {{label|Q52}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
qyjgtl8e2vj3jhcwz6wj90xq39x8en5
10328
10327
2022-11-09T09:22:46Z
meta>FuzzyBot
0
Updating to match new version of source page
10328
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| telegram = {{label|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{label|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikipedia = {{label|Q52}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
nafwo7dapoggx6gikbs2rr2swcefa8o
10329
10328
2022-11-09T09:29:43Z
meta>FuzzyBot
0
Updating to match new version of source page
10329
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|{{TNTN|Int string/doc}}}}</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{label|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{label|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{label|Q22907849}}
| encarta |msn encarta = {{label|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{label|Q5375741}}
| etherpad |pad = {{label|Q998543}}
| eventbrite |evtb = {{label|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{label|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{label|Q95}}
| google forms |gforms = {{label|Q47014869}}
| google meet |gmeet = {{label|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{label|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{label|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{label|Q1514978}}
| linkedin = {{label|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{label|Q83}}
| membership = {{ucfirst:{{label|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{label|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{label|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{label|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{label|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{label|Q51711}}
| scope = Scope
| see also = See also
| skype = {{label|Q40984}}
| social media = {{ucfirst:{{label|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{label|Q162852}}
| talk to us = Talk to us
| telegram = {{label|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{label|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{label|Q57248993}}}}
| updates = Updates
| whatsapp = {{label|Q1049511}}
| wikibooks = {{label|Q367}}
| wikidata = {{label|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{label|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{label|Q846672}}
| wikinews = {{label|Q964}}
| wikipedia = {{label|Q52}}
| wikiquote = {{label|Q369}}
| wikisource = {{label|Q263}}
| wikispecies = {{label|Q13679}}
| wikitech = {{label|Q104819161}}
| wikiversity = {{label|Q370}}
| wikivoyage = {{label|Q373}}
| wiktionary |wikt = {{label|Q151}}
| yahoo |yahoo! = {{label|Q37093}}
| youtube |yt = {{label|Q866}}
| zoom = {{label|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
53mibz2o7a6mmp3g8u0dqq3hbysj4x0
10330
10329
2023-01-14T18:37:33Z
meta>FuzzyBot
0
Updating to match new version of source page
10330
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
2pd089pbbp3difnj0o9gdeown1426vi
10331
10330
2023-01-14T18:39:34Z
meta>FuzzyBot
0
Updating to match new version of source page
10331
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
73ghzz7gjbghawjufjv31kjkzhbil2m
10332
10331
2023-02-08T16:47:39Z
meta>FuzzyBot
0
Updating to match new version of source page
10332
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
cz1aibtofuwf42nkw8g3brmfedkf4tc
10333
10332
2023-03-09T21:27:39Z
meta>FuzzyBot
0
Updating to match new version of source page
10333
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|createpage-no}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|createpage-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
skg4ffcym8q8s3jpov9rh4gml5ulo1l
10334
10333
2023-03-09T21:40:29Z
meta>FuzzyBot
0
Updating to match new version of source page
10334
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
e7vcxi1g1ezrmt0lsnh24zwl786z66z
10335
10334
2023-03-14T18:04:32Z
meta>FuzzyBot
0
Updating to match new version of source page
10335
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
m5itr2fffj2micjhnw11snjiyb5a7kz
10336
10335
2023-03-15T01:37:17Z
meta>FuzzyBot
0
Updating to match new version of source page
10336
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
q3p0fshmyf48nnjkveoo31kzuvn92q9
10337
10336
2023-03-15T02:01:26Z
meta>FuzzyBot
0
Updating to match new version of source page
10337
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
es2h0ptovyspv6o5j1vpsjv7qt83x16
10338
10337
2023-03-28T06:07:06Z
meta>FuzzyBot
0
Updating to match new version of source page
10338
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
iqc9rxm42urnyrax13ngikx8bu4s255
10339
10338
2023-04-09T19:51:35Z
meta>FuzzyBot
0
Updating to match new version of source page
10339
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
bbybr2nhf4ohi8stvuz8fy095ferz18
10340
10339
2023-05-01T13:46:55Z
meta>FuzzyBot
0
Updating to match new version of source page
10340
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
rbckcuzvkmn8lfmvwjxkcvub0dmlt9k
10341
10340
2023-05-25T12:26:42Z
meta>FuzzyBot
0
Updating to match new version of source page
10341
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
oferwc3kpe2tu2qu762cwpe8nx084dg
10342
10341
2023-06-20T19:02:01Z
meta>FuzzyBot
0
Updating to match new version of source page
10342
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
g6xpxbbc53rqbhsmdx6c2lhgwmjxnl1
10343
10342
2023-08-11T15:04:52Z
meta>FuzzyBot
0
Updating to match new version of source page
10343
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = Activities
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
44iwnqb6mrv3lgrz0bd6mrjjt7tek3a
10344
10343
2023-08-11T16:06:30Z
meta>FuzzyBot
0
Updating to match new version of source page
10344
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = Activities
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| minutes = Minutes
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
t25lf95kqvzyd834epuark5xeosp111
10345
10344
2023-08-12T11:47:17Z
meta>FuzzyBot
0
Updating to match new version of source page
10345
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = Activities
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| blog = Blog
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta = {{int|project-localized-name-metawiki}}
| minutes = Minutes
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ejsy3lbdzpr1mlxm75u6c8tdjs3nqh2
10346
10345
2023-10-04T00:26:16Z
meta>FuzzyBot
0
Updating to match new version of source page
10346
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| activities = Activities
| approve = {{int|Wikilambda-function-details-table-approve}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| blog = Blog
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = Minutes
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
5y9mm24035dupidzf0rvh9op8lp5q5h
10347
10346
2023-10-14T06:53:11Z
meta>FuzzyBot
0
Updating to match new version of source page
10347
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = Activities
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = Archives
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| blog = Blog
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = Minutes
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
pblr5fqls7pz8veyjilg5lu9v1l7nbd
10348
10347
2023-10-15T13:23:55Z
meta>FuzzyBot
0
Updating to match new version of source page
10348
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = Activities
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = Archives
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| blog = Blog
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = Minutes
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
bwyfz5jqeu1rqunxpzw1dbhj3p3jjue
10349
10348
2024-01-19T00:16:45Z
meta>FuzzyBot
0
Updating to match new version of source page
10349
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = Activities
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = Archives
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| blog = Blog
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = Minutes
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = Roadmap
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = Wikimedia Foundation projects
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = Wikimedia Mailservices
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = Wikistats
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
fku61p1a8nk87gcfa0sfmeg63z6j3x7
10350
10349
2024-01-19T01:14:06Z
meta>FuzzyBot
0
Updating to match new version of source page
10350
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = Activities
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = Archives
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = Minutes
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = Wikimedia Foundation projects
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = Wikimedia Mailservices
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = Wikistats
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
haa7m2qfxj3p7j1rvkf7nq35reuide2
10351
10350
2024-01-19T01:16:50Z
meta>FuzzyBot
0
Updating to match new version of source page
10351
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = Activities
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = Minutes
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = Wikimedia Foundation projects
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = Wikimedia Mailservices
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = Wikistats
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
h4107rh5akushh837h2zxo7vmbsaws8
10352
10351
2024-01-19T01:18:46Z
meta>FuzzyBot
0
Updating to match new version of source page
10352
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| activities = Activities
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = Wikimedia Foundation projects
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = Wikimedia Mailservices
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = Wikistats
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
0ljimndkia4hqrw6fi4pqje547vjbuf
10353
10352
2024-01-24T01:47:01Z
meta>FuzzyBot
0
Updating to match new version of source page
10353
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|About}}
| activities = Activities
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|Wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|Exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = Wikimedia Foundation projects
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = Wikimedia Mailservices
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = Wikistats
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
qiipebyr5xinfhoenwtqted8aq9mdcd
10354
10353
2024-02-16T19:35:41Z
meta>FuzzyBot
0
Updating to match new version of source page
10354
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|About}}
| activities = Activities
| agenda = {{int|wm-commonstrings-agenda}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = Background
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = Closed
| done = {{int|upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = Connect
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = Events
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|Growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = Objectives
| ongoing = Ongoing
| open = Open
| other = {{int|visualeditor-shortcuts-other}}
| overview = Overview
| participate = Participate
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = Questions?
| quicksurveys |qsurveys = QuickSurveys
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = Reports
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = Scope
| see also = See also
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = Staff
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = Talk to us
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = Updates
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = Wikimedia Foundation projects
| wikimedia incubator = {{labelT|Q846672}}
| wikimedia mailservices = Wikimedia Mailservices
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = Wikimedia projects
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = Wikistats
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
75cyz4ekw3lhga6eg7g39w5h4jyf9pu
10355
10354
2024-02-23T07:03:49Z
meta>FuzzyBot
0
Updating to match new version of source page
10355
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = Activities
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discussion = {{int|talk}}
| discord = {{labelT|Q22907849}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{labelT|Q83}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| staff = {{int|wm-commonstrings-staff}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{labelT|Q367}}
| wikidata = {{labelT|Q2013}}
| wikimania = {{labelT|Q483279}}
| wikifunctions = {{labelT|Q104587954}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{labelT|Q180}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{labelT|Q964}}
| wikipedia = {{labelT|Q52}}
| wikiquote = {{labelT|Q369}}
| wikisource = {{labelT|Q263}}
| wikispecies = {{labelT|Q13679}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{labelT|Q104819161}}
| wikiversity = {{labelT|Q370}}
| wikivoyage = {{labelT|Q373}}
| wiktionary |wikt = {{labelT|Q151}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
9besgund6tkyrcm4gt4po6e6bo1e28l
10356
10355
2024-02-23T07:51:05Z
meta>FuzzyBot
0
Updating to match new version of source page
10356
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = Activities
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = Noticeboard
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
5e53qy01qtc88vq6yoglb4p4a6lqw4n
10357
10356
2024-03-06T06:38:56Z
meta>FuzzyBot
0
Updating to match new version of source page
10357
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|pagetriage-tags-externallinks-label}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
15rm80pbhgg7o1ewyy9gpc14z6j0m7h
10358
10357
2024-03-06T06:48:41Z
meta>FuzzyBot
0
Updating to match new version of source page
10358
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = External links
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{labelT|Q5760083}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{labelT|Q47467626}}
| wikimedia enterprise = {{labelT|Q106204244}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{labelT|Q42156541}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
tezjt7n2dpr5jixfyugcnd5xic154t7
10359
10358
2024-03-06T06:58:25Z
meta>FuzzyBot
0
Updating to match new version of source page
10359
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = External links
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|Sitematrix-sitetotal}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
1nxjwvnov8m3vvsyd6emp05su1sbwua
10360
10359
2024-03-06T08:29:44Z
meta>FuzzyBot
0
Updating to match new version of source page
10360
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = External links
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
luj2aziq0zzf2aid8wh6qn8y8qzap7p
10361
10360
2024-03-12T19:39:43Z
meta>FuzzyBot
0
Updating to match new version of source page
10361
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = External links
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = Purpose
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| twitter |tw = {{labelT|Q918}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
249wqmjh8vj2ipublf7pt0v63fvv4gb
10362
10361
2024-03-12T21:29:48Z
meta>FuzzyBot
0
Updating to match new version of source page
10362
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = External links
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = Purpose
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
g27h3zh8btj44hxwy056a65cljqlmwq
10363
10362
2024-03-12T21:59:02Z
meta>FuzzyBot
0
Updating to match new version of source page
10363
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = External links
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = Policies and guidelines
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = Purpose
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
p64opswr2b4cfs5q1fqk57wbwzf7dnz
10364
10363
2024-03-13T20:25:21Z
meta>FuzzyBot
0
Updating to match new version of source page
10364
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = Policies and guidelines
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = Purpose
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
058njajv4xb6e0ojdv413g2c1untc01
10365
10364
2024-03-15T02:28:47Z
meta>FuzzyBot
0
Updating to match new version of source page
10365
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = Conclusion
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = Policies and guidelines
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = Purpose
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
gers3v1u4gnolxdll4zdagkrp00r40h
10366
10365
2024-03-15T14:48:01Z
meta>FuzzyBot
0
Updating to match new version of source page
10366
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = Conclusion
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms |gforms = {{labelT|Q47014869}}
| google meet |gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca |identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram |insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki |mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki |meta |metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines |meta-policy-guidelines |policy-guidelines = Policies and guidelines
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = Purpose
| qualtrics |qual = {{labelT|Q7268803}}
| questions |questions? = {{int|wm-commonstrings-questions}}
| quicksurveys |qsurveys = {{int|ext-quicksurveys-name}}
| quora |quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation |wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. |wmf inc |wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary |wikt = {{int|wikibase-sitelinks-wiktionary}}
| x |twitter |tw = {{labelT|Q918}}
| yahoo |yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube |yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
t5zpw276nkzam32w13tukqn0t6wi5g6
10367
10366
2024-03-15T20:43:12Z
meta>FuzzyBot
0
Updating to match new version of source page
10367
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = Conclusion
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = Policies and guidelines
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = Purpose
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
04jr6gp2kg042fzx8jpgkmd7jzkcx06
10368
10367
2024-03-16T01:25:27Z
meta>FuzzyBot
0
Updating to match new version of source page
10368
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = Conclusion
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = Policies and guidelines
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = Purpose
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
76r4jwzdwvesugheipno1dldeyot9sg
10369
10368
2024-03-19T11:20:37Z
meta>FuzzyBot
0
Updating to match new version of source page
10369
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = Conclusion
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = Policies and guidelines
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = Purpose
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
8nk4s8r0r0yjdkvafaxa089w6mnfgmj
10370
10369
2024-04-03T08:58:19Z
meta>FuzzyBot
0
Updating to match new version of source page
10370
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
7rhrimfm89bbo0hgp189ivp9m4od1j7
10371
10370
2024-05-22T17:44:58Z
meta>FuzzyBot
0
Updating to match new version of source page
10371
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = Leadership
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
4alxmq27659t0auivl5zcecoelm64bt
10372
10371
2024-09-28T02:28:42Z
meta>FuzzyBot
0
Updating to match new version of source page
10372
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = {{int|specialblockfeedback}}
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = Leadership
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
rfbm9426g42russuy7heekyez9x4fjv
10373
10372
2024-10-24T01:59:14Z
meta>FuzzyBot
0
Updating to match new version of source page
10373
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = Feedback
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = Leadership
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
ke9bn47p2tlqfrdwl3520jra7ekqohf
10374
10373
2025-02-11T21:12:50Z
meta>FuzzyBot
0
Updating to match new version of source page
10374
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = Feedback
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = Leadership
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string]]}}</includeonly>
}}
oc46txq1cy19ctru43nwkw5xo5lqp4i
10375
10374
2026-02-11T17:26:52Z
meta>FuzzyBot
0
Updating to match new version of source page
10375
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = Feedback
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = Leadership
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| wayback | wayback machine | waybackmachine = {{labelT|Q648266}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string]]}}</includeonly>
}}
kguuc2nw70mhup14z3i4kez1p7z3x0h
10376
10375
2026-02-11T17:30:53Z
meta>FuzzyBot
0
Updating to match new version of source page
10376
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = Feedback
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = Leadership
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| wayback | wayback machine | waybackmachine = {{labelT|Q648266}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
6jrms5xlq71lah8bam0y53e2zfjzhzp
10377
10376
2026-08-24T13:01:00Z
RAPTOR7762
18
123 revisions imported from [[:meta:Template:Int_string/en]]
10376
wikitext
text/x-wiki
<noinclude><languages />
{{Help translate/Common messages}}
{{documentation|Template:Int string/doc}}
</noinclude>{{#switch: {{lc:{{{1|{{{string|}}}}}}}}
| about = {{int|about}}
| activities = {{int|wm-commonstrings-activities}}
| appendix = {{ucfirst:{{labelT|Q1376568}}}}
| approve = {{int|wikilambda-function-details-table-approve}}
| archives = {{ucfirst:{{labelT|Q56648173}}}}
| agenda = {{int|wm-commonstrings-agenda}}
| average = {{int|exif-meteringmode-1}}
| back to top = {{ucfirst:{{int|monobook-jumptotop}}}}
| background = {{int|wm-commonstrings-background}}
| blog = {{ucfirst:{{labelT|Q30849}}}}
| category = {{int|nstab-category}}
| closed = {{int|wm-commonstrings-closed}}
| conclusion = {{int|wm-commonstrings-conclusion}}
| contact us | contactus = {{int|wm-commonstrings-contactus}}
| diff = {{ucfirst:{{int|diff}}}}
| done = {{int|Upload-dialog-button-done}}
| commons = {{int|wikibase-sitelinks-sitename-commonswiki}}
| connect = {{int|wm-commonstrings-connect}}
| contribute = {{int|contribute}}
| creative commons |cc = {{labelT|Q43449}}
| description = {{int|upload-form-label-infoform-description}}
| discord = {{labelT|Q22907849}}
| discussion = {{int|talk}}
| encarta |msn encarta = {{labelT|Q231136}}
| encyclopedia britannica online |encyclopædia britannica online |britannica = {{labelT|Q5375741}}
| etherpad |pad = {{labelT|Q998543}}
| eventbrite |evtb = {{labelT|Q5416738}}
| events = {{int|wm-commonstrings-events}}
| external links = {{int|wm-commonstrings-externallinks}}
| facebook |fb = {{labelT|Q355}}
| feedback = Feedback
| frequently asked questions |faq = {{int|donate_interface-faqs}}
| google = {{labelT|Q95}}
| google forms | gforms = {{labelT|Q47014869}}
| google meet | gmeet = {{labelT|Q56669074}}
| guidelines = {{int|growthexperiments-help-panel-suggestededits-tips-vector-visualeditor-link-recommendation-header-rules1}}
| history = {{int|history_short}}
| identi.ca | identica |ica = {{labelT|Q28773}}
| image | photo = {{int|visualeditor-media-title-image}}
| instagram | insta = {{labelT|Q209330}}
| introduction = {{int|growthexperiments-structuredtask-onboarding-dialog-title}}
| leave feedback = {{ucfirst:{{lc:{{int|specialinvestigate-feedback}}}}}}
| leadership = Leadership
| legend = {{int|interwiki-legend-label}}
| limesurvey = {{labelT|Q1514978}}
| lingua libre = {{labelT|Q60024037}}
| linkedin = {{labelT|Q213660}}
| main page | main | mainpage | home = {{int|mainpage-description}}
| matrix = {{labelT|Q22906785}}
| mediawiki | mw = {{int|wikibase-sitelinks-sitename-mediawikiwiki}}
| membership = {{ucfirst:{{labelT|Q60844538}}}}
| meta-wiki | meta | metawiki = {{int|project-localized-name-metawiki}}
| minutes = {{ucfirst:{{labelT|Q2085515}}}}
| more information | more info = {{int|visualeditor-dialog-media-info-moreinfo}}
| name = {{int|allmessagesname}}
| no = {{int|confirmable-no}}
| notes = {{int|wm-license-artwork-notes}}
| noticeboard = {{int|wm-commonstrings-noticeboard}}
| objectives = {{int|wm-commonstrings-objectives}}
| ongoing = {{int|wm-commonstrings-ongoing}}
| open = {{int|wm-commonstrings-open}}
| other = {{int|visualeditor-shortcuts-other}}
| overview = {{int|wm-commonstrings-overview}}
| participate = {{int|wm-commonstrings-participate}}
| phabricator | phab = {{labelT|Q16509734}}
| plan = {{ucfirst:{{labelT|Q1371819}}}}
| policies and guidelines | meta-policy-guidelines | policy-guidelines = {{int|wm-commonstrings-policies-guidelines}}
| position = {{int|checkuser-investigateblock-notice-position-label}}
| projects = {{int|centralnotice-projects}}
| purpose = {{int|wm-commonstrings-purpose}}
| qualtrics | qual = {{labelT|Q7268803}}
| questions | questions? = {{int|wm-commonstrings-questions}}
| quicksurveys | qsurveys = {{int|ext-quicksurveys-name}}
| quora | quo = {{labelT|Q51711}}
| reddit = {{labelT|Q1136}}
| references = {{int|wm-license-artwork-references}}
| reports = {{int|wm-commonstrings-reports}}
| research = {{ucfirst:{{labelT|Q42240}}}}
| resources = {{int|growthexperiments-mentor-dashboard-resources-headline}}
| roadmap = {{ucfirst:{{labelT|Q106485006}}}}
| scope = {{int|wm-commonstrings-scope}}
| see also |seealso = {{int|wm-commonstrings-seealso}}
| skype = {{labelT|Q40984}}
| social media = {{ucfirst:{{labelT|Q202833}}}}
| staff = {{int|wm-commonstrings-staff}}
| start = {{int|pagetriage-filter-predicted-class-start}}
| statistics | stats = {{int|wikimedia-statslink}}
| status = {{int|centralauth-rename-table-status}}
| summary = {{int|filedesc}}
| surveymonkey = {{labelT|Q162852}}
| talk to us | talktous = {{int|wm-commonstrings-talktous}}
| telegram = {{labelT|Q15616276}}
| test wikipedia = {{int|project-localized-name-testwiki}}
| tiktok = {{labelT|Q48938223}}
| total = {{int|sitematrix-sitetotal}}
| translations = {{int|centralnotice-translations}}
| type = {{int|math-wikibase-formula-type}}
| upcoming = {{ucfirst:{{labelT|Q57248993}}}}
| updates = {{int|wm-commonstrings-updates}}
| wayback | wayback machine | waybackmachine = {{labelT|Q648266}}
| whatsapp = {{labelT|Q1049511}}
| wikibooks = {{int|wikibase-sitelinks-wikibooks}}
| wikidata = {{int|wikibase-repo-name}}
| wikifunctions = {{int|wikibase-otherprojects-wikifunctions}}
| wikimania = {{int|project-localized-name-wikimaniawiki}}
| wikimedia = {{int|wikimediaapiportal-skin-site-name-main}}
| wikimedia cloud services = {{int|wikimedia-otherprojects-cloudservices}}
| wikimedia commons = {{int|project-localized-name-commonswiki}}
| wikimedia endowment = {{int|wikimedia-otherprojects-endowment}}
| wikimedia enterprise = {{int|wikimedia-otherprojects-enterprise}}
| wikimedia foundation | wmf = {{int|wikibase-otherprojects-foundation}}
| wikimedia foundation, inc. | wmf inc | wmf inc. = {{int|wikibase-page-schema-publisher-name}}
| wikimedia foundation projects = {{int|wikimedia-foundation-projects-label}}
| wikimedia incubator = {{int|project-localized-name-incubatorwiki}}
| wikimedia mailservices = {{int|wikimedia-mailservices-label}}
| wikimedia outreach |wikimedia outreach wiki = {{int|project-localized-name-outreachwiki}}
| wikimedia phabricator = {{int|wikimedia-otherprojects-phabricator}}
| wikimedia projects = {{int|wikimedia-projects-label}}
| wikinews = {{int|wikibase-sitelinks-wikinews}}
| wikipedia = {{int|wikibase-sitelinks-wikipedia}}
| wikiquote = {{int|wikibase-sitelinks-wikiquote}}
| wikisource = {{int|wikibase-sitelinks-wikisource}}
| wikispecies = {{int|wikibase-otherprojects-species}}
| wikistats = {{int|wikimedia-wikistats-label}}
| wikitech = {{int|project-localized-name-labswiki}}
| wikiversity = {{int|wikibase-sitelinks-wikiversity}}
| wikivoyage = {{int|wikibase-sitelinks-wikivoyage}}
| wiktionary | wikt = {{int|wikibase-sitelinks-wiktionary}}
| x | twitter | tw = {{labelT|Q918}}
| yahoo | yahoo! = {{labelT|Q37093}}
| yes = {{int|confirmable-yes}}
| youtube | yt = {{labelT|Q866}}
| zoom = {{labelT|Q94979732}}
| <includeonly>#default = {{{1|{{{string|}}}}}}{{#if:{{{1|{{{string|}}}}}}|[[Category:Pages with missing string in Template:Int string{{#translation:}}]]|[[Category:Pages with incorrect usage of Template:Int string{{#translation:}}]]}}</includeonly>
}}
6jrms5xlq71lah8bam0y53e2zfjzhzp
Tempilet:LabelT
10
1257
10378
2023-01-14T18:15:00Z
meta>Pols12
0
Created page with "{{label |1={{{item|{{{1|}}}}}} |2={{{lang|{{{2|{{PAGELANGUAGE}}}}}}}} |link={{{link|-}}} |capitalization={{{capitalization|none}}} |show_id={{{show_id|}}} }}<noinclude> {{documentation|Template:Label/doc}} </noinclude>"
10378
wikitext
text/x-wiki
{{label
|1={{{item|{{{1|}}}}}}
|2={{{lang|{{{2|{{PAGELANGUAGE}}}}}}}}
|link={{{link|-}}}
|capitalization={{{capitalization|none}}}
|show_id={{{show_id|}}}
}}<noinclude>
{{documentation|Template:Label/doc}}
</noinclude>
7eenosg8ddpis34kimc1qck1y416dqi
10379
10378
2023-01-15T18:01:10Z
meta>MusikBot II
0
Protected "[[Template:LabelT]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only autoconfirmed users] (indefinite))
10378
wikitext
text/x-wiki
{{label
|1={{{item|{{{1|}}}}}}
|2={{{lang|{{{2|{{PAGELANGUAGE}}}}}}}}
|link={{{link|-}}}
|capitalization={{{capitalization|none}}}
|show_id={{{show_id|}}}
}}<noinclude>
{{documentation|Template:Label/doc}}
</noinclude>
7eenosg8ddpis34kimc1qck1y416dqi
10380
10379
2024-03-06T18:06:08Z
meta>MusikBot II
0
Changed protection settings for "[[Template:LabelT]]": High-risk template or module ([[User:MusikBot II/TemplateProtector|more info]]) ([Edit=Allow only administrators] (indefinite) [Move=Allow only administrators] (indefinite))
10378
wikitext
text/x-wiki
{{label
|1={{{item|{{{1|}}}}}}
|2={{{lang|{{{2|{{PAGELANGUAGE}}}}}}}}
|link={{{link|-}}}
|capitalization={{{capitalization|none}}}
|show_id={{{show_id|}}}
}}<noinclude>
{{documentation|Template:Label/doc}}
</noinclude>
7eenosg8ddpis34kimc1qck1y416dqi
10381
10380
2026-08-24T13:01:00Z
RAPTOR7762
18
3 revisions imported from [[:meta:Template:LabelT]]
10378
wikitext
text/x-wiki
{{label
|1={{{item|{{{1|}}}}}}
|2={{{lang|{{{2|{{PAGELANGUAGE}}}}}}}}
|link={{{link|-}}}
|capitalization={{{capitalization|none}}}
|show_id={{{show_id|}}}
}}<noinclude>
{{documentation|Template:Label/doc}}
</noinclude>
7eenosg8ddpis34kimc1qck1y416dqi
Tempilet:Bole Wikimedians User Group/footer
10
1263
10401
2026-08-24T13:07:54Z
RAPTOR7762
18
RAPTOR7762 moved page [[Tempilet:Bole Wikimedians User Group/footer]] to [[Tempilet:Bole Wikimedians User Group]]
10401
wikitext
text/x-wiki
#REDIRECT [[Tempilet:Bole Wikimedians User Group]]
16b61ebn4jsy3hpvisjr5tsotbmi1yk
Tempilet:Top icon
10
1264
10405
2025-09-08T19:55:47Z
en>RMCD bot
0
Removing notice of move discussion
10405
wikitext
text/x-wiki
<includeonly><nowiki /><!-- This nowiki tag helps prevent whitespace at the top of articles. -->{{#tag:indicator|[[File:{{{image|{{{imagename|{{{1|}}}}}}}}}|{{#if:{{{width|}}}|{{Str number/trim|{{{width}}}}}|20}}x{{#if:{{{height|}}}|{{Str number/trim|{{{height}}}}}|20}}px<!--
--> {{#ifeq:{{{link|+}}}|{{{link|-}}}|{{!}}link={{{link}}}|{{#ifeq:{{{wikilink|+}}}|{{{wikilink|-}}}|{{!}}link={{{wikilink}}}|{{#ifeq:{{{2|+}}}|{{{2|-}}}|{{!}}link={{{2}}}|}}}}}}<!--
--> {{#if:{{{alt|}}}|{{!}}alt={{{alt}}}}}<!--
--> {{#if:{{{skin-invert|}}}|{{!}}class=skin-invert}}<!--
--> |{{{text|{{{description|{{{3|icon}}}}}}}}}]]
|name = {{#if:{{{sortkey|}}}|{{{sortkey}}}-}}{{#if:{{{name|}}}|{{{name}}}|{{#if:{{{id|}}}|{{{id}}}|{{{image|{{{imagename|{{{1|}}}}}}}}}}}}}}}{{Category handler
|user = {{{usercat|}}}
|main = {{{maincat|}}}
|subpage = {{{subpage|no}}}
|nocat = {{{nocat|}}}
}}<!-- Tracking categories
-->{{#invoke:Check for unknown parameters|check|unknown=[[Category:Pages using Top icon with unknown parameters|_VALUE_{{PAGENAME}}]]|preview=Page using [[Template:Top icon]] with unknown parameter "_VALUE_"|showblankpositional=1| 1 | 2 | 3 | alt | description | height | id | image | imagename | link | maincat | name | nocat | sortkey | subpage | text | usercat | width | wikilink | skin-invert }}<!--
--></includeonly><noinclude>
{{Documentation}}
</noinclude>
b5ha3emi1ayijkuc7vdxbblcmrqpf8c
10406
10405
2026-08-24T13:15:01Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Top_icon]]
10405
wikitext
text/x-wiki
<includeonly><nowiki /><!-- This nowiki tag helps prevent whitespace at the top of articles. -->{{#tag:indicator|[[File:{{{image|{{{imagename|{{{1|}}}}}}}}}|{{#if:{{{width|}}}|{{Str number/trim|{{{width}}}}}|20}}x{{#if:{{{height|}}}|{{Str number/trim|{{{height}}}}}|20}}px<!--
--> {{#ifeq:{{{link|+}}}|{{{link|-}}}|{{!}}link={{{link}}}|{{#ifeq:{{{wikilink|+}}}|{{{wikilink|-}}}|{{!}}link={{{wikilink}}}|{{#ifeq:{{{2|+}}}|{{{2|-}}}|{{!}}link={{{2}}}|}}}}}}<!--
--> {{#if:{{{alt|}}}|{{!}}alt={{{alt}}}}}<!--
--> {{#if:{{{skin-invert|}}}|{{!}}class=skin-invert}}<!--
--> |{{{text|{{{description|{{{3|icon}}}}}}}}}]]
|name = {{#if:{{{sortkey|}}}|{{{sortkey}}}-}}{{#if:{{{name|}}}|{{{name}}}|{{#if:{{{id|}}}|{{{id}}}|{{{image|{{{imagename|{{{1|}}}}}}}}}}}}}}}{{Category handler
|user = {{{usercat|}}}
|main = {{{maincat|}}}
|subpage = {{{subpage|no}}}
|nocat = {{{nocat|}}}
}}<!-- Tracking categories
-->{{#invoke:Check for unknown parameters|check|unknown=[[Category:Pages using Top icon with unknown parameters|_VALUE_{{PAGENAME}}]]|preview=Page using [[Template:Top icon]] with unknown parameter "_VALUE_"|showblankpositional=1| 1 | 2 | 3 | alt | description | height | id | image | imagename | link | maincat | name | nocat | sortkey | subpage | text | usercat | width | wikilink | skin-invert }}<!--
--></includeonly><noinclude>
{{Documentation}}
</noinclude>
b5ha3emi1ayijkuc7vdxbblcmrqpf8c
Tempilet:FULLROOTPAGENAME
10
1265
10407
2022-01-02T08:54:02Z
en>Dinoguy1000
0
fix "|=foo" bug
10407
wikitext
text/x-wiki
{{ safesubst:<noinclude/>#if: {{ safesubst:<noinclude/>Ns has subpages | {{ safesubst:<noinclude/>#if:{{{1|}}}|{{ safesubst:<noinclude/>NAMESPACE:{{{1}}}}}|{{ safesubst:<noinclude/>NAMESPACE}}}} }}
| {{ safesubst:<noinclude/>#titleparts:{{ safesubst:<noinclude/>#if:{{{1|}}}|{{{1}}}|{{ safesubst:<noinclude/>FULLPAGENAME}}}}|1}}
| {{ safesubst:<noinclude/>#if:{{{1|}}}|{{{1}}}|{{ safesubst:<noinclude/>FULLPAGENAME}}}}
}}<noinclude>
{{documentation}}
</noinclude>
tk494gglkhfogc40do2k58d4bbttx9o
10408
10407
2026-08-24T13:15:11Z
RAPTOR7762
18
1 revision imported from [[:en:Template:FULLROOTPAGENAME]]
10407
wikitext
text/x-wiki
{{ safesubst:<noinclude/>#if: {{ safesubst:<noinclude/>Ns has subpages | {{ safesubst:<noinclude/>#if:{{{1|}}}|{{ safesubst:<noinclude/>NAMESPACE:{{{1}}}}}|{{ safesubst:<noinclude/>NAMESPACE}}}} }}
| {{ safesubst:<noinclude/>#titleparts:{{ safesubst:<noinclude/>#if:{{{1|}}}|{{{1}}}|{{ safesubst:<noinclude/>FULLPAGENAME}}}}|1}}
| {{ safesubst:<noinclude/>#if:{{{1|}}}|{{{1}}}|{{ safesubst:<noinclude/>FULLPAGENAME}}}}
}}<noinclude>
{{documentation}}
</noinclude>
tk494gglkhfogc40do2k58d4bbttx9o
Tempilet:Ns has subpages
10
1266
10409
2022-03-02T10:43:18Z
en>Trialpears
0
Changed protection settings for "[[Template:Ns has subpages]]": [[WP:High-risk templates|Highly visible template]] ([Edit=Require administrator access] (indefinite) [Move=Require administrator access] (indefinite))
10409
wikitext
text/x-wiki
{{<includeonly>safesubst:</includeonly>#invoke:Ns has subpages|main}}<noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage and interwikis go on Wikidata. -->
</noinclude>
0pg457y46td6p53rdt8tyc76jeg9pa8
10410
10409
2026-08-24T13:15:11Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Ns_has_subpages]]
10409
wikitext
text/x-wiki
{{<includeonly>safesubst:</includeonly>#invoke:Ns has subpages|main}}<noinclude>
{{documentation}}
<!-- Categories go on the /doc subpage and interwikis go on Wikidata. -->
</noinclude>
0pg457y46td6p53rdt8tyc76jeg9pa8
Module:Ns has subpages
828
1267
10411
2024-02-17T04:01:43Z
en>Pppery
0
Changed protection settings for "[[Module:Ns has subpages]]": Per template ([Edit=Require administrator access] (indefinite) [Move=Require administrator access] (indefinite))
10411
Scribunto
text/plain
-- This module implements [[Template:Ns has subpages]].
-- While the template is fairly simple, this information is made available to
-- Lua directly, so using a module means that we don't have to update the
-- template as new namespaces are added.
local p = {}
function p._main(ns, frame)
-- Get the current namespace if we were not passed one.
if not ns then
ns = mw.title.getCurrentTitle().namespace
end
-- Look up the namespace table from mw.site.namespaces. This should work
-- for a majority of cases.
local nsTable = mw.site.namespaces[ns]
-- Try using string matching to get the namespace from page names.
-- Do a quick and dirty bad title check to try and make sure we do the same
-- thing as {{NAMESPACE}} in most cases.
if not nsTable and type(ns) == 'string' and not ns:find('[<>|%[%]{}]') then
local nsStripped = ns:gsub('^[_%s]*:', '')
nsStripped = nsStripped:gsub(':.*$', '')
nsTable = mw.site.namespaces[nsStripped]
end
-- If we still have no match then try the {{NAMESPACE}} parser function,
-- which should catch the remainder of cases. Don't use a mw.title object,
-- as this would increment the expensive function count for each new page
-- tested.
if not nsTable then
frame = frame or mw.getCurrentFrame()
local nsProcessed = frame:callParserFunction('NAMESPACE', ns)
nsTable = nsProcessed and mw.site.namespaces[nsProcessed]
end
return nsTable and nsTable.hasSubpages
end
function p.main(frame)
local ns = frame:getParent().args[1]
if ns then
ns = ns:match('^%s*(.-)%s*$') -- trim whitespace
ns = tonumber(ns) or ns
end
local hasSubpages = p._main(ns, frame)
return hasSubpages and 'yes' or ''
end
return p
qb0b1z2vff7kifnw21v205d791esbiz
10412
10411
2026-08-24T13:15:12Z
RAPTOR7762
18
1 revision imported from [[:en:Module:Ns_has_subpages]]
10411
Scribunto
text/plain
-- This module implements [[Template:Ns has subpages]].
-- While the template is fairly simple, this information is made available to
-- Lua directly, so using a module means that we don't have to update the
-- template as new namespaces are added.
local p = {}
function p._main(ns, frame)
-- Get the current namespace if we were not passed one.
if not ns then
ns = mw.title.getCurrentTitle().namespace
end
-- Look up the namespace table from mw.site.namespaces. This should work
-- for a majority of cases.
local nsTable = mw.site.namespaces[ns]
-- Try using string matching to get the namespace from page names.
-- Do a quick and dirty bad title check to try and make sure we do the same
-- thing as {{NAMESPACE}} in most cases.
if not nsTable and type(ns) == 'string' and not ns:find('[<>|%[%]{}]') then
local nsStripped = ns:gsub('^[_%s]*:', '')
nsStripped = nsStripped:gsub(':.*$', '')
nsTable = mw.site.namespaces[nsStripped]
end
-- If we still have no match then try the {{NAMESPACE}} parser function,
-- which should catch the remainder of cases. Don't use a mw.title object,
-- as this would increment the expensive function count for each new page
-- tested.
if not nsTable then
frame = frame or mw.getCurrentFrame()
local nsProcessed = frame:callParserFunction('NAMESPACE', ns)
nsTable = nsProcessed and mw.site.namespaces[nsProcessed]
end
return nsTable and nsTable.hasSubpages
end
function p.main(frame)
local ns = frame:getParent().args[1]
if ns then
ns = ns:match('^%s*(.-)%s*$') -- trim whitespace
ns = tonumber(ns) or ns
end
local hasSubpages = p._main(ns, frame)
return hasSubpages and 'yes' or ''
end
return p
qb0b1z2vff7kifnw21v205d791esbiz
Tempilet:Red
10
1268
10413
2025-10-08T22:40:37Z
en>Jonesey95
0
dark mode is fine; it's the semantic meaning that is the problem
10413
wikitext
text/x-wiki
<noinclude>{{Ombox|type=content|text=This template should '''NOT''' be used for generic error messages and warnings, because it does not have any semantic meaning embedded. Please use {{tl|error-small}} for errors, and {{tl|destructive}} for everything else.}}</noinclude><span style="color: red;">{{{1}}}</span><noinclude>
<!-- Add categories to the /doc subpage, not here! -->
{{Documentation}}
</noinclude>
m79c5js0z99vot4odxdkn6bawoqind2
10414
10413
2026-08-24T13:15:12Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Red]]
10413
wikitext
text/x-wiki
<noinclude>{{Ombox|type=content|text=This template should '''NOT''' be used for generic error messages and warnings, because it does not have any semantic meaning embedded. Please use {{tl|error-small}} for errors, and {{tl|destructive}} for everything else.}}</noinclude><span style="color: red;">{{{1}}}</span><noinclude>
<!-- Add categories to the /doc subpage, not here! -->
{{Documentation}}
</noinclude>
m79c5js0z99vot4odxdkn6bawoqind2
Tempilet:TL
10
1269
10415
2021-02-12T22:06:43Z
en>Xqbot
0
Bot: Fixing double redirect to [[Template:Template link]]
10415
wikitext
text/x-wiki
#REDIRECT [[Template:Template link]]
{{Redirect category shell|{{R from modification}}{{R from template shortcut}}}}
onl6temnxdxt9c7lpcv0rsjntpg1ryd
10416
10415
2026-08-24T13:15:12Z
RAPTOR7762
18
1 revision imported from [[:en:Template:TL]]
10415
wikitext
text/x-wiki
#REDIRECT [[Template:Template link]]
{{Redirect category shell|{{R from modification}}{{R from template shortcut}}}}
onl6temnxdxt9c7lpcv0rsjntpg1ryd
Tempilet:T1
10
1270
10417
2022-01-01T05:36:39Z
en>Xaosflux
0
{{Rcat shell|{{R from template shortcut}}}}
10417
wikitext
text/x-wiki
#REDIRECT [[Template:Template link]]
{{Rcat shell|{{R from template shortcut}}}}
agft1wgq288u2uoq25oey2z7oz8m2sa
10418
10417
2026-08-24T13:15:12Z
RAPTOR7762
18
1 revision imported from [[:en:Template:T1]]
10417
wikitext
text/x-wiki
#REDIRECT [[Template:Template link]]
{{Rcat shell|{{R from template shortcut}}}}
agft1wgq288u2uoq25oey2z7oz8m2sa
Tempilet:Caution
10
1271
10419
2026-01-08T16:18:01Z
en>HouseBlaster
0
+{{[[TM:Editnotice EXPECTUNUSEDTEMPLATE|Editnotice EXPECTUNUSEDTEMPLATE]]}}
10419
wikitext
text/x-wiki
{{Mbox
| name = Caution
| demospace = {{{demospace|}}}
| style = {{{style|}}}
| subst = <includeonly>{{subst:substcheck}}</includeonly>
| type = style
| image = {{#if:{{{image|}}} |[[File:{{{image}}}|{{{imagesize|40px}}}|Caution|link={{{imagelink|}}}]] |[[File:Ambox warning yellow.svg|{{{imagesize|40px}}}|Caution|link={{{imagelink|}}}]]}}
| small = {{{small|}}}
| smallimage = {{#if:{{{image|}}} |[[File:{{{image}}}|{{{imagesize|40px}}}|Caution|link={{{imagelink|}}}]] |[[File:Ambox warning yellow.svg|30px|Caution|link={{{imagelink|}}}]]}}
| imageright = {{#if:{{{imageright|}}} |{{{imageright}}} |{{#if:{{{shortcut|{{{shortcut1|}}}}}} |{{Ombox/shortcut|{{{shortcut|{{{shortcut1|}}}}}}|{{{shortcut2|}}}|{{{shortcut3|}}}|{{{shortcut4|}}}|{{{shortcut5|}}}}}}} }}
| textstyle = {{{textstyle|{{{align|text-align: {{#if:{{{center|}}}|center|left}};}}}}}}
| text = {{#if:{{{header|{{{heading|{{{title|}}}}}}}}} |<div style="text-align:{{#if:{{{center|}}}|center|left}};">'''{{{header|{{{heading|{{{title|}}}}}}}}}'''</div>}}<!--
-->{{{text|{{{content|{{{reason|{{{1}}}}}}}}}}}}
}}{{Editnotice EXPECTUNUSEDTEMPLATE}}<noinclude>{{Documentation}}</noinclude>
s5y2taqjeoezacsy1lfwe91a86uw26b
10420
10419
2026-08-24T13:15:12Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Caution]]
10419
wikitext
text/x-wiki
{{Mbox
| name = Caution
| demospace = {{{demospace|}}}
| style = {{{style|}}}
| subst = <includeonly>{{subst:substcheck}}</includeonly>
| type = style
| image = {{#if:{{{image|}}} |[[File:{{{image}}}|{{{imagesize|40px}}}|Caution|link={{{imagelink|}}}]] |[[File:Ambox warning yellow.svg|{{{imagesize|40px}}}|Caution|link={{{imagelink|}}}]]}}
| small = {{{small|}}}
| smallimage = {{#if:{{{image|}}} |[[File:{{{image}}}|{{{imagesize|40px}}}|Caution|link={{{imagelink|}}}]] |[[File:Ambox warning yellow.svg|30px|Caution|link={{{imagelink|}}}]]}}
| imageright = {{#if:{{{imageright|}}} |{{{imageright}}} |{{#if:{{{shortcut|{{{shortcut1|}}}}}} |{{Ombox/shortcut|{{{shortcut|{{{shortcut1|}}}}}}|{{{shortcut2|}}}|{{{shortcut3|}}}|{{{shortcut4|}}}|{{{shortcut5|}}}}}}} }}
| textstyle = {{{textstyle|{{{align|text-align: {{#if:{{{center|}}}|center|left}};}}}}}}
| text = {{#if:{{{header|{{{heading|{{{title|}}}}}}}}} |<div style="text-align:{{#if:{{{center|}}}|center|left}};">'''{{{header|{{{heading|{{{title|}}}}}}}}}'''</div>}}<!--
-->{{{text|{{{content|{{{reason|{{{1}}}}}}}}}}}}
}}{{Editnotice EXPECTUNUSEDTEMPLATE}}<noinclude>{{Documentation}}</noinclude>
s5y2taqjeoezacsy1lfwe91a86uw26b
Tempilet:Template link universal
10
1272
10421
2021-04-19T02:44:56Z
en>JJMC89
0
JJMC89 moved page [[Template:Tlu]] to [[Template:Template link universal]]: [[Wikipedia:Requested moves|requested move]]; consensus at [[Template talk:Template link universal]]
10421
wikitext
text/x-wiki
<nowiki>{{</nowiki>{{#if:{{{subst|}}}|
[[WP:SUBST|subst]]:|}}[[{{{1}}}]]<!--
-->{{#if:{{{2|}}}|
|{{{2}}}
}}<!--
-->{{#if:{{{3|}}}|
|{{{3}}}
}}<!--
-->{{#if:{{{4|}}}|
|{{{4}}}
}}<!--
-->{{#if:{{{5|}}}|
|{{{5}}}
}}<!--
-->{{#if:{{{6|}}}|
|{{{6}}}
}}<!--
-->{{#if:{{{7|}}}|
|{{{7}}}
}}<!--
-->{{#if:{{{8|}}}|
|{{{8}}}
}}<!--
-->{{#if:{{{9|}}}|
|{{{9}}}
}}<!--
-->{{#if:{{{10|}}}|
|{{{10}}}
}}<!--
-->{{#if:{{{11|}}}|
|{{{11}}}
}}<!--
-->{{#if:{{{12|}}}|
|''...''
}}<nowiki>}}</nowiki><noinclude>
<!-- Add categories and interwikis to the /doc page, not here, thanks -->
{{documentation}}
</noinclude>
30ovkveb7p8ndyenifstivsiipoqr05
10422
10421
2026-08-24T13:15:12Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Template_link_universal]]
10421
wikitext
text/x-wiki
<nowiki>{{</nowiki>{{#if:{{{subst|}}}|
[[WP:SUBST|subst]]:|}}[[{{{1}}}]]<!--
-->{{#if:{{{2|}}}|
|{{{2}}}
}}<!--
-->{{#if:{{{3|}}}|
|{{{3}}}
}}<!--
-->{{#if:{{{4|}}}|
|{{{4}}}
}}<!--
-->{{#if:{{{5|}}}|
|{{{5}}}
}}<!--
-->{{#if:{{{6|}}}|
|{{{6}}}
}}<!--
-->{{#if:{{{7|}}}|
|{{{7}}}
}}<!--
-->{{#if:{{{8|}}}|
|{{{8}}}
}}<!--
-->{{#if:{{{9|}}}|
|{{{9}}}
}}<!--
-->{{#if:{{{10|}}}|
|{{{10}}}
}}<!--
-->{{#if:{{{11|}}}|
|{{{11}}}
}}<!--
-->{{#if:{{{12|}}}|
|''...''
}}<nowiki>}}</nowiki><noinclude>
<!-- Add categories and interwikis to the /doc page, not here, thanks -->
{{documentation}}
</noinclude>
30ovkveb7p8ndyenifstivsiipoqr05
Tempilet:Tlu
10
1273
10423
2021-10-14T06:25:48Z
en>Paine Ellsworth
0
add [[WP:RCAT|rcat template]]
10423
wikitext
text/x-wiki
#REDIRECT [[Template:Template link universal]]
{{Redirect category shell|
{{R from move}}
{{R from template shortcut}}
}}
nzv89op3qvdvw5gdl6t34bdtinpv9yv
10424
10423
2026-08-24T13:15:12Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Tlu]]
10423
wikitext
text/x-wiki
#REDIRECT [[Template:Template link universal]]
{{Redirect category shell|
{{R from move}}
{{R from template shortcut}}
}}
nzv89op3qvdvw5gdl6t34bdtinpv9yv
Tempilet:Clc
10
1274
10425
2019-04-24T04:30:59Z
en>JJMC89
0
actual template is in the category
10425
wikitext
text/x-wiki
#REDIRECT [[Template:Category link with count]]
092gm3mu5vr84eif0gc6y7q98csnc9h
10426
10425
2026-08-24T13:15:13Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Clc]]
10425
wikitext
text/x-wiki
#REDIRECT [[Template:Category link with count]]
092gm3mu5vr84eif0gc6y7q98csnc9h
Tempilet:Category link with count
10
1275
10427
2021-06-11T18:13:44Z
en>GKFX
0
Support wider range of (valid) input format
10427
wikitext
text/x-wiki
[[:Category:{{#invoke:string|replace|1={{{1}}}|2=^:?[Cc]ategory:|3=|plain=false}}|<!--
-->{{#if:{{{name|}}}|{{{name}}}|Category:{{#invoke:string|replace|1={{{1}}}|2=^:?[Cc]ategory:|3=|plain=false}}}}<!--
-->]] ({{PAGESINCATEGORY:{{#invoke:string|replace|1={{{1}}}|2=^:?[Cc]ategory:|3=|plain=false}}|{{{2|all}}}}})<noinclude>
{{Documentation}}
</noinclude>
t44qc0k3i1yz2ecwxpiksck04hyz7rx
10428
10427
2026-08-24T13:15:13Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Category_link_with_count]]
10427
wikitext
text/x-wiki
[[:Category:{{#invoke:string|replace|1={{{1}}}|2=^:?[Cc]ategory:|3=|plain=false}}|<!--
-->{{#if:{{{name|}}}|{{{name}}}|Category:{{#invoke:string|replace|1={{{1}}}|2=^:?[Cc]ategory:|3=|plain=false}}}}<!--
-->]] ({{PAGESINCATEGORY:{{#invoke:string|replace|1={{{1}}}|2=^:?[Cc]ategory:|3=|plain=false}}|{{{2|all}}}}})<noinclude>
{{Documentation}}
</noinclude>
t44qc0k3i1yz2ecwxpiksck04hyz7rx
Tempilet:Top icon templates
10
1276
10433
2026-07-09T15:55:38Z
en>Gommeh
0
adding, since a lot of users have tons of GAs that would clog up a userpage if they listed them all
10433
wikitext
text/x-wiki
{{Navbox
| name = Top icon templates
| title = [[Template:Top icon|Top icons]]
| state = {{{state<includeonly>|collapsed</includeonly>}}}
| listclass = hlist
| group1 = [[:Category:Top icon content award templates|Content]]
| list1 =
* {{Tl|Featured article}}
* {{Tl|Featured list}}
* {{Tl|Good article}}
* {{Tl|Spoken Wikipedia}}
| group2 = [[:Category:Protection templates|Protection]]
| list2 =
* {{Tl|Pp}}
* {{Tl|Pp-blp}}
* {{Tl|Pp-dispute}}
* {{Tl|Pp-move}}
* {{Tl|Pp-move-dispute}}
* {{Tl|Pp-move-vandalism}}
* {{Tl|Pp-office}}
* {{Tl|Pp-pc}}
* {{Tl|Pp-semi-indef}}
* {{Tl|Pp-sock}}
* {{Tl|Pp-template}}
* {{Tl|Pp-usertalk}}
* {{Tl|Pp-vandalism}}
| group3 = [[:Category:User top icon usergroup templates|User rights]]
| list3 =
* {{Tl|Accountcreator topicon}}
* {{Tl|Administrator topicon}}
* {{Tl|Administrator baton topicon}}
* {{Tl|AfC topicon}}
* {{Tl|Arbitrator fez topicon}}
* {{Tl|Autoconfirmed topicon}}
* {{Tl|Autopatrolled topicon}}
* {{Tl|Bot topicon}}
* {{Tl|Bureaucrat topicon}}
* {{Tl|Checkuser topicon}}
* {{Tl|Checkuser, oversighter, and administrator top icon}}
* {{Tl|Confirmed topicon}}
* {{Tl|Edit filter helpers topicon}}
* {{Tl|Edit filter manager topicon}}
* {{Tl|Event coordinator topicon}}
* {{Tl|Extended confirmed topicon}}
* {{Tl|File mover topicon}}
* {{Tl|Global abuse filter helper topicon}}
* {{Tl|Global abuse filter maintainer topicon}}
* {{Tl|Global renamer topicon}}
* {{Tl|Global rollbacker topicon}}
* {{Tl|Global sysop topicon}}
* {{Tl|Importers topicon}}
* {{Tl|Interface administrator topicon}}
* {{Tl|Mass message sender topicon}}
* {{Tl|New page reviewer topicon}}
* {{Tl|Not admin topicon}}
* {{Tl|Not an admin topicon}}
* {{Tl|Oversight topicon}}
* {{Tl|Page mover topicon}}
* {{Tl|Redirect autopatrolled topicon}}
* {{Tl|Registered topicon}}
* {{Tl|Reviewer topicon}}
* {{Tl|Rollback topicon}}
* {{Tl|Steward topicon}}
* {{Tl|Template editor topicon}}
* {{Tl|Temporary account IP viewers topicon}}
* {{Tl|User topicon}}
| group4 = [[:Category:User top icon membership templates|Membership]]
| list4 =
{{Navbox|child
| group1 = Membership
| list1 =
* {{Tl|Year topicon}}
** {{Tl|5 Year topicon}}
** {{Tl|10 Year topicon}}
** {{Tl|15 Year topicon}}
** {{Tl|20 Year topicon}}
** {{Tl|25 Year topicon}}
* {{Tl|Arbitration clerk topicon}}
* {{Tl|Arbitrator topicon}}
* {{Tl|Article Rescue Squadron topicon}}
* {{Tl|Birthday Committee topicon}}
* {{Tl|BAG topicon}}
* {{Tl|CP Clerk topicon}}
* {{Tl|CVU topicon}}
* {{Tl|DPL topicon}}
* {{Tl|DRN topicon}}
* {{Tl|Feedback topicon}}
* {{Tl|GLAM Ambassador topicon}}
* {{Tl|Mediator topicon}}
* {{Tl|Online Ambassador topicon}}
* {{Tl|RC patroller topicon}}
* {{Tl|SPI clerk topicon}}
* {{Tl|SVT topicon}}
* {{Tl|SWMT topicon}}
* {{Tl|Teahouse topicon}}
* {{Tl|Teahouse Host topicon}}
* {{Tl|User mentor topicon}}
* {{Tl|Volunteer Response Team topicon 1}}
* {{Tl|Volunteer Response Team topicon 2}}
* {{Tl|Welcoming committee topicon}}
| group2 = WikiProjects
| list2 =
* {{Tl|MLV task force topicon}}
* {{Tl|WikiProject Animals topicon}}
* {{Tl|WikiProject Anime and manga top icon}}
* {{Tl|WikiProject Astronomy topicon}}
* {{Tl|WikiProject Automobiles topicon}}
* {{Tl|WikiProject Aviation topicon}}
* {{Tl|WikiProject Biography top icon}}
* {{Tl|WikiProject Birds topicon}}
* {{Tl|WikiProject Canoeing and Kayaking topicon}}
* {{Tl|WikiProject Citation cleanup topicon}}
* {{Tl|WikiProject Christianity topicon}}
* {{Tl|WikiProject Comedy topicon}}
* {{Tl|WikiProject Computing topicon}}
* {{Tl|WikiProject Council top icon}}
* {{Tl|WikiProject country member top icon|country{{=}}}}
* {{Tl|WikiProject COVID-19 topicon}}
* {{Tl|WikiProject Cricket topicon}}
* {{Tl|WikiProject Crusades topicon}}
* {{Tl|WikiProject Cryptocurrency topicon}}
* {{Tl|WikiProject Democracy topicon}}
* {{Tl|WikiProject Democracy topicon alt}}
* {{Tl|WikiProject Film topicon}}
* {{Tl|WikiProject Formula One topicon}}
* {{Tl|WikiProject Guild of Copy Editors topicon}}
* {{Tl|WikiProject Insects topicon}}
* {{Tl|WikiProject Insects topicon 2}}
* {{Tl|WikiProject Intertranswiki topicon}}
* {{Tlu|Wikipedia:WikiProject Insects/ant task force/topicon}}
* {{Tl|WikiProject Jennifer Lopez top icon}}
* {{Tl|WikiProject Judaism topicon}}
* {{Tl|WikiProject Languages topicon}}
* {{Tl|WikiProject Military history Coordinator topicon}}
* {{Tl|WikiProject Medicine topicon}}
* {{Tl|WikiProject Motorsport topicon}}
* {{Tl|WikiProject Numbers topicon}}
* {{Tl|WikiProject Numismatics topicon}}
* {{Tl|WikiProject Olympics topicon}}
* {{Tl|WikiProject Orphanage topicon}}
* {{Tl|WikiProject Pharmacology topicon}}
* {{Tl|WikiProject Photography topicon}}
* {{Tl|WikiProject Plants topicon}}
* {{Tl|WikiProject Politics topicon}}
* {{Tl|WikiProject Professional wrestling topicon}}
* {{Tl|WikiProject Redirect topicon}}
* {{Tl|WikiProject Royalty and Nobility topicon}}
* {{Tl|WikiProject Short descriptions topicon}}
* {{Tl|WikiProject Socialism topicon}}
* {{Tl|WikiProject Soviet Union topicon}}
* {{Tl|WikiProject Spaceflight topicon}}
* {{Tl|WikiProject Spam topicon}}
* {{Tl|WikiProject Spoken Wikipedia topicon}}
* {{Tl|WikiProject Syria topicon}}
* {{Tl|WikiProject Tirana topicon}}
* {{Tl|WikiProject Trading card game topicon}}
* {{Tl|WikiProject Unreferenced articles topicon}}
* {{Tl|WikiProject Userboxes topicon}}
* {{Tl|WikiProject Video games topicon}}
* {{Tl|WikiProject Wikify topicon}}
* {{Tl|WikiProject Yorkshire topicon}}
}}
|group5= Sister projects
|list5=
{{Navbox|child
| group1 = Membership
| list1 =
* {{Tl|User Commons/topicon}}
* {{T1|User Wikidata/topicon}}
* {{Tl|User Wikivoyage/topicon}}
* {{Tl|User meta/topicon}}
| group2 = User Rights
| list2 =
* {{Tl|Commons Administrator topicon}}
* {{Tl|Commons Filemover topicon}}
* {{Tl|Meta autopatroller topicon}}
* {{Tl|Meta patroller topicon}}
* {{Tl|Meta-Wiki Autoconfirmed topicon}}
* {{Tl|Meta-Wiki Administrator topicon}}
* {{Tl|Wikispecies Administrator topicon}}
* {{Tl|Wikispecies Autoconfirmed topicon}}
}}
|group6= [[:Category:User top icon content award templates|Awards]]
|list6=
* {{Tl|Article Rescue Squadron medal}}
* {{TL|Crown topicon}}
* {{Tl|DYK user topicon}}
* {{Tl|Editor of the Week topicon}}
* {{Tl|FA user topicon}}
* {{Tl|FAC user topicon}}
* {{Tl|FL user topicon}}
* {{Tl|FLC user topicon}}
* {{Tl|FP user topicon}}
* {{Tl|FT user topicon}}
* {{Tl|GAN user topicon}}
* {{Tl|GA user topicon}}
** {{Tl|User Good articles topicon}}
* {{Tl|GAR user topicon}}
* {{Tl|GA review user topicon}}
* {{Tl|GT user topicon}}
* {{Tl|ITN user topicon}}
* {{Tl|MA user topicon}}
* {{Tl|SA user topicon}}
* {{Tl|TC user topicon}}
* {{Tl|TFA user topicon}}
* {{T1|TFL user topicon}}
* {{Tl|100KE user topicon}}
* {{Tl|4award topicon}}
* {{Tl|4A user topicon}}
* {{Tl|Precious topicon}}
** [[Template:Alternative precious topicon|alternative]]
|group7= [[:Category:User top icon content award templates|Editor Service Awards]] and<br/> [[:Category:Administrative service award templates|Administrative Service Awards]]
|list7=
* {{Tl|Registered Editor topicon}}
* {{Tl|Novice Editor topicon}}
* {{Tl|Apprentice Editor topicon}}
* {{Tl|Apprentice Editor Level 2 topicon}}
* {{Tl|Journeyman Editor topicon}}
* {{Tl|Yeoman Editor topicon}}
* {{Tl|Experienced Editor topicon}}
* {{Tl|Veteran Editor topicon}}
* {{Tl|Veteran Editor II topicon}}
* {{Tl|Veteran Editor III topicon}}
* {{Tl|Veteran Editor IV topicon}}
* {{Tl|Senior Editor topicon}}
* {{Tl|Senior Editor II topicon}}
* {{Tl|Senior Editor III topicon}}
* {{Tl|Master Editor topicon}}
* {{Tl|Master Editor II topicon}}
* {{Tl|Master Editor III topicon}}
* {{Tl|Master Editor IV topicon}}
* {{Tl|Grandmaster Editor topicon}}
* {{Tl|Grandmaster Editor First-Class topicon}}
* {{Tl|Vanguard Editor topicon}}
* {{Tl|Senior Vanguard Editor topicon}}
* {{Tl|Ultimate Vanguard Editor topicon}}
* {{Tl|New Administrator Topicon}}
* {{Tl|Novice Administrator Topicon}}
* {{Tl|Apprentice Administrator Topicon}}
* {{Tl|Journeyman Administrator Topicon}}
* {{Tl|Yeoman Administrator Topicon}}
* {{Tl|Experienced Administrator Topicon}}
* {{Tl|Veteran Administrator Topicon}}
* {{Tl|Veteran Administrator II Topicon}}
* {{Tl|Veteran Administrator III Topicon}}
* {{Tl|Veteran Administrator IV Topicon}}
* {{Tl|Senior Administrator Topicon}}
* {{Tl|Senior Administrator II Topicon}}
* {{Tl|Senior Administrator III Topicon}}
* {{Tl|Master Administrator Topicon}}
* {{Tl|Master Administrator II Topicon}}
* {{Tl|Master Administrator III Topicon}}
* {{Tl|Master Administrator IV Topicon}}
* {{Tl|Grandmaster Administrator Topicon}}
* {{Tl|Grandmaster Administrator First-Class Topicon}}
* {{Tl|Vanguard Administrator Topicon}}
|group8 = [[:Category:User top icon usergroup templates|Tools]]
|list8 =
* {{Tl|AWB topicon}}
* {{Tl|AntiVandal topicon}}
* {{Tl|Discord topicon}}
* {{Tl|CopyPatrol topicon}}
* {{Tl|HotCat topicon}}
* {{Tl|Huggle topicon}}
* {{Tl|Igloo topicon}}
* {{Tl|IRC topicon}}
* {{Tl|Lupin antivandal topicon}}
* {{Tl|Navigation popups topicon}}
* {{Tl|RedWarn topicon}}
* {{Tl|RedWarn topicon 2}}
* {{Tl|Snuggle topicon}}
* {{Tl|STiki topicon}}
* {{Tl|SWViewer topicon}}
* {{Tl|Twinkle topicon}}
* {{Tl|Ultraviolet topicon}}
* {{Tl|wikEd topicon}}
* {{Tl|WPCleaner topicon}}
|group9 = [[:Category:WikiFauna top icon templates|WikiFauna]]
|list9 =
* {{Tl|WikiCat topicon}}
* {{Tl|WikiDodo topicon}}
* {{Tl|WikiDog topicon}}
* {{Tl|WikiDragon topicon}}
* {{Tl|WikiElf topicon}}
* {{Tl|WikiEngineer topicon}}
* {{Tl|WikiFairy topicon}}
* {{Tl|WikiGnome topicon}}
* {{Tl|WikiJanitor topicon}}
* {{Tl|WikiOgre topicon}}
* {{Tl|WikiOtter topicon}}
* {{Tl|WikiPlatypus topicon}}
* {{Tl|WikiPrairie dog topicon}}
* {{Tl|WikiPrincess topicon}}
* {{Tl|WikiPuma topicon}}
* {{Tl|WikiQuatch topicon}}
* {{Tl|WikiSloth topicon}}
* {{Tl|WikiSquirrel topicon}}
* {{Tl|WikiWitch topicon}}
|group10 = [[:Category:Top icon templates|Other]]
|list10 =
* {{Tl|Altacc topicon}}
* {{Tl|Apple Music topicon}}
* {{Tl|Archive topicon}}
* {{Tl|Bot operator topicon}}
* {{Tl|Busy topicon}}
* {{Tl|Committed identity topicon}}
* {{Tl|Cookiewelcome}}
* {{Tl|Die Fliege}}
* {{Tl|Email user topicon}}
* {{Tl|Email user notification}}
* {{Tl|Foolicon}}
* {{Tl|Gmail email user topicon}}
* {{Tl|GitHub topicon}}
* {{Tl|Guestbook topicon}}
* {{Tl|Identified topicon}}
* {{Tl|Identified topicon1}}
* {{Tl|MusicBrainz editor topicon}}
* {{Tl|RC patroller topicon}}
* {{Tl|Script user topicon}}
* {{Tl|Signpost user topicon}}
* {{Tl|Stress user topicon}}
* {{Tl|Top text}}
* {{Tl|Trout me}}
* {{Tl|User Wikipedia/topicon}}
* {{Tl|ValidAlt topicon}}
* {{Tl|Spotify listener topicon}}
* {{Tl|YouTube Music listener topicon}}
}}<noinclude>
{{documentation}}
</noinclude>
t22gil04457lw4ecafcs9anftnvj5e5
10434
10433
2026-08-24T13:15:13Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Top_icon_templates]]
10433
wikitext
text/x-wiki
{{Navbox
| name = Top icon templates
| title = [[Template:Top icon|Top icons]]
| state = {{{state<includeonly>|collapsed</includeonly>}}}
| listclass = hlist
| group1 = [[:Category:Top icon content award templates|Content]]
| list1 =
* {{Tl|Featured article}}
* {{Tl|Featured list}}
* {{Tl|Good article}}
* {{Tl|Spoken Wikipedia}}
| group2 = [[:Category:Protection templates|Protection]]
| list2 =
* {{Tl|Pp}}
* {{Tl|Pp-blp}}
* {{Tl|Pp-dispute}}
* {{Tl|Pp-move}}
* {{Tl|Pp-move-dispute}}
* {{Tl|Pp-move-vandalism}}
* {{Tl|Pp-office}}
* {{Tl|Pp-pc}}
* {{Tl|Pp-semi-indef}}
* {{Tl|Pp-sock}}
* {{Tl|Pp-template}}
* {{Tl|Pp-usertalk}}
* {{Tl|Pp-vandalism}}
| group3 = [[:Category:User top icon usergroup templates|User rights]]
| list3 =
* {{Tl|Accountcreator topicon}}
* {{Tl|Administrator topicon}}
* {{Tl|Administrator baton topicon}}
* {{Tl|AfC topicon}}
* {{Tl|Arbitrator fez topicon}}
* {{Tl|Autoconfirmed topicon}}
* {{Tl|Autopatrolled topicon}}
* {{Tl|Bot topicon}}
* {{Tl|Bureaucrat topicon}}
* {{Tl|Checkuser topicon}}
* {{Tl|Checkuser, oversighter, and administrator top icon}}
* {{Tl|Confirmed topicon}}
* {{Tl|Edit filter helpers topicon}}
* {{Tl|Edit filter manager topicon}}
* {{Tl|Event coordinator topicon}}
* {{Tl|Extended confirmed topicon}}
* {{Tl|File mover topicon}}
* {{Tl|Global abuse filter helper topicon}}
* {{Tl|Global abuse filter maintainer topicon}}
* {{Tl|Global renamer topicon}}
* {{Tl|Global rollbacker topicon}}
* {{Tl|Global sysop topicon}}
* {{Tl|Importers topicon}}
* {{Tl|Interface administrator topicon}}
* {{Tl|Mass message sender topicon}}
* {{Tl|New page reviewer topicon}}
* {{Tl|Not admin topicon}}
* {{Tl|Not an admin topicon}}
* {{Tl|Oversight topicon}}
* {{Tl|Page mover topicon}}
* {{Tl|Redirect autopatrolled topicon}}
* {{Tl|Registered topicon}}
* {{Tl|Reviewer topicon}}
* {{Tl|Rollback topicon}}
* {{Tl|Steward topicon}}
* {{Tl|Template editor topicon}}
* {{Tl|Temporary account IP viewers topicon}}
* {{Tl|User topicon}}
| group4 = [[:Category:User top icon membership templates|Membership]]
| list4 =
{{Navbox|child
| group1 = Membership
| list1 =
* {{Tl|Year topicon}}
** {{Tl|5 Year topicon}}
** {{Tl|10 Year topicon}}
** {{Tl|15 Year topicon}}
** {{Tl|20 Year topicon}}
** {{Tl|25 Year topicon}}
* {{Tl|Arbitration clerk topicon}}
* {{Tl|Arbitrator topicon}}
* {{Tl|Article Rescue Squadron topicon}}
* {{Tl|Birthday Committee topicon}}
* {{Tl|BAG topicon}}
* {{Tl|CP Clerk topicon}}
* {{Tl|CVU topicon}}
* {{Tl|DPL topicon}}
* {{Tl|DRN topicon}}
* {{Tl|Feedback topicon}}
* {{Tl|GLAM Ambassador topicon}}
* {{Tl|Mediator topicon}}
* {{Tl|Online Ambassador topicon}}
* {{Tl|RC patroller topicon}}
* {{Tl|SPI clerk topicon}}
* {{Tl|SVT topicon}}
* {{Tl|SWMT topicon}}
* {{Tl|Teahouse topicon}}
* {{Tl|Teahouse Host topicon}}
* {{Tl|User mentor topicon}}
* {{Tl|Volunteer Response Team topicon 1}}
* {{Tl|Volunteer Response Team topicon 2}}
* {{Tl|Welcoming committee topicon}}
| group2 = WikiProjects
| list2 =
* {{Tl|MLV task force topicon}}
* {{Tl|WikiProject Animals topicon}}
* {{Tl|WikiProject Anime and manga top icon}}
* {{Tl|WikiProject Astronomy topicon}}
* {{Tl|WikiProject Automobiles topicon}}
* {{Tl|WikiProject Aviation topicon}}
* {{Tl|WikiProject Biography top icon}}
* {{Tl|WikiProject Birds topicon}}
* {{Tl|WikiProject Canoeing and Kayaking topicon}}
* {{Tl|WikiProject Citation cleanup topicon}}
* {{Tl|WikiProject Christianity topicon}}
* {{Tl|WikiProject Comedy topicon}}
* {{Tl|WikiProject Computing topicon}}
* {{Tl|WikiProject Council top icon}}
* {{Tl|WikiProject country member top icon|country{{=}}}}
* {{Tl|WikiProject COVID-19 topicon}}
* {{Tl|WikiProject Cricket topicon}}
* {{Tl|WikiProject Crusades topicon}}
* {{Tl|WikiProject Cryptocurrency topicon}}
* {{Tl|WikiProject Democracy topicon}}
* {{Tl|WikiProject Democracy topicon alt}}
* {{Tl|WikiProject Film topicon}}
* {{Tl|WikiProject Formula One topicon}}
* {{Tl|WikiProject Guild of Copy Editors topicon}}
* {{Tl|WikiProject Insects topicon}}
* {{Tl|WikiProject Insects topicon 2}}
* {{Tl|WikiProject Intertranswiki topicon}}
* {{Tlu|Wikipedia:WikiProject Insects/ant task force/topicon}}
* {{Tl|WikiProject Jennifer Lopez top icon}}
* {{Tl|WikiProject Judaism topicon}}
* {{Tl|WikiProject Languages topicon}}
* {{Tl|WikiProject Military history Coordinator topicon}}
* {{Tl|WikiProject Medicine topicon}}
* {{Tl|WikiProject Motorsport topicon}}
* {{Tl|WikiProject Numbers topicon}}
* {{Tl|WikiProject Numismatics topicon}}
* {{Tl|WikiProject Olympics topicon}}
* {{Tl|WikiProject Orphanage topicon}}
* {{Tl|WikiProject Pharmacology topicon}}
* {{Tl|WikiProject Photography topicon}}
* {{Tl|WikiProject Plants topicon}}
* {{Tl|WikiProject Politics topicon}}
* {{Tl|WikiProject Professional wrestling topicon}}
* {{Tl|WikiProject Redirect topicon}}
* {{Tl|WikiProject Royalty and Nobility topicon}}
* {{Tl|WikiProject Short descriptions topicon}}
* {{Tl|WikiProject Socialism topicon}}
* {{Tl|WikiProject Soviet Union topicon}}
* {{Tl|WikiProject Spaceflight topicon}}
* {{Tl|WikiProject Spam topicon}}
* {{Tl|WikiProject Spoken Wikipedia topicon}}
* {{Tl|WikiProject Syria topicon}}
* {{Tl|WikiProject Tirana topicon}}
* {{Tl|WikiProject Trading card game topicon}}
* {{Tl|WikiProject Unreferenced articles topicon}}
* {{Tl|WikiProject Userboxes topicon}}
* {{Tl|WikiProject Video games topicon}}
* {{Tl|WikiProject Wikify topicon}}
* {{Tl|WikiProject Yorkshire topicon}}
}}
|group5= Sister projects
|list5=
{{Navbox|child
| group1 = Membership
| list1 =
* {{Tl|User Commons/topicon}}
* {{T1|User Wikidata/topicon}}
* {{Tl|User Wikivoyage/topicon}}
* {{Tl|User meta/topicon}}
| group2 = User Rights
| list2 =
* {{Tl|Commons Administrator topicon}}
* {{Tl|Commons Filemover topicon}}
* {{Tl|Meta autopatroller topicon}}
* {{Tl|Meta patroller topicon}}
* {{Tl|Meta-Wiki Autoconfirmed topicon}}
* {{Tl|Meta-Wiki Administrator topicon}}
* {{Tl|Wikispecies Administrator topicon}}
* {{Tl|Wikispecies Autoconfirmed topicon}}
}}
|group6= [[:Category:User top icon content award templates|Awards]]
|list6=
* {{Tl|Article Rescue Squadron medal}}
* {{TL|Crown topicon}}
* {{Tl|DYK user topicon}}
* {{Tl|Editor of the Week topicon}}
* {{Tl|FA user topicon}}
* {{Tl|FAC user topicon}}
* {{Tl|FL user topicon}}
* {{Tl|FLC user topicon}}
* {{Tl|FP user topicon}}
* {{Tl|FT user topicon}}
* {{Tl|GAN user topicon}}
* {{Tl|GA user topicon}}
** {{Tl|User Good articles topicon}}
* {{Tl|GAR user topicon}}
* {{Tl|GA review user topicon}}
* {{Tl|GT user topicon}}
* {{Tl|ITN user topicon}}
* {{Tl|MA user topicon}}
* {{Tl|SA user topicon}}
* {{Tl|TC user topicon}}
* {{Tl|TFA user topicon}}
* {{T1|TFL user topicon}}
* {{Tl|100KE user topicon}}
* {{Tl|4award topicon}}
* {{Tl|4A user topicon}}
* {{Tl|Precious topicon}}
** [[Template:Alternative precious topicon|alternative]]
|group7= [[:Category:User top icon content award templates|Editor Service Awards]] and<br/> [[:Category:Administrative service award templates|Administrative Service Awards]]
|list7=
* {{Tl|Registered Editor topicon}}
* {{Tl|Novice Editor topicon}}
* {{Tl|Apprentice Editor topicon}}
* {{Tl|Apprentice Editor Level 2 topicon}}
* {{Tl|Journeyman Editor topicon}}
* {{Tl|Yeoman Editor topicon}}
* {{Tl|Experienced Editor topicon}}
* {{Tl|Veteran Editor topicon}}
* {{Tl|Veteran Editor II topicon}}
* {{Tl|Veteran Editor III topicon}}
* {{Tl|Veteran Editor IV topicon}}
* {{Tl|Senior Editor topicon}}
* {{Tl|Senior Editor II topicon}}
* {{Tl|Senior Editor III topicon}}
* {{Tl|Master Editor topicon}}
* {{Tl|Master Editor II topicon}}
* {{Tl|Master Editor III topicon}}
* {{Tl|Master Editor IV topicon}}
* {{Tl|Grandmaster Editor topicon}}
* {{Tl|Grandmaster Editor First-Class topicon}}
* {{Tl|Vanguard Editor topicon}}
* {{Tl|Senior Vanguard Editor topicon}}
* {{Tl|Ultimate Vanguard Editor topicon}}
* {{Tl|New Administrator Topicon}}
* {{Tl|Novice Administrator Topicon}}
* {{Tl|Apprentice Administrator Topicon}}
* {{Tl|Journeyman Administrator Topicon}}
* {{Tl|Yeoman Administrator Topicon}}
* {{Tl|Experienced Administrator Topicon}}
* {{Tl|Veteran Administrator Topicon}}
* {{Tl|Veteran Administrator II Topicon}}
* {{Tl|Veteran Administrator III Topicon}}
* {{Tl|Veteran Administrator IV Topicon}}
* {{Tl|Senior Administrator Topicon}}
* {{Tl|Senior Administrator II Topicon}}
* {{Tl|Senior Administrator III Topicon}}
* {{Tl|Master Administrator Topicon}}
* {{Tl|Master Administrator II Topicon}}
* {{Tl|Master Administrator III Topicon}}
* {{Tl|Master Administrator IV Topicon}}
* {{Tl|Grandmaster Administrator Topicon}}
* {{Tl|Grandmaster Administrator First-Class Topicon}}
* {{Tl|Vanguard Administrator Topicon}}
|group8 = [[:Category:User top icon usergroup templates|Tools]]
|list8 =
* {{Tl|AWB topicon}}
* {{Tl|AntiVandal topicon}}
* {{Tl|Discord topicon}}
* {{Tl|CopyPatrol topicon}}
* {{Tl|HotCat topicon}}
* {{Tl|Huggle topicon}}
* {{Tl|Igloo topicon}}
* {{Tl|IRC topicon}}
* {{Tl|Lupin antivandal topicon}}
* {{Tl|Navigation popups topicon}}
* {{Tl|RedWarn topicon}}
* {{Tl|RedWarn topicon 2}}
* {{Tl|Snuggle topicon}}
* {{Tl|STiki topicon}}
* {{Tl|SWViewer topicon}}
* {{Tl|Twinkle topicon}}
* {{Tl|Ultraviolet topicon}}
* {{Tl|wikEd topicon}}
* {{Tl|WPCleaner topicon}}
|group9 = [[:Category:WikiFauna top icon templates|WikiFauna]]
|list9 =
* {{Tl|WikiCat topicon}}
* {{Tl|WikiDodo topicon}}
* {{Tl|WikiDog topicon}}
* {{Tl|WikiDragon topicon}}
* {{Tl|WikiElf topicon}}
* {{Tl|WikiEngineer topicon}}
* {{Tl|WikiFairy topicon}}
* {{Tl|WikiGnome topicon}}
* {{Tl|WikiJanitor topicon}}
* {{Tl|WikiOgre topicon}}
* {{Tl|WikiOtter topicon}}
* {{Tl|WikiPlatypus topicon}}
* {{Tl|WikiPrairie dog topicon}}
* {{Tl|WikiPrincess topicon}}
* {{Tl|WikiPuma topicon}}
* {{Tl|WikiQuatch topicon}}
* {{Tl|WikiSloth topicon}}
* {{Tl|WikiSquirrel topicon}}
* {{Tl|WikiWitch topicon}}
|group10 = [[:Category:Top icon templates|Other]]
|list10 =
* {{Tl|Altacc topicon}}
* {{Tl|Apple Music topicon}}
* {{Tl|Archive topicon}}
* {{Tl|Bot operator topicon}}
* {{Tl|Busy topicon}}
* {{Tl|Committed identity topicon}}
* {{Tl|Cookiewelcome}}
* {{Tl|Die Fliege}}
* {{Tl|Email user topicon}}
* {{Tl|Email user notification}}
* {{Tl|Foolicon}}
* {{Tl|Gmail email user topicon}}
* {{Tl|GitHub topicon}}
* {{Tl|Guestbook topicon}}
* {{Tl|Identified topicon}}
* {{Tl|Identified topicon1}}
* {{Tl|MusicBrainz editor topicon}}
* {{Tl|RC patroller topicon}}
* {{Tl|Script user topicon}}
* {{Tl|Signpost user topicon}}
* {{Tl|Stress user topicon}}
* {{Tl|Top text}}
* {{Tl|Trout me}}
* {{Tl|User Wikipedia/topicon}}
* {{Tl|ValidAlt topicon}}
* {{Tl|Spotify listener topicon}}
* {{Tl|YouTube Music listener topicon}}
}}<noinclude>
{{documentation}}
</noinclude>
t22gil04457lw4ecafcs9anftnvj5e5
Tempilet:Top icon/doc
10
1277
10435
2025-02-25T13:08:14Z
en>Remsense
0
/* Template data */ ce
10435
wikitext
text/x-wiki
{{Documentation subpage}}
{{High-use}}
{{caution|Do not use images with licenses requiring attribution in a top icon if you are going to link to somewhere other than the image description page. Not linking to the image is likely to violate the license.}}
{{Template display|nomobile}}
This is a metatemplate used to help build top icons, the little (usually 20x20 pixels) icons in the top-right area of a page. The template uses the [[mw:Help:Page status indicators|page status indicator]] system.
==Usage==
<syntaxhighlight lang="wikitext" style="overflow: auto;">
{{Top icon
| imagename = Image file to use as icon.
| wikilink = The page to link to. This is where you will be taken when clicking the icon.
| description = The tooltip will display this text when the mouse pointer hovers over the icon.
| id = A unique id is required when using different top icons on the same page.
}}</syntaxhighlight>
Extra options:
<syntaxhighlight lang="wikitext" style="overflow: auto;">
| sortkey = Allows ordering the icons according to the sortkey given.
| width = Uses a different width for the images. Default is 20.
| height = Uses a different height for the images. Default is 20.
| usercat = Adds a category to be added in userspace.
| maincat = Adds a category to be added in article mainspace.
| subpage = For categorization on subpages (default = no).
| nocat = Disables the automatically added category (default = no).
| skin-invert = Sets the `skin-invert` CSS class (which inverts the value of colors when viewed in dark mode) on the image. Intended for default-black icons or others that require this for dark mode visibility.
</syntaxhighlight>
Top icons are automatically sorted for consistency in articles. For that reason, {{para|sortkey}} should only be used in user top icons. Sort keys are sorted alphabetically, so, for example, "19" will sort before "2". If you want to use numbers as sort keys, and you have more than 10 top icons on a page, you must add leading zeroes, e.g. {{para|sortkey|01}}, {{para|sortkey|02}}, etc.
{{para|width}} and {{para|height}} are restrictive, meaning when one parameter is not set explicitly, the default acts as a maximum, even if the other parameter is set higher. To increase the overall size, both must be specified.
The following parameters are obsolete and no longer functional: {{para|{{red|number}}}}, {{para|{{red|icon_nr}}}}, {{para|{{red|offset}}}}, {{para|{{red|extra-offset}}}}, {{para|{{red|class}}}} and {{para|{{red|style}}}}.
===Example===
<syntaxhighlight lang="wikitext">
{{Accountcreator topicon}}
{{Rollback topicon}}
{{Autopatrolled topicon}}
</syntaxhighlight>
===Example with blank space===
<syntaxhighlight lang="wikitext">
{{Admin topicon|sortkey=1}}
{{Top icon|imagename=Blank 50px.png|sortkey=2}}
{{Oversighter topicon|sortkey=3}}
{{Checkuser topicon|sortkey=4}}
</syntaxhighlight>
==Tracking category==
* {{clc|Pages using Top icon with unknown parameters}}
** The following parameters are obsolete, "unknown", and no longer functional: {{para|{{red|number}}}}, {{para|{{red|icon_nr}}}}, {{para|{{red|offset}}}}, {{para|{{red|extra-offset}}}}, {{para|{{red|class}}}} and {{para|{{red|style}}}}.
==See also==
* [[mw:Help:Page status indicators]]
{{top icon templates}}
== Template data ==
<templatedata>
{
"description": "The topicon meta-template",
"params": {
"imagename": {
"label": "Image name",
"description": "Image file to use as icon",
"aliases": [
"image",
"1"
],
"required": true,
"example": "Crystal 128 penguin.png",
"type": "wiki-file-name"
},
"wikilink": {
"label": "Link",
"description": "The page to link to. This is where you will be taken when clicking the icon. Do not use images with licenses requiring attribution in a top icon if you are going to link to somewhere other than the image description page, as that is likely to violate the license",
"aliases": [
"link",
"2"
],
"suggested": true,
"example": "User:Anomie/Penguin Cabal",
"type": "wiki-page-name"
},
"description": {
"label": "Description",
"description": "Text displayed in a tooltip when hovering over the icon",
"aliases": [
"text",
"3"
],
"suggested": true,
"example": "This user is in the Penguin Cabal",
"type": "string"
},
"id": {
"label": "Id",
"description": "A unique id, required when using different top icons on the same page",
"aliases": [
"name"
],
"example": "penguin-cabal-topicon",
"type": "string"
},
"alt": {
"label": "Alternative text",
"description": "The alternative text for the image",
"type": "string"
},
"sortkey": {
"label": "Sort key",
"description": "Allows ordering the icons according to the sort key given",
"example": "2",
"type": "string"
},
"width": {
"label": "Width",
"description": "Sets a different width for the images",
"default": "20",
"type": "number"
},
"height": {
"label": "Height",
"description": "Sets a different height for the images",
"default": "20",
"type": "number"
},
"usercat": {
"label": "Category in userspace",
"description": "Adds a category to be included in userspace",
"type": "wiki-page-name",
"example": "[[Category:Penguins]]"
},
"maincat": {
"label": "Category in the article mainspace",
"description": "Adds a category to be included in the article mainspace",
"type": "wiki-page-name",
"example": "[[Category:Penguins]]"
},
"subpage": {
"label": "Subpage category",
"description": "For categorization on subpages",
"default": "no",
"type": "string"
},
"nocat": {
"label": "Disable all categories",
"description": "Disables the automatically added category",
"default": "no",
"type": "string"
},
"skin-invert": {
"label": "Invert brightness in dark mode",
"description": "Inverts the icon's brightness when using dark mode",
"example": "yes",
"type": "string"
}
}
}
</templatedata>
<includeonly>{{Sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Title templates]]
[[Category:Top icon templates]]
[[Category:User top icon templates| ]]
}}</includeonly>
gm56pmg2shn98a557mqq7lholo68iae
10436
10435
2026-08-24T13:15:13Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Top_icon/doc]]
10435
wikitext
text/x-wiki
{{Documentation subpage}}
{{High-use}}
{{caution|Do not use images with licenses requiring attribution in a top icon if you are going to link to somewhere other than the image description page. Not linking to the image is likely to violate the license.}}
{{Template display|nomobile}}
This is a metatemplate used to help build top icons, the little (usually 20x20 pixels) icons in the top-right area of a page. The template uses the [[mw:Help:Page status indicators|page status indicator]] system.
==Usage==
<syntaxhighlight lang="wikitext" style="overflow: auto;">
{{Top icon
| imagename = Image file to use as icon.
| wikilink = The page to link to. This is where you will be taken when clicking the icon.
| description = The tooltip will display this text when the mouse pointer hovers over the icon.
| id = A unique id is required when using different top icons on the same page.
}}</syntaxhighlight>
Extra options:
<syntaxhighlight lang="wikitext" style="overflow: auto;">
| sortkey = Allows ordering the icons according to the sortkey given.
| width = Uses a different width for the images. Default is 20.
| height = Uses a different height for the images. Default is 20.
| usercat = Adds a category to be added in userspace.
| maincat = Adds a category to be added in article mainspace.
| subpage = For categorization on subpages (default = no).
| nocat = Disables the automatically added category (default = no).
| skin-invert = Sets the `skin-invert` CSS class (which inverts the value of colors when viewed in dark mode) on the image. Intended for default-black icons or others that require this for dark mode visibility.
</syntaxhighlight>
Top icons are automatically sorted for consistency in articles. For that reason, {{para|sortkey}} should only be used in user top icons. Sort keys are sorted alphabetically, so, for example, "19" will sort before "2". If you want to use numbers as sort keys, and you have more than 10 top icons on a page, you must add leading zeroes, e.g. {{para|sortkey|01}}, {{para|sortkey|02}}, etc.
{{para|width}} and {{para|height}} are restrictive, meaning when one parameter is not set explicitly, the default acts as a maximum, even if the other parameter is set higher. To increase the overall size, both must be specified.
The following parameters are obsolete and no longer functional: {{para|{{red|number}}}}, {{para|{{red|icon_nr}}}}, {{para|{{red|offset}}}}, {{para|{{red|extra-offset}}}}, {{para|{{red|class}}}} and {{para|{{red|style}}}}.
===Example===
<syntaxhighlight lang="wikitext">
{{Accountcreator topicon}}
{{Rollback topicon}}
{{Autopatrolled topicon}}
</syntaxhighlight>
===Example with blank space===
<syntaxhighlight lang="wikitext">
{{Admin topicon|sortkey=1}}
{{Top icon|imagename=Blank 50px.png|sortkey=2}}
{{Oversighter topicon|sortkey=3}}
{{Checkuser topicon|sortkey=4}}
</syntaxhighlight>
==Tracking category==
* {{clc|Pages using Top icon with unknown parameters}}
** The following parameters are obsolete, "unknown", and no longer functional: {{para|{{red|number}}}}, {{para|{{red|icon_nr}}}}, {{para|{{red|offset}}}}, {{para|{{red|extra-offset}}}}, {{para|{{red|class}}}} and {{para|{{red|style}}}}.
==See also==
* [[mw:Help:Page status indicators]]
{{top icon templates}}
== Template data ==
<templatedata>
{
"description": "The topicon meta-template",
"params": {
"imagename": {
"label": "Image name",
"description": "Image file to use as icon",
"aliases": [
"image",
"1"
],
"required": true,
"example": "Crystal 128 penguin.png",
"type": "wiki-file-name"
},
"wikilink": {
"label": "Link",
"description": "The page to link to. This is where you will be taken when clicking the icon. Do not use images with licenses requiring attribution in a top icon if you are going to link to somewhere other than the image description page, as that is likely to violate the license",
"aliases": [
"link",
"2"
],
"suggested": true,
"example": "User:Anomie/Penguin Cabal",
"type": "wiki-page-name"
},
"description": {
"label": "Description",
"description": "Text displayed in a tooltip when hovering over the icon",
"aliases": [
"text",
"3"
],
"suggested": true,
"example": "This user is in the Penguin Cabal",
"type": "string"
},
"id": {
"label": "Id",
"description": "A unique id, required when using different top icons on the same page",
"aliases": [
"name"
],
"example": "penguin-cabal-topicon",
"type": "string"
},
"alt": {
"label": "Alternative text",
"description": "The alternative text for the image",
"type": "string"
},
"sortkey": {
"label": "Sort key",
"description": "Allows ordering the icons according to the sort key given",
"example": "2",
"type": "string"
},
"width": {
"label": "Width",
"description": "Sets a different width for the images",
"default": "20",
"type": "number"
},
"height": {
"label": "Height",
"description": "Sets a different height for the images",
"default": "20",
"type": "number"
},
"usercat": {
"label": "Category in userspace",
"description": "Adds a category to be included in userspace",
"type": "wiki-page-name",
"example": "[[Category:Penguins]]"
},
"maincat": {
"label": "Category in the article mainspace",
"description": "Adds a category to be included in the article mainspace",
"type": "wiki-page-name",
"example": "[[Category:Penguins]]"
},
"subpage": {
"label": "Subpage category",
"description": "For categorization on subpages",
"default": "no",
"type": "string"
},
"nocat": {
"label": "Disable all categories",
"description": "Disables the automatically added category",
"default": "no",
"type": "string"
},
"skin-invert": {
"label": "Invert brightness in dark mode",
"description": "Inverts the icon's brightness when using dark mode",
"example": "yes",
"type": "string"
}
}
}
</templatedata>
<includeonly>{{Sandbox other||
<!-- Categories below this line, please; interwikis at Wikidata -->
[[Category:Title templates]]
[[Category:Top icon templates]]
[[Category:User top icon templates| ]]
}}</includeonly>
gm56pmg2shn98a557mqq7lholo68iae
Tempilet:Editnotice EXPECTUNUSEDTEMPLATE
10
1278
10437
2026-01-08T04:44:45Z
en>HouseBlaster
0
protection padlock provided by [[TM:documentation]]
10437
wikitext
text/x-wiki
{{#ifeq:Template:Editnotices|{{FULLROOTPAGENAME}}|__EXPECTUNUSEDTEMPLATE__}}<noinclude>{{documentation}}</noinclude>
1zwqf3zeqxnh21v7kbtjaygvxm2lqko
10438
10437
2026-08-24T13:15:14Z
RAPTOR7762
18
1 revision imported from [[:en:Template:Editnotice_EXPECTUNUSEDTEMPLATE]]
10437
wikitext
text/x-wiki
{{#ifeq:Template:Editnotices|{{FULLROOTPAGENAME}}|__EXPECTUNUSEDTEMPLATE__}}<noinclude>{{documentation}}</noinclude>
1zwqf3zeqxnh21v7kbtjaygvxm2lqko
Tempilet:Bole Wikimedians User Group/mobile
10
1279
10462
2026-08-24T14:58:09Z
RAPTOR7762
18
Created page with "<div> {{subst:Bole Wikimedians User Group}} </div>"
10462
wikitext
text/x-wiki
<div>
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = autocollapse
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address|link=]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
</div>
l7y2pw76k88uhs7vrl0mc308mk9vyh8
10463
10462
2026-08-24T15:04:41Z
RAPTOR7762
18
10463
wikitext
text/x-wiki
<div>
{{Box
| header = <div style="background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0; text-align:center; font-size: 12pt;"><b>Bole Wikimedians User Group</b></div>
| content = {{Bole Wikimedians User Group/content}}
}}
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = autocollapse
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address|link=]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
</div>
1ty1mhx1lfnvcsi1xckcb5p3kxmygrs
10464
10463
2026-08-24T15:06:17Z
RAPTOR7762
18
10464
wikitext
text/x-wiki
<div>
{{Box
| header = <div style="background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0; text-align:center; font-size: 12pt;"><b>Bole Wikimedians User Group</b></div>
| content = [[File:Bole Wikimedians User Group Logo.svg|center|200px]]{{Bole Wikimedians User Group/content}}
}}
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = autocollapse
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address|link=]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
}}
</div>
86mz0fr9lf6d2qwtt3yr8ko8ox0lnfd
10465
10464
2026-08-24T15:38:00Z
El-hussain14
25
10465
wikitext
text/x-wiki
<div>
{{Box
| header = <div style="background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0; text-align:center; font-size: 12pt;"><b>Bole Wikimedians User Group</b></div>
| content = [[File:Bole Wikimedians User Group Logo.svg|center|200px]]{{Bole Wikimedians User Group/content}}
}}
{{Navbox
| name = Bole Wikimedians User Group
| title = Bole Wikimedians User Group
| state = autocollapse
| image = [[File:Bole Wikimedians User Group Logo.svg|200px]]
| bodyclass = hlist
| bodystyle = font-family:'Segoe UI', Arial, sans-serif; font-size: 13px; background: #ffffff; border: 1px solid #e2e8f0; border-radius: 6px; line-height: 1.3;
| basestyle = background: #202122; color: white; font-weight: bold;
| titlestyle = background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0;
| groupstyle = background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right;
| liststyle = padding: 3px 8px; background: #ffffff;
| group1 = <!--T:2--> Getting involved!
| list1 =
*[[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
| group2 = <!--T:4--> Community Events
| list2 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
| group3 = Annual Reports
| list3 =
* [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
| group4 = Community Meetings
| list4 = {{Bole Wikimedians User Group/Meetings}}
| group5 = <!--T:38--> Hubs/Networks
| list5 =
* [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
| group6 = <!--T:20--> Newsletter
| list6 =
* [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
| belowstyle = background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px;
| below =
[[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address|link=]] '''{{nospam|bolewikimedia|gmail.com}}'''
}}
</div>
fvbslrnasviwxeim1c5qz9n97cn4y7e
10496
10465
2026-08-25T06:05:54Z
RAPTOR7762
18
10496
wikitext
text/x-wiki
<div class="mobileonly">
{{Box
| header = <div style="background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0; text-align:center; font-size: 12pt;"><b>Bole Wikimedians User Group</b></div>
| content = [[File:Bole Wikimedians User Group Logo.svg|center|200px]]{{Bole Wikimedians User Group/content}}
}}
</div>
qiw7hlvqf7y1o5yvn9ua4ltaeaaai5p
10498
10496
2026-08-25T06:11:01Z
RAPTOR7762
18
10498
wikitext
text/x-wiki
<div class="mobile-only">
{{Box
| header = <div style="background: linear-gradient(90deg, #1e3a8a, #3b82f6); color: white; padding: 4px 10px; border-radius: 4px 4px 0 0; text-align:center; font-size: 12pt;"><b>Bole Wikimedians User Group</b></div>
| content = [[File:Bole Wikimedians User Group Logo.svg|center|200px]]{{Bole Wikimedians User Group/content}}
}}
</div>
16ll7d8wh6kaujnzx6un340glamhgqm
Tempilet:Bole Wikimedians User Group/content
10
1280
10485
2026-08-24T23:19:26Z
RAPTOR7762
18
/* */
10485
wikitext
text/x-wiki
{|
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | bbb
| nnb
|}
gx2ya0681vbxc5u7idusiz2d4e13p9p
10487
10485
2026-08-24T23:37:09Z
RAPTOR7762
18
/* */
10487
wikitext
text/x-wiki
{|
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Getting involved!
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
|}
2zn506a4k40hb78lpu1sjhyn4afj7hs
10493
10487
2026-08-25T05:55:48Z
RAPTOR7762
18
10493
wikitext
text/x-wiki
{| style="font-size: 9pt;"
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Getting involved!
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
|}
2tophzcqoy1yzha4ee2sitwo7x9tpws
10494
10493
2026-08-25T06:02:19Z
RAPTOR7762
18
10494
wikitext
text/x-wiki
{| style="font-size: 12px;"
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Getting involved!
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Community Events
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Annual Reports
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Hubs/Networks
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Newsletter
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
|-
| colspan="2"; style="background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px; text-align: center" | [[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address|link=]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
|}
srdghqfy8kqupfe4wjtfqx1c7fxpyb9
10495
10494
2026-08-25T06:03:58Z
RAPTOR7762
18
10495
wikitext
text/x-wiki
{| style="font-size: 12px;"
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Getting involved!
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Community Events
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Meetings
| style="padding: 3px 8px; background: #ffffff;" | {{Bole Wikimedians User Group/Meetings}}
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Annual Reports
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Hubs/Networks
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Newsletter
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
|-
| colspan="2"; style="background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px; text-align: center" | [[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address|link=]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
|}
bvsjmadl5rdgvryccvfnhggkykluu6z
10497
10495
2026-08-25T06:06:53Z
RAPTOR7762
18
10497
wikitext
text/x-wiki
{| style="font-size: 12px;"
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Getting involved!
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Community Events
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Meetings
| style="padding: 3px 8px; background: #ffffff;" | {{Bole Wikimedians User Group/Meetings}}
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Annual Reports
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Hubs/Networks
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Newsletter
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
|-
| colspan="2"; style="background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px; text-align: center; width=100%;" | [[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address|link=]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
|}
2gf683xpfh1a2sz8mti17c61vot4qsr
10503
10497
2026-08-25T08:42:39Z
RAPTOR7762
18
10503
wikitext
text/x-wiki
{| style="font-size: 13px;"
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Getting involved!
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Community Events
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Meetings
| style="padding: 3px 8px; background: #ffffff;" | {{Bole Wikimedians User Group/Meetings}}
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Annual Reports
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Hubs/Networks
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Newsletter
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
|-
| colspan="2"; style="background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px; text-align: center; width=100%;" | [[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address|link=]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
|}
o7psa7k3x2i3ctdzhmu31lvmpsdglbn
10504
10503
2026-08-25T08:43:05Z
RAPTOR7762
18
10504
wikitext
text/x-wiki
{| style="font-size: 13.5px;"
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Getting involved!
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Membership|<!--T:3--> Join us!]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Community Events
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/Events|<!--T:33--> All time events!]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Meetings
| style="padding: 3px 8px; background: #ffffff;" | {{Bole Wikimedians User Group/Meetings}}
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Annual Reports
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2023|2023]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2024|2024]] • [[meta:Bole Wikimedians User Group/Annual_Report_2025|2025]] • [[meta:Bole Wikimedians User Group/Reports/Annual_Report_2026|2026]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Hubs/Networks
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians Yobe Network|<!--T:40--> Yobe Network]] • [[meta:Special:MyLanguage/Bole Wikimedians Gombe Network|<!--T:39--> Gombe Network]]
|-
| style="background: #f8f9fa; color: #202122; font-weight: 600; padding: 3px 8px; border-right: 1px solid #e2e8f0; text-align: right; width: 25%;" | Newsletter
| style="padding: 3px 8px; background: #ffffff;" | [[meta:Special:MyLanguage/Bole Wikimedians User Group/News|All news]]
|-
| colspan="2"; style="background: #f1f5f9; color: #475569; border-top: 1px solid #e2e8f0; padding: 5px; border-radius: 0 0 4px 4px; font-size: 12px; text-align: center; width=100%;" | [[File:2023 Facebook icon.svg|frameless|13px|alt={{Name|Facebook}}|link=]] '''[https://www.facebook.com/61590521903033/ Bole Wikimedians User Group]''' • [[File:Email social icon.svg|frameless|13px|alt=<!--T:10--> Email address|link=]] '''{{nospam|bolewikimediansusergroup|gmail.com}}'''
|}
nrk8fb37rw4bjfxd3yclgm9a5sl4c53