Jump to content

Template:DOI: Difference between revisions

From TOE-E Archive
No edit summary
No edit summary
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
<noinclude>
<noinclude>
= DOI Template (safe) =
Test with: <code>{{DOI|internal=10.toe-e/0.0.2|external=pending}}</code>
Renders internal/external DOI. No parser variables needed.
</noinclude><includeonly><div style="border:1px solid #ddd; background:#f9f9f9; padding:10px; margin:8px 0; border-radius:6px;"><b>DOI</b><br/>{{#if:{{{internal|}}}|🔖 <span style="color:#555;">Internal:</span> <code>{{{internal}}}</code><br/>}}🌍 <span style="color:#555;">External:</span>{{#if:{{{external|}}}|{{#ifeq:{{lc:{{{external}}}}}|pending|<span style="color:#999;">(pending)</span>|<span class="plainlinks">[https://doi.org/{{{external}}} {{{external}}}]</span>}}|<span style="color:#999;">(none)</span>}}</div></includeonly>
 
== Params ==
; internal : TOE‑E internal DOI (e.g., 10.toe-e/0.0.2)
; external : External DOI (e.g., 10.5281/zenodo.1234567) or "pending"
; store    : yes/no (default yes) → sets [[Has internal DOI]] / [[Has external DOI]]
; short    : yes/no (default no) → single-line variant
; label    : defaults to "DOI"
 
== Properties (create once) ==
* [[Property:Has internal DOI]] → [[Has type::Text]]
* [[Property:Has external DOI]] → [[Has type::Text]]
</noinclude><includeonly>
<!-- Semantic storage -->
{{#if:{{{store|yes}}}|
  {{#if:{{{internal|}}}|[[Has internal DOI::{{{internal}}}]]}}
  {{#if:{{{external|}}}|[[Has external DOI::{{{external}}}]]}}
}}
 
<!-- SHORT line -->
{{#ifeq:{{lc:{{{short|}}}}}|yes|
  {{#if:{{{internal|}}}{{{external|}}}|
    <span class="plainlinks"><b>{{{label|DOI}}}:</b>
      {{#if:{{{internal|}}}| <code>{{{internal}}}</code>{{#if:{{{external|}}}| • |}} }}
      {{#if:{{{external|}}}|
        {{#ifeq:{{lc:{{{external}}}}}|pending| <i>(external DOI pending)</i> | [https://doi.org/{{{external}}} {{{external}}}] }}
      }}
    </span>
  | <span style="color:#999;"><i>No DOI assigned.</i></span> }}
| <!-- BOX -->
  <div style="border:1px solid #ddd; background:#f9f9f9; padding:10px; margin:8px 0;">
    <span style="font-weight:600;">{{{label|DOI}}}</span><br/>
    {{#if:{{{internal|}}|<div>🔖 <span style="color:#555;">Internal:</span> <code>{{{internal}}}</code></div>}}
    {{#if:{{{external|}}|
      <div>🌍 <span style="color:#555;">External:</span>
        {{#ifeq:{{lc:{{{external}}}}}|pending|<i>(pending)</i>|<span class="plainlinks">[https://doi.org/{{{external}}} {{{external}}}]</span>}}
      </div>
    }}
    {{#if:{{{internal|}}}{{{external|}}}||<div style="color:#999;"><i>No DOI assigned.</i></div>}}
  </div>
}}
</includeonly>

Latest revision as of 19:32, 23 August 2025

Test with:

DOI
🔖 Internal: 10.toe-e/0.0.2
🌍 External:(pending)