Template:Image: Difference between revisions

From elijah
Jump to navigation Jump to search
WikiSync push v1.0
 
WikiSync push v1.2
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
<!-- WikiSync | version=1.0 | updated=2026-04-27 -->
<!-- WikiSync | version=1.2 | updated=2026-10-18 -->
<includeonly>
<includeonly>
__NOFACTBOX__
__NOFACTBOX__
Line 19: Line 19:
  |HasImageKind={{{HasImageKind|}}}
  |HasImageKind={{{HasImageKind|}}}
  |HasDate={{{HasDate|}}}
  |HasDate={{{HasDate|}}}
|HasAnnotationFile={{{HasAnnotationFile|}}}
|HasFocusPoint={{{HasFocusPoint|}}}
}}
}}


Line 39: Line 41:
{{#if:{{{HasTimePeriod|}}}|
{{#if:{{{HasTimePeriod|}}}|
   {{#arraymap:{{{HasTimePeriod|}}}|;|@@|{{#set:HasTimePeriod=@@}}|}}
   {{#arraymap:{{{HasTimePeriod|}}}|;|@@|{{#set:HasTimePeriod=@@}}|}}
}}
<!-- List: Region -->
{{#if:{{{HasRegion|}}}|
  {{#arraymap:{{{HasRegion|}}}|;|@@|{{#set:HasRegion=@@}}|}}
}}
}}


Line 56: Line 63:
   box-sizing: border-box;
   box-sizing: border-box;
">
">
  <!-- Card Header -->
  <div style="
    background: linear-gradient(135deg, #2c3e50 0%, #3d5166 100%);
    color: #ffffff;
    padding: 0.75em 1em 0.6em 1em;
  ">
    <div style="font-size:1.25em; font-weight:bold; letter-spacing:0.02em; line-height:1.2;">
      {{{HasImageCaption|{{PAGENAME}}}}}
    </div>
    {{#if:{{{HasImageKind|}}}|
      <div style="font-size:0.82em; opacity:0.80; margin-top:0.2em;">{{{HasImageKind}}}</div>
    }}
  </div>


   <!-- Image Display -->
   <!-- Image Display -->
   <div style="text-align:center; padding:1em 1em 0 1em; background:#f8f9fa;">
   <div style="text-align:center; padding:1em 1em 0 1em; background:#f8f9fa;">
     {{#if:{{{HasFile|}}}|
     {{#if:{{{HasFile|}}}|
       [[{{{HasFile|}}}|thumb|400px|center|{{{HasImageCaption|}}}]]
       <div style="max-width:100%; overflow:hidden;">
        [[{{{HasFile|}}}|frameless|center|300px]]
        {{#if:{{{HasImageCaption|}}}|
          <div style="font-size:0.85em; color:#555; text-align:center; padding:0.5em 1em 0.5em;">
            {{{HasImageCaption|}}}
          </div>
        }}
      </div>
     |
     |
       <div style="
       <div style="
         width:400px;
         max-width:400px;
        width:100%;
         height:260px;
         height:260px;
         margin:0 auto;
         margin:0 auto;
Line 107: Line 108:


     <!-- Metadata Table -->
     <!-- Metadata Table -->
     {{#if:{{{HasImageKind|}}}{{{HasDate|}}}{{{HasLicense|}}}{{{HasRights|}}}{{{HasSourceDescription|}}}|
     {{#if:{{{HasImageKind|}}}{{{HasDate|}}}{{{HasRegion|}}}{{{HasLicense|}}}{{{HasRights|}}}{{{HasSourceDescription|}}}{{{HasAnnotationFile|}}}|
       <table style="border-collapse:collapse; font-size:0.88em; margin-bottom:0.65em; width:100%;">
       <table style="border-collapse:collapse; font-size:0.88em; margin-bottom:0.65em; width:100%;">
         {{#if:{{{HasImageKind|}}}|
         {{#if:{{{HasImageKind|}}}|
Line 113: Line 114:
             <td style="color:#777; padding:0.12em 0.8em 0.12em 0; white-space:nowrap; vertical-align:top; width:30%;">'''Kind'''</td>
             <td style="color:#777; padding:0.12em 0.8em 0.12em 0; white-space:nowrap; vertical-align:top; width:30%;">'''Kind'''</td>
             <td style="color:#222;">{{{HasImageKind}}}</td>
             <td style="color:#222;">{{{HasImageKind}}}</td>
          </tr>
        }}
        {{#if:{{{HasAnnotationFile|}}}|
          <tr>
            <td style="color:#777; padding:0.12em 0.8em 0.12em 0; white-space:nowrap; vertical-align:top;">'''Annotation File'''</td>
            <td style="color:#222;">[[{{{HasAnnotationFile}}}|Annotation data]]</td>
           </tr>
           </tr>
         }}
         }}
Line 119: Line 126:
             <td style="color:#777; padding:0.12em 0.8em 0.12em 0; white-space:nowrap; vertical-align:top;">'''Date'''</td>
             <td style="color:#777; padding:0.12em 0.8em 0.12em 0; white-space:nowrap; vertical-align:top;">'''Date'''</td>
             <td style="color:#222;">{{{HasDate}}}</td>
             <td style="color:#222;">{{{HasDate}}}</td>
          </tr>
        }}
        {{#if:{{{HasRegion|}}}|
          <tr>
            <td style="color:#777; padding:0.12em 0.8em 0.12em 0; white-space:nowrap; vertical-align:top;">'''Region'''</td>
            <td style="color:#222;">{{#arraymap:{{{HasRegion|}}}|;|@@|@@|, }}</td>
           </tr>
           </tr>
         }}
         }}
Line 216: Line 229:
  |HasOnlineSource=https://example.org/images/img-001
  |HasOnlineSource=https://example.org/images/img-001
  |HasRights=Public domain
  |HasRights=Public domain
|HasRegion=Galicia; Bukovina
  |HasLicense=CC0 1.0
  |HasLicense=CC0 1.0
  |HasNILID=NIL-45821
  |HasNILID=NIL-45821
|HasAnnotationFile=File:IMG-001-annotations.json
|HasFocusPoint=320,180
  |DepictsPerson=Person:Q123456
  |DepictsPerson=Person:Q123456
  |DepictsPlace=Community:Lviv
  |DepictsPlace=Community:Lviv
Line 227: Line 243:
Properties with type notes:
Properties with type notes:
* HasFile — page reference to File: namespace (e.g. File:image.jpg)
* HasFile — page reference to File: namespace (e.g. File:image.jpg)
* HasAnnotationFile — page reference to File: namespace (e.g. File:IMG-001-annotations.json); the JSON must be uploaded to the wiki as a file
* HasDate — SMW Date type (ISO format YYYY-MM-DD or YYYY); requires Property:HasDate declared as type Date in the wiki
* HasDate — SMW Date type (ISO format YYYY-MM-DD or YYYY); requires Property:HasDate declared as type Date in the wiki
* DepictsPerson — list of page references to Person: namespace (semicolon-separated)
* DepictsPerson — list of page references to Person: namespace (semicolon-separated)
Line 232: Line 249:
* BelongsToTopic — list of text values from controlled vocabulary (semicolon-separated)
* BelongsToTopic — list of text values from controlled vocabulary (semicolon-separated)
* HasTimePeriod — list of text values (semicolon-separated)
* HasTimePeriod — list of text values (semicolon-separated)
* HasFocusPoint — optional text, pixel coordinates "X,Y" in the original image, measured from the top-left corner (e.g. 320,180)
* HasOnlineSource — url
* HasOnlineSource — url
* HasRegion — list of text values, controlled vocabulary (semicolon-separated)
* All others — text
* All others — text
</noinclude>
</noinclude>

Latest revision as of 17:56, 18 October 2026



Use this template on Image: pages to store image metadata.

Example:

{{Image
 |HasFile=File:Perl Joseph portrait.jpg
 |ImageID=IMG-001
 |HasImageCaption=Portrait of Joseph Perl
 |HasImageDescription=Black-and-white portrait photograph of Joseph Perl, Galician rabbi and author.
 |HasImageKind=Portrait
 |HasDate=1880-05-12
 |HasSourceDescription=JGaliciaBukovina archive, digitized 2010
 |HasOnlineSource=https://example.org/images/img-001
 |HasRights=Public domain
 |HasRegion=Galicia; Bukovina
 |HasLicense=CC0 1.0
 |HasNILID=NIL-45821
 |HasAnnotationFile=File:IMG-001-annotations.json
 |HasFocusPoint=320,180
 |DepictsPerson=Person:Q123456
 |DepictsPlace=Community:Lviv
 |BelongsToTopic=Religion, Rabbinate, Hasidism
 |HasTimePeriod=19th century; Pre-WWI
}}

Properties with type notes:

  • HasFile — page reference to File: namespace (e.g. File:image.jpg)
  • HasAnnotationFile — page reference to File: namespace (e.g. File:IMG-001-annotations.json); the JSON must be uploaded to the wiki as a file
  • HasDate — SMW Date type (ISO format YYYY-MM-DD or YYYY); requires Property:HasDate declared as type Date in the wiki
  • DepictsPerson — list of page references to Person: namespace (semicolon-separated)
  • DepictsPlace — list of page references to Community: namespace (semicolon-separated)
  • BelongsToTopic — list of text values from controlled vocabulary (semicolon-separated)
  • HasTimePeriod — list of text values (semicolon-separated)
  • HasFocusPoint — optional text, pixel coordinates "X,Y" in the original image, measured from the top-left corner (e.g. 320,180)
  • HasOnlineSource — url
  • HasRegion — list of text values, controlled vocabulary (semicolon-separated)
  • All others — text