Difference between revisions of "Template:Infobox book"

From Yugipedia
Jump to: navigation, search
(ISBN-13)
(update property name)
(17 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Italic title|{{
+
{{ #vardefine: $pagename | {{Normalized pagename|{{PAGENAME}}}}
  #if: {{{non-italic_title|}}}
+
}}{{ #if: {{ #vardefineecho: $italicize_title | {{ #switch: {{ lc: {{{italic_title}}} }} | no | none | off | false | 0 = | #default = yes }} }}
   | {{
+
| {{ #if: {{{italic_title|}}}
     #ifeq: {{ #replace: {{{name}}} | '' }} | {{Normalized pagename}}
+
   | {{Italic title|{{{italic_title}}}}}
    | {{{name}}}
+
  | {{ #if: {{ #pos: {{{name}}} | '' }}
    | {{
+
     | {{ #ifeq: {{ #replace: {{{name}}} | '' }} | {{ #var: $pagename }}
       #if: {{{italic_title|}}}
+
      | {{Italic title|{{{name}}}|t=1}}
       | {{{italic_title}}}
+
       | {{Italic title|t=1}}
      | {{PAGENAME}}
+
       }}
 +
    | {{Italic title|t=1}}
 
     }}
 
     }}
 
   }}
 
   }}
  | {{
+
}}{{ #vardefine: $pagename | {{ #explode: {{ #var: $pagename }} | ( }}
    #if: {{{italic_title|}}}
+
}}{{Infobox
    | {{{italic_title}}}
+
| 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 }} }} }}]] }}
}}}}{{Infobox
 
| above        = {{ #if: {{{name|}}} | {{{name}}} | {{ #explode: {{PAGENAME}} | ( }} }}
 
| image        = {{ #if: {{{image<includeonly>|</includeonly>}}} | [[File:{{{image}}}|{{ #if: {{{width|}}} | {{ #iferror: +{{{width}}} | 229 | {{ #ifexpr: {{{width}}} < 229 | {{{width}}} | 229 }} }} | 229 }}px|{{ #if: {{{caption<includeonly>|</includeonly>}}} | {{{caption}}} | {{ #if: {{{name|}}} | {{{name}}} | {{ #explode: {{PAGENAME}} | ( }} }} }}]] }}
 
  
| abovestyle  = {{ #if: {{{non-italic_title|}}}{{ #pos: {{{name}}} | '' }} || font-style: italic; }}
+
| 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|}}}<!--
  | child        = yes
+
                      -->{{{ja_name|}}}{{{romaji_name|}}}{{{ja_trans_name|}}}{{{ko_name|}}}{{{hanja_name|}}}{{{ko_rr_name|}}}{{{ko_trans_name|}}}
  | headerstyle  = background: #800000; color: #FF0;
+
  | {{Infobox
  | labelstyle  = background: #EEE; border: #AAA solid; border-width: 0 1px 1px 0;
+
    | child        = yes
 +
    | headerstyle  = background-color: #CCF;
 +
    | labelstyle  = vertical-align: middle; background-color: #DDF;
  
  | header1      = Names
+
    | header1      = Names
  
  | label2      = {{flag|United Kingdom}}&nbsp;English
+
    | label2      = English
  | data2        = {{
+
    | data2        = {{ #if: {{{en_name<includeonly>|</includeonly>}}}
    #if: {{{en_name<includeonly>|</includeonly>}}}
+
      | ''{{{en_name}}}''[[English name::{{{en_name}}}| ]]
    |
+
      | {{ #if: {{{name|}}}
* ''[[English name::{{{en_name}}}]]''
+
        | {{{name}}}[[English name::{{ #replace: {{{name}}} | '' }}| ]]
    | {{
+
        | ''{{ #var: $pagename }}''[[English name::{{ #var: $pagename }}| ]]
      #if: {{{name|}}}
+
      }}
      | {{{name}}}[[English name::{{ #replace: {{{name}}} | '' }}| ]]
 
      | ''[[English name::{{ #explode: {{PAGENAME}} | ( }}]]''
 
 
     }}
 
     }}
  }}
 
  
  | label3      = {{flag|France}}&nbsp;French
+
    | label3      = French
  | data3        = {{ #if: {{{fr_name<includeonly>|</includeonly>}}} | ''<span lang="fr">[[French name::{{{fr_name}}}]]</span>'' }}
+
    | data3        = {{ #if: {{{fr_name<includeonly>|</includeonly>}}} | ''<span lang="fr">{{{fr_name}}}</span>''[[French name::{{{fr_name}}}| ]] }}
  
  | label4      = {{flag|Germany}}&nbsp;German
+
    | label4      = German
  | data4        = {{ #if: {{{de_name<includeonly>|</includeonly>}}} | ''<span lang="de">[[German name::{{{de_name}}}]]</span>'' }}
+
    | data4        = {{ #if: {{{de_name<includeonly>|</includeonly>}}} | ''<span lang="de">{{{de_name}}}</span>''[[German name::{{{de_name}}}| ]] }}
  
  | label5      = {{flag|Italy}}&nbsp;Italian
+
    | label5      = Italian
  | data5        = {{ #if: {{{it_name<includeonly>|</includeonly>}}} | ''<span lang="it">[[Italian name::{{{it_name}}}]]</span>'' }}
+
    | data5        = {{ #if: {{{it_name<includeonly>|</includeonly>}}} | ''<span lang="it">{{{it_name}}}</span>''[[Italian name::{{{it_name}}}| ]] }}
  
  | label6      = {{flag|Portugal}}&nbsp;Portuguese
+
    | label6      = Portuguese
  | data6        = {{ #if: {{{pt_name<includeonly>|</includeonly>}}} | ''<span lang="pt">[[Portuguese name::{{{pt_name}}}]]</span>'' }}
+
    | data6        = {{ #if: {{{pt_name<includeonly>|</includeonly>}}} | ''<span lang="pt">{{{pt_name}}}</span>''[[Portuguese name::{{{pt_name}}}| ]] }}
  
  | label7      = {{flag|Spain}}&nbsp;Spanish
+
    | label7      = Spanish
  | data7        = {{ #if: {{{es_name<includeonly>|</includeonly>}}} | ''<span lang="es">[[Spanish name::{{{es_name}}}]]</span>'' }}
+
    | data7        = {{ #if: {{{es_name<includeonly>|</includeonly>}}} | ''<span lang="es">{{{es_name}}}</span>''[[Spanish name::{{{es_name}}}| ]] }}
  
  | data8        = {{ #if: {{{ja_name<includeonly>|</includeonly>}}} | {{flag|Japan}}&nbsp;Japanese }}
+
    | data8        = {{ #if: {{{ja_name<includeonly>|</includeonly>}}}{{{romaji_name|}}}{{{ja_trans_name|}}}
  | rowclass8    = infobox-subheading
+
      | {{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;}}
 +
    }}
  
  | label9      = {{ #ifeq: <includeonly>{{{ja_name}}}</includeonly> | {{Ruby/split|{{{ja_name}}}}} | Japanese | Kanji and furigana }}
+
    | data9        = {{ #if: {{{ko_name<includeonly>|</includeonly>}}}{{{hanja_name|}}}{{{ko_rr_name|}}}{{{ko_trans_name|}}}
  | data9        = {{ #if: {{{ja_name|}}} | <span lang="ja">{{ #ifeq: <includeonly>{{{ja_name}}}</includeonly> | {{Ruby/split|{{{ja_name}}}}} | [[Japanese name::{{{ja_name}}}]] | {{{ja_name}}} }}</span> }}
+
      | {{Infobox
 +
        | child        = yes
 +
        | headerstyle  = background-color: #DDF;
 +
        | labelstyle  = background-color: #EEF;
  
  | label10     = Kanji
+
        | header1     = {{ #if: {{{ko_name<includeonly>|</includeonly>}}} | Korean }}
  | data10      = {{ #ifeq: <includeonly>{{{ja_name}}}</includeonly> | {{Ruby/split|{{{ja_name}}}}} || <span lang="ja-Jpan">[[Japanese name::{{Ruby/split|{{{ja_name}}}}}]]</span> }}
 
  
  | label11      = Furigana
+
        | label2      = Korean
  | data11      = {{ #ifeq: <includeonly>{{{ja_name}}}</includeonly> | {{Ruby/split|{{{ja_name}}}}} || <span lang="ja-Hrkt">{{Ruby/split|{{{ja_name}}}|top}}</span> }}
+
        | data2        = {{ #if: {{{ko_name<includeonly>|</includeonly>}}} | <span lang="ko">{{{ko_name}}}</span>[[Korean name::{{{ko_name}}}| ]] }}
  
  | label12      = Rōmaji
+
        | label3      = Base text
  | data12      = {{ #if: {{{romaji_name<includeonly>|</includeonly>}}} | ''<span lang="ja-Latn-hepburn">[[Romaji name::{{{romaji_name}}}]]</span>'' }}
+
        | data3        = {{ #if: {{Ruby/detect|{{{ko_name}}}<noinclude><ruby/></noinclude>}} | <span lang="ko">{{Ruby/split|{{{ko_name}}}|lang=ko}}</span> }}
  
  | label13      = Translated
+
        | label4      = Hangul
  | data13      = {{ #if: {{{ja_trans_name<includeonly>|</includeonly>}}} | ''[[Japanese translated name::{{{ja_trans_name}}}]]'' }}
+
        | data4        = {{ #if: {{Ruby/detect|{{{ko_name}}}<noinclude><ruby/></noinclude>}} | <span lang="ko-Hang">{{Ruby/split|{{{ko_name}}}|top|lang=ko}}</span> }}
  
  | data14       = {{ #if: {{{ko_name<includeonly>|</includeonly>}}} | {{flag|South Korea}}&nbsp;Korean }}
+
        | label5       = Hanja
  | rowclass14  = infobox-subheading 
+
        | data5        = {{ #if: {{{hanja_name<includeonly>|</includeonly>}}} | <span lang="ko-Hani">{{{hanja_name}}}</span>[[Hanja name::{{{hanja_name}}}| ]] }}
  
  | label15      = Korean
+
        | label6      = Revised Romanization
  | data15      = {{ #if: {{{ko_name<includeonly>|</includeonly>}}} | <span lang="ko">[[Korean name::{{{ko_name}}}]]</span> }}
+
        | data6        = {{ #if: {{{ko_rr_name<includeonly>|</includeonly>}}} | ''<span lang="ko-Latn">{{{ko_rr_name}}}</span>''[[Korean Revised Romanization name::{{{ko_rr_name}}}| ]] }}
  
  | label16      = Base text
+
        | label7      = Translated
  | data16      = {{ #ifeq: <includeonly>{{{ko_name}}}</includeonly> | {{Ruby/split|{{{ko_name}}}}} || <span lang="ko">{{Ruby/split|{{{ko_name}}}}}</span> }}
+
        | data7        = {{ #if: {{{ko_trans_name<includeonly>|</includeonly>}}} | ''{{{ko_trans_name}}}''[[Translated Korean name::{{{ko_trans_name}}}| ]] }}
 +
        }}
 +
      }}
 +
    }}
 +
  }}
  
  | label17      = Hangul
+
| data2        = {{ #if: {{{language<includeonly>|</includeonly>}}}{{{author|}}}{{{illustrator|}}}{{{publisher|}}}{{{release_date|}}}<!--
  | data17      = {{ #ifeq: <includeonly>{{{ko_name}}}</includeonly> | {{Ruby/split|{{{ko_name}}}}} || <span lang="ko-Hang">{{Ruby/split|{{{ko_name}}}|top}}</span> }}
+
                      -->{{{isbn|}}}{{{isbn-13|}}}{{{length|}}}{{{price|}}}
 +
  | {{Infobox
 +
    | child        = yes
 +
    | headerstyle  = background-color: #CCF;
 +
    | labelstyle  = vertical-align: middle; background-color: #DDF;
  
  | label18     = Hanja
+
    | header1     = Book information
  | data18      = {{ #if: {{{hanja_name<includeonly>|</includeonly>}}} | <span lang="ko-Hani">[[Hanja name::{{{hanja_name}}}]]</span> }}
 
  
  | label19      = Revised Romanization
+
    | label2      = Language
  | data19      = {{ #if: {{{ko_rr_name<includeonly>|</includeonly>}}} | ''<span lang="ko-Latn">[[Korean Revised Romanization name::{{{ko_rr_name}}}]]</span>'' }}
+
    | data2        = {{{language<includeonly>|</includeonly>}}}
  
  | label20      = Translated
+
    | label3      = Author
  | data20      = {{ #if: {{{ko_trans_name<includeonly>|</includeonly>}}} | ''[[Korean translated name::{{{ko_trans_name}}}]]'' }}
+
    | data3        = {{{author<includeonly>|</includeonly>}}}
}}
 
  
| label2       = Language
+
    | label4       = Illustrator
| data2       = {{{language<includeonly>|</includeonly>}}}
+
    | data4       = {{{illustrator<includeonly>|</includeonly>}}}
  
| label3       = Author
+
    | label5       = Publisher
| data3       = {{{author<includeonly>|</includeonly>}}}
+
    | data5       = {{{publisher<includeonly>|</includeonly>}}}
  
| label4       = Illustrator
+
    | label6       = Release date
| data4       = {{{illustrator<includeonly>|</includeonly>}}}
+
    | 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 -->
  
| label5       = Publisher
+
    | label7       = ISBN
| data5       = {{{publisher<includeonly>|</includeonly>}}}
+
    | data7       = {{ #if: {{{isbn|}}}
 +
      | {{IfSemantics
 +
        | {{ #arraymap: {{{isbn}}}
 +
          |*
 +
          |$isbn
 +
          |* [[ISBN::$isbn| ]] {{ISBN|$isbn|plainlink=yes}}
 +
          |\n
 +
          }}
 +
        | {{ISBN|{{{isbn}}}|plainlink=yes}}
 +
        }}
 +
      }}<noinclude>{{{isbn}}}</noinclude>
  
| label6       = Release date
+
    | label8       = ISBN-13
| 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 -->
+
    | 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>
  
| label7       = ISBN
+
    | label9       = Length
| data7       = {{ #if: {{{isbn<includeonly>|</includeonly>}}} | ISBN {{{isbn}}} }}
+
    | data9       = {{{length<includeonly>|</includeonly>}}}
  
| label8      = ISBN-13
+
    | label10      = Price
| data8        = {{ #if: {{{isbn-13<includeonly>|</includeonly>}}} | ISBN {{{isbn-13}}} }}
+
    | data10      = {{{price<includeonly>|</includeonly>}}}
 
+
    }}
| label9      = Length
+
  }}
| data9        = {{{length<includeonly>|</includeonly>}}}
 
  
| label10      = Price
+
| label3      = Part of series
| data10      = {{{price<includeonly>|</includeonly>}}}
+
| data3        = {{ #if: {{{series<includeonly>|</includeonly>}}} | {{ #if: {{ #pos: {{{series}}} | [ }} | {{{series}}} | ''[[{{{series}}}|{{ #explode: {{{series}}} | ( }}]]'' }} }}
  
| data11      = {{
+
| data4        = {{
 
     #if: {{{prev<includeonly>|</includeonly>}}}{{{next|}}}{{{prev_raw|}}}{{{next_raw|}}}
 
     #if: {{{prev<includeonly>|</includeonly>}}}{{{next|}}}{{{prev_raw|}}}{{{next_raw|}}}
 
     | <div style="float: left; text-align:left;">{{
 
     | <div style="float: left; text-align:left;">{{
Line 137: Line 162:
 
       #if: {{{curr_raw|}}}
 
       #if: {{{curr_raw|}}}
 
       | {{{curr_raw}}}
 
       | {{{curr_raw}}}
       | '''''{{ #if: {{{en_name|}}} | {{{en_name}}} | {{ #explode: {{PAGENAME}} | ( }} }}'''''
+
       | {{
 +
        #if: {{{curr|}}}
 +
        | '''''{{{curr}}}'''''
 +
        | '''''{{ #if: {{{en_name|}}} | {{{en_name}}} | {{ #var: $pagename }} }}'''''
 +
      }}
 
     }}<br /><div style="float: right; text-align:right;">{{
 
     }}<br /><div style="float: right; text-align:right;">{{
 
       #if: {{{next_raw|}}}
 
       #if: {{{next_raw|}}}
Line 150: 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}}}
Japanese
Japanese{{{ja_name}}}
Rōmaji{{{romaji_name}}}
Translated{{{ja_trans_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}}} →]]