Difference between revisions of "Template:Honor infobox"

From Pathfinder Wiki
(changed font color of the skill level numbers to white)
(fix missing translation for pilot author and state (both don't need to be translated...))
 
(100 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<noinclude><translate><!--T:1-->
 
</noinclude>
 
 
 
<noinclude>
 
<noinclude>
 
This template creates an infobox for an honor.
 
This template creates an infobox for an honor.
==TODO== <!--T:2-->
+
 
*Fix broken things
+
==Mechanics==
 +
The mechanics are just opaque magic (sorry).
  
 
==Example== <!--T:3-->
 
==Example== <!--T:3-->
<nowiki>{{Honor infobox2
+
<div class="toccolours">
|honorname=Aboriginal Lore
+
<nowiki><div style="max-width: 300px"></nowiki>
|skill=1
+
:<nowiki>{{</nowiki>Honor infobox<br/>
|year=2001
+
::|honorlandingpage=AY Honors/Camping Skills IV<br/>
|category=Arts and Crafts
+
::|skill=2<br/>
|authority=General Conference
+
::|year=2001<br/>
|insignia=Aboriginallore.png
+
::|category=Recreation<br/>
}}</nowiki>
+
::|authority=General Conference<br/>
{{Honor infobox2
+
::|insignia=Camping_Skills_IV.png<br/>
|honorname=Aboriginal Lore
+
::|insignia_source=foo<br/>
|skill=1
+
::|master1=Wilderness<br/>
 +
:}}
 +
<nowiki></div></nowiki>
 +
</div>
 +
<div style="max-width: 300px">
 +
{{Honor infobox
 +
|honorlandingpage=AY Honors/Camping Skills IV
 +
|skill=2
 
|year=2001
 
|year=2001
|category=Arts and Crafts
+
|category=Recreation
 
|authority=General Conference
 
|authority=General Conference
|insignia=Aboriginallore.png
+
|insignia=Camping_Skills_IV.png
 +
|insignia_source=foo
 +
|master1=Wilderness
 
}}
 
}}
</noinclude>
+
</div>
<includeonly>{| style="text-align: center; box-shadow: 5px 5px 10px rgba(0,0,0, .3); border-radius: 10px; margin-bottom: 0;"
+
<!--T:4-->
|-
+
[[Category:UsesLoops]]</noinclude>
|colspan="2" style="font-size:1.6rem; font-weight: bold;"|{{{honorname}}}
+
<includeonly><!-- Get the List of Master Honors -->{{#vardefine:localCategory|{{{category|{{GetHonorMetaData|language=/en}}}}}}}{{#vardefine:master|{{GetMasterCategoryList|category={{#var:localCategory}}|master1={{{master1|{{GetHonorMetaData|language=/en|parameter=master1}}}}}|master2={{{master2|{{GetHonorMetaData|language=/en|parameter=master2}}}}}}}}}<!-- create the string-variables holding the content for the see more section -->{{#vardefine:i|0}}{{#vardefine:locSeeAlsoLess|}}{{#vardefine:locSeeAlsoMore|}}<!-- get all interesting links for see also into one variable separated by | -->{{#vardefine:locSeeAlsoAll|{{#var:master}}{{GetHonorSeeAlso}}}}{{#if:{{#explode: {{#var:locSeeAlsoAll}}|%{{!}}%|{{#var:i}} }} | {{#vardefine:locSeeAlsoLess|{{#explode: {{#var:locSeeAlsoAll}}|%{{!}}%|{{#var:i}} }} }}{{#vardefine: i | {{#expr: {{#var: i }} + 1 }} }}{{#while: | {{#explode: {{#var:locSeeAlsoAll}}|%{{!}}%|{{#var:i}} }} | {{#ifexpr: {{#var:i}}<3|<!--yes-->{{#vardefine:locSeeAlsoLess|{{#var:locSeeAlsoLess}}<br>{{#explode: {{#var:locSeeAlsoAll}}|%{{!}}%|{{#var:i}} }} }}|<!--no-->{{#vardefine:locSeeAlsoMore|{{#var:locSeeAlsoMore}}{{#ifexpr:{{#var:i}}>3|<br>}}{{#explode: {{#var:locSeeAlsoAll}}|%{{!}}%|{{#var:i}} }} }} }}{{#vardefine: i | {{#expr: {{#var: i }} + 1 }} }} }} }}<!-- get the patch -->{{#vardefine:localInsignia|{{{insignia|{{GetHonorMetaData|language=/en|parameter=insignia|dontTranslate=true}}}}}}}{{#vardefine:honorstate|{{{state|{{GetHonorMetaData|dontTranslate=true|parameter=state}}}}}}}{{#vardefine:patch|{{#if:{{#var:localInsignia}}|{{#switch:{{#var:localInsignia}}
|-
+
|No Patch.png
|colspan="2" style="padding: .5rem 2rem;"|
+
|No_Patch.png={{Localize|{{#ifeq:{{#var:honorstate}}|piloting|Pilot No Patch|No Patch}}|Images}}
{{#if:{{{insignia_source|}}}
+
|{{#var:localInsignia}}
  |{{Superimpose
+
}}|{{Localize|{{#ifeq:{{#var:honorstate}}|piloting|Pilot No Patch|No Patch}}|Images}}}}}}<!--
       | base = {{{insignia|No_Patch.png}}}
+
check if Not availabel at AdventSource should be shown
       | base_width = 150px
+
-->{{#vardefine:locPilotAuthor|{{#ifeq:{{#var:honorstate}}|piloting|{{{pilotAuthor|{{GetHonorMetaData|dontTranslate=true|parameter=pilotAuthor}}}}}}}|}}{{#vardefine:showNotAdventSrc|{{#ifeq:{{#var:honorstate}}|piloting|true|{{#if:{{{insignia_source|{{GetHonorMetaData|language=/en|parameter=insignia_source}}}}}|true|false}}}}}}
       | float = Not available at AdventSource.png
+
<templatestyles src="Honor infobox/style.css" /><div class="mw-parser-output">
 +
{{Infobox
 +
|bodyclass=honor-infobox
 +
|above={{#ifeq:{{#var:honorstate}}|piloting|{{Localize|NAD Pilot for}}|{{GetHonorName|page={{{honorlandingpage|}}}}}}}
 +
|subheader={{#ifeq:{{#var:honorstate}}|piloting|{{GetHonorName|page={{{honorlandingpage|}}}}}}}
 +
|subheader2=[[AY Honors/{{#var:localCategory}}{{GetLangSuffix}}|{{Localize|{{#var:localCategory}}}}]]
 +
|image={{#ifeq:{{#var:showNotAdventSrc}}|true|{{Superimpose
 +
       | base = {{#var:patch}}
 +
       | base_width = 100%
 +
      | base_max_width = 150px
 +
       | float = {{Localize|Not available at AdventSource|Images}}
 
       | float_width = 170px
 
       | float_width = 170px
 
       | align=center
 
       | align=center
Line 41: Line 58:
 
     }}
 
     }}
 
   |{{Superimpose
 
   |{{Superimpose
       | base = {{{insignia|No_Patch.png}}}
+
       | base = {{#var:patch}}
       | base_width = 150px
+
       | base_width = 100%
 +
      | base_max_width = 150px
 
       | align=center
 
       | align=center
 
     }}
 
     }}
 
}}
 
}}
|-
+
|col1_label1={{Localize|Skill Level}}
!colspan="2" style="text-align: center; font-size: 1rem; font-weight: bold;" |Skill Level
+
|col1_data1={{Honor infobox/echoSkillLevel | skill={{{skill|{{GetHonorMetaData|parameter=skill}}}}}}}
|-
+
 
|colspan="2" style="padding: 0 0 .5rem 0; font-size: 1.5rem;" |<span style="display: inline-block; line-height: 1.5em; width: 1.5em; border-radius: 4em; color: white; background-color:\
+
|col1_label2={{#ifeq:{{#var:honorstate}}|piloting||{{Localize|Approval authority}}}}
{{SkillColor|skill={{{skill}}}|star=1}};">1</span> <span style="display: inline-block; line-height: 1.5em; width: 1.5em; border-radius: 4em; color: white; background-color: {{SkillColor|skill={{{skill}}}|star=2}};">2</span> <span style="display: inline-block; line-height: 1.5em; width: 1.5em; border-radius: 4em; color: white; background-color: {{SkillColor|skill={{{skill}}}|star=3}};">3</span>
+
|col1_data2={{#ifeq:{{#var:honorstate}}|piloting||{{#if:{{{authority|}}}|{{Localize|{{{authority}}}|Authorities}}|{{GetHonorMetaData|parameter=authority}}}}}}
|-
+
|col2_label2={{#ifeq:{{#var:honorstate}}|piloting||{{Localize|Year of Introduction}}}}
!colspan="2" style="text-align: center; font-size: 1rem; font-weight: bold;" |Part of
+
|col2_data2={{#ifeq:{{#var:honorstate}}|piloting||{{#vardefine:localYear|{{{year|{{GetHonorMetaData|language=/en|parameter=year}}}}}}}{{#iferror:{{#expr:1+{{#var:localYear|X}} }}|{{Localize|Unknown}}|{{#var:localYear}} }} }}
|-
+
|rowclass3=honor-infobox-seeAlso
|colspan="2" | {{{category}}}
+
|col1_label3={{Localize|See also}}
|-
+
|col1_data3={{#var:locSeeAlsoLess}}{{#if: {{#var:locSeeAlsoMore}}|
! style="text-align: center; font-size: 1rem; font-weight: bold;" |Approval authority
+
<div id="infobox-see-also" class="mw-collapsible mw-collapsed" data-expandtext="{{Localize|More}}" data-collapsetext="{{Localize|Less}}"><br>
! style="text-align: center; font-size: 1rem; font-weight: bold;" |Year of Introduction
+
{{#var:locSeeAlsoMore}}
|-
+
</div>}}
|{{{authority|Unknown}}}
+
|col1_noDefaultStyle4=true
|{{{year|Unknown}}}
+
|col1_data4={{#ifeq:{{#var:honorstate}}|piloting|<htmltag tagname="a" class="btn btn-accent" href="https://form.jotform.com/220234764665155?honorProposal={{#invoke:String|urlencode|{{#titleparts:{{PAGENAME}}|1|2}}}}" target="_blank">{{Localize|Give Feedback}}</htmltag>|}}
|}
+
|col1_class4=honor-infobox-button
<includeonly>
+
|col1_noDefaultStyle5=true
<noinclude></translate></noinclude>
+
|col1_data5={{#if:{{#var:locPilotAuthor}}|<htmltag tagname="a" class="btn btn-accent" href="{{fullurl:Special:EmailUser/{{#var:locPilotAuthor}}}}" target="_blank">{{Localize|Contact Pilot Author}}</htmltag>|}}
 +
|col1_class5=honor-infobox-button
 +
|col1_noDefaultStyle10=true
 +
|col1_data10={{#ifsysop:<div class="dropdown"><htmltag tagname="button" class="btn btn-accent dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">{{Localize|Downloads}}</htmltag><div class="dropdown-menu" aria-labelledby="dropdownMenuButton"><htmltag tagname="a" href="{{fullurl:{{#titleparts:{{PAGENAME}}|2|1}}/Requirements{{GetLangSuffix}}|action=mpdf}}" class="dropdown-item">{{Localize|Requirements}}
 +
</htmltag><htmltag tagname="a" href="{{fullurl:{{#titleparts:{{PAGENAME}}|2|1}}/Answer Key{{GetLangSuffix}}|action=mpdf}}" class="dropdown-item">{{Localize|Answer Key}}</htmltag></div></div>|}}
 +
|col1_class10=honor-infobox-button
 +
}}
 +
</div>{{#invoke:Utilities|logger|{{Localize|{{#var:localCategory}}}}}}
 +
</includeonly>

Latest revision as of 20:55, 28 April 2022

This template creates an infobox for an honor.

Mechanics

The mechanics are just opaque magic (sorry).

Example

<div style="max-width: 300px">

{{Honor infobox
|honorlandingpage=AY Honors/Camping Skills IV
|skill=2
|year=2001
|category=Recreation
|authority=General Conference
|insignia=Camping_Skills_IV.png
|insignia_source=foo
|master1=Wilderness
}}

</div>


Camping Skills IV
Recreation
Skill Level
123
Approval authority
General Conference
Year of Introduction
2001
See also