Difference between revisions of "Template:Infobox book"
(Handle multiple ISBNs. Although we should probably add separate parameters for different languages.) |
Dinoguy1000 (talk | contribs) (update property name) |
||
(10 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{ #vardefine: $pagename | {{Normalized pagename|{{PAGENAME}}}} |
− | + | }}{{ #if: {{ #vardefineecho: $italicize_title | {{ #switch: {{ lc: {{{italic_title}}} }} | no | none | off | false | 0 = | #default = yes }} }} | |
− | | {{ | + | | {{ #if: {{{italic_title|}}} |
− | #ifeq: {{ #replace: {{{name}}} | '' }} | {{ | + | | {{Italic title|{{{italic_title}}}}} |
− | + | | {{ #if: {{ #pos: {{{name}}} | '' }} | |
− | + | | {{ #ifeq: {{ #replace: {{{name}}} | '' }} | {{ #var: $pagename }} | |
− | + | | {{Italic title|{{{name}}}|t=1}} | |
− | + | | {{Italic title|t=1}} | |
− | + | }} | |
+ | | {{Italic title|t=1}} | ||
}} | }} | ||
}} | }} | ||
− | + | }}{{ #vardefine: $pagename | {{ #explode: {{ #var: $pagename }} | ( }} | |
− | + | }}{{Infobox | |
− | + | | above = {{ #if: {{{name|}}} | {{{name}}} | {{ #var: $pagename }} }} | |
− | + | | image = {{ #if: {{{image<includeonly>|</includeonly>}}} | [[File:{{PAGENAME:{{{image}}}}}|{{ #vardefine: $width | {{ #ifexpr: {{ #imgw: {{{image}}} }} < 257 | {{ #imgw: {{{image}}} }} | 257 }} }}{{ #iferror: {{ #ifexpr: {{{width}}} < 257 | {{ #ifexpr: {{{width}}} < {{ #var: $width }} | {{{width}}} | {{ #var: $width }} }} | {{ #var: $width }} }} | {{ #var: $width }} }}px|{{ #if: {{{caption<includeonly>|</includeonly>}}} | {{{caption}}} | {{ #if: {{{name|}}} | {{{name}}} | {{ #var: $pagename }} }} }}]] }} | |
− | |||
− | | above = {{ #if: {{{name|}}} | {{{name}}} | {{ # | ||
− | | image = {{ #if: {{{image<includeonly>|</includeonly>}}} | [[File:{{{image}}}|{{ # | ||
− | | abovestyle = {{ #if: {{ | + | | abovestyle = {{ #if: {{ #var: $italicize_title }}{{ #pos: {{{name}}} | '' }} || font-style: italic; }} |
| bodyclass = list-noicon | | bodyclass = list-noicon | ||
− | | labelstyle = vertical-align: middle; background: #DDF; | + | | labelstyle = vertical-align: middle; background-color: #DDF; |
− | | headerstyle = background: #CCF; | + | | headerstyle = background-color: #CCF; |
− | | data1 = {{Infobox | + | | data1 = {{ #if: {{{en_name<includeonly>|</includeonly>}}}{{{name|}}}{{{fr_name|}}}{{{de_name|}}}{{{it_name|}}}{{{pt_name|}}}{{{es_name|}}}<!-- |
− | + | -->{{{ja_name|}}}{{{romaji_name|}}}{{{ja_trans_name|}}}{{{ko_name|}}}{{{hanja_name|}}}{{{ko_rr_name|}}}{{{ko_trans_name|}}} | |
− | + | | {{Infobox | |
− | + | | child = yes | |
+ | | headerstyle = background-color: #CCF; | ||
+ | | labelstyle = vertical-align: middle; background-color: #DDF; | ||
− | + | | header1 = Names | |
− | + | | label2 = English | |
− | + | | data2 = {{ #if: {{{en_name<includeonly>|</includeonly>}}} | |
− | + | | ''{{{en_name}}}''[[English name::{{{en_name}}}| ]] | |
− | + | | {{ #if: {{{name|}}} | |
− | + | | {{{name}}}[[English name::{{ #replace: {{{name}}} | '' }}| ]] | |
− | + | | ''{{ #var: $pagename }}''[[English name::{{ #var: $pagename }}| ]] | |
− | + | }} | |
− | |||
− | |||
}} | }} | ||
− | |||
− | |||
− | |||
− | |||
− | + | | label3 = French | |
− | + | | data3 = {{ #if: {{{fr_name<includeonly>|</includeonly>}}} | ''<span lang="fr">{{{fr_name}}}</span>''[[French name::{{{fr_name}}}| ]] }} | |
− | + | | label4 = German | |
− | + | | data4 = {{ #if: {{{de_name<includeonly>|</includeonly>}}} | ''<span lang="de">{{{de_name}}}</span>''[[German name::{{{de_name}}}| ]] }} | |
− | + | | label5 = Italian | |
− | + | | data5 = {{ #if: {{{it_name<includeonly>|</includeonly>}}} | ''<span lang="it">{{{it_name}}}</span>''[[Italian name::{{{it_name}}}| ]] }} | |
− | + | | label6 = Portuguese | |
− | + | | data6 = {{ #if: {{{pt_name<includeonly>|</includeonly>}}} | ''<span lang="pt">{{{pt_name}}}</span>''[[Portuguese name::{{{pt_name}}}| ]] }} | |
− | + | | label7 = Spanish | |
− | | | + | | data7 = {{ #if: {{{es_name<includeonly>|</includeonly>}}} | ''<span lang="es">{{{es_name}}}</span>''[[Spanish name::{{{es_name}}}| ]] }} |
− | |||
− | |||
− | | | + | | data8 = {{ #if: {{{ja_name<includeonly>|</includeonly>}}}{{{romaji_name|}}}{{{ja_trans_name|}}} |
− | + | | {{Infobox Japanese name|ja_name={{{ja_name<includeonly>|</includeonly>}}}|romaji_name={{{romaji_name<includeonly>|</includeonly>}}}|ja_trans_name={{{ja_trans_name<includeonly>|</includeonly>}}}|short_header=y|headerstyle=text-align: center; background-color: #ddf;}} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
}} | }} | ||
− | + | | data9 = {{ #if: {{{ko_name<includeonly>|</includeonly>}}}{{{hanja_name|}}}{{{ko_rr_name|}}}{{{ko_trans_name|}}} | |
− | + | | {{Infobox | |
− | + | | child = yes | |
− | + | | headerstyle = background-color: #DDF; | |
+ | | labelstyle = background-color: #EEF; | ||
− | + | | header1 = {{ #if: {{{ko_name<includeonly>|</includeonly>}}} | Korean }} | |
− | + | | label2 = Korean | |
− | + | | data2 = {{ #if: {{{ko_name<includeonly>|</includeonly>}}} | <span lang="ko">{{{ko_name}}}</span>[[Korean name::{{{ko_name}}}| ]] }} | |
− | + | | label3 = Base text | |
− | + | | data3 = {{ #if: {{Ruby/detect|{{{ko_name}}}<noinclude><ruby/></noinclude>}} | <span lang="ko">{{Ruby/split|{{{ko_name}}}|lang=ko}}</span> }} | |
− | + | | label4 = Hangul | |
− | + | | data4 = {{ #if: {{Ruby/detect|{{{ko_name}}}<noinclude><ruby/></noinclude>}} | <span lang="ko-Hang">{{Ruby/split|{{{ko_name}}}|top|lang=ko}}</span> }} | |
− | + | | label5 = Hanja | |
− | + | | data5 = {{ #if: {{{hanja_name<includeonly>|</includeonly>}}} | <span lang="ko-Hani">{{{hanja_name}}}</span>[[Hanja name::{{{hanja_name}}}| ]] }} | |
− | + | | label6 = Revised Romanization | |
− | + | | data6 = {{ #if: {{{ko_rr_name<includeonly>|</includeonly>}}} | ''<span lang="ko-Latn">{{{ko_rr_name}}}</span>''[[Korean Revised Romanization name::{{{ko_rr_name}}}| ]] }} | |
− | + | | label7 = Translated | |
− | + | | data7 = {{ #if: {{{ko_trans_name<includeonly>|</includeonly>}}} | ''{{{ko_trans_name}}}''[[Translated Korean name::{{{ko_trans_name}}}| ]] }} | |
+ | }} | ||
+ | }} | ||
}} | }} | ||
}} | }} | ||
− | | data2 = {{Infobox | + | | data2 = {{ #if: {{{language<includeonly>|</includeonly>}}}{{{author|}}}{{{illustrator|}}}{{{publisher|}}}{{{release_date|}}}<!-- |
− | + | -->{{{isbn|}}}{{{isbn-13|}}}{{{length|}}}{{{price|}}} | |
− | + | | {{Infobox | |
− | + | | child = yes | |
+ | | headerstyle = background-color: #CCF; | ||
+ | | labelstyle = vertical-align: middle; background-color: #DDF; | ||
− | + | | header1 = Book information | |
− | + | | label2 = Language | |
− | + | | data2 = {{{language<includeonly>|</includeonly>}}} | |
− | + | | label3 = Author | |
− | + | | data3 = {{{author<includeonly>|</includeonly>}}} | |
− | + | | label4 = Illustrator | |
− | + | | data4 = {{{illustrator<includeonly>|</includeonly>}}} | |
− | + | | label5 = Publisher | |
− | + | | data5 = {{{publisher<includeonly>|</includeonly>}}} | |
− | + | | label6 = Release date | |
− | + | | data6 = {{{release_date<includeonly>|</includeonly>}}}<!-- this'll need to handle multiple releases, including by region, if we're to use this for e.g. manga volumes --> | |
− | + | | label7 = ISBN | |
− | + | | data7 = {{ #if: {{{isbn|}}} | |
− | + | | {{IfSemantics | |
− | + | | {{ #arraymap: {{{isbn}}} | |
− | + | |* | |
− | + | |$isbn | |
− | + | |* [[ISBN::$isbn| ]] {{ISBN|$isbn|plainlink=yes}} | |
− | + | |\n | |
+ | }} | ||
+ | | {{ISBN|{{{isbn}}}|plainlink=yes}} | ||
}} | }} | ||
− | + | }}<noinclude>{{{isbn}}}</noinclude> | |
− | |||
− | + | | label8 = ISBN-13 | |
− | + | | data8 = {{ #if: {{{isbn-13|}}} | |
− | + | | {{IfSemantics | |
− | + | | {{ #arraymap: {{{isbn-13}}} | |
− | + | |* | |
− | + | |$isbn13 | |
− | + | |* [[ISBN-13::$isbn13| ]] {{ISBN|$isbn13|plainlink=yes}} | |
− | + | |\n | |
+ | }} | ||
+ | | {{ISBN|{{{isbn-13}}}|plainlink=yes}} | ||
}} | }} | ||
− | + | }}<noinclude>{{{isbn-13}}}</noinclude> | |
− | |||
− | + | | label9 = Length | |
− | + | | data9 = {{{length<includeonly>|</includeonly>}}} | |
− | + | | label10 = Price | |
− | + | | data10 = {{{price<includeonly>|</includeonly>}}} | |
+ | }} | ||
}} | }} | ||
Line 179: | Line 165: | ||
#if: {{{curr|}}} | #if: {{{curr|}}} | ||
| '''''{{{curr}}}''''' | | '''''{{{curr}}}''''' | ||
− | | '''''{{ #if: {{{en_name|}}} | {{{en_name}}} | {{ # | + | | '''''{{ #if: {{{en_name|}}} | {{{en_name}}} | {{ #var: $pagename }} }}''''' |
}} | }} | ||
}}<br /><div style="float: right; text-align:right;">{{ | }}<br /><div style="float: right; text-align:right;">{{ | ||
Line 193: | Line 179: | ||
}}<noinclude> | }}<noinclude> | ||
− | {{Documentation}}[[Category:Infobox templates]] | + | {{Documentation}}[[Category:Infobox templates|Book]] |
</noinclude> | </noinclude> |
Revision as of 23:05, 17 January 2019
Infobox book | |||||||||
---|---|---|---|---|---|---|---|---|---|
[[File:|0px|{{{caption}}}]] | |||||||||
Names | |||||||||
English | {{{en_name}}} | ||||||||
French | {{{fr_name}}} | ||||||||
German | {{{de_name}}} | ||||||||
Italian | {{{it_name}}} | ||||||||
Portuguese | {{{pt_name}}} | ||||||||
Spanish | {{{es_name}}} | ||||||||
| |||||||||
Korean | |||||||||
Korean | {{{ko_name}}} | ||||||||
Base text | {{{ko_name}}} | ||||||||
Hangul | {{{ko_name}}} | ||||||||
Hanja | {{{hanja_name}}} | ||||||||
Revised Romanization | {{{ko_rr_name}}} | ||||||||
Translated | {{{ko_trans_name}}} | ||||||||
Book information | |||||||||
Language | {{{language}}} | ||||||||
Author | {{{author}}} | ||||||||
Illustrator | {{{illustrator}}} | ||||||||
Publisher | {{{publisher}}} | ||||||||
Release date | {{{release_date}}} | ||||||||
ISBN | {{{isbn}}} | ||||||||
ISBN-13 | {{{isbn-13}}} | ||||||||
Length | {{{length}}} | ||||||||
Price | {{{price}}} | ||||||||
Part of series | [[{{{series}}}|{{{series}}}]] | ||||||||
[[{{{prev}}}|← {{{prev}}}]] Infobox book [[{{{next}}}|{{{next}}} →]] |