Difference between revisions of "Template:Citation/make link"

From blackwiki
Jump to navigation Jump to search
imported>Eubulides
(Comments made no difference so go back to older version.)
imported>Fullstop
(add check if #titleparts does anything)
Line 1: Line 1:
{{#switch:{{#titleparts:{{{1|}}}|2}}
+
{{#switch:{{#titleparts:{{lcfirst:{{{1|}}}}}|2}}
|Http:/|Https:/|Ftp:/ = [{{{1}}} {{{2}}}]
 
 
  |<!--if empty-->|None = {{{2}}}
 
  |<!--if empty-->|None = {{{2}}}
 +
|Http:/|Https:/|Ftp:/|{{lcfirst:{{{1|}}}}} = [{{{1}}} {{{2}}}]
 
  |#default            = [[:{{{1}}}|{{{2}}}]]
 
  |#default            = [[:{{{1}}}|{{{2}}}]]
 
}}<noinclude>
 
}}<noinclude>
Line 13: Line 13:
 
     not about a book or chapter.
 
     not about a book or chapter.
 
   4. The colon in "[[:" prevents images from being expanded.
 
   4. The colon in "[[:" prevents images from being expanded.
 +
  5. The lcfirst checks if #titleparts does anything. That is, if the result
 +
    of #titleparts has a lowecase first letter, then #titleparts passed through
 +
    the parameter unchanged, meaning the string was not a valid article title.
 
-->
 
-->
 
{{documentation}}
 
{{documentation}}
 
</noinclude>
 
</noinclude>

Revision as of 22:14, 1 August 2009

{{{2}}}

Template documentation[view] [edit] [history] [purge]

This template is a "subroutine" of {{Citation/core}} used for conditionally making links for the chapter= and title= fields in a citation.

It is invoked as:

{{Citation/make link
| 1 = <value of IncludedWorkURL= or URL= or PMC= parameters>
| 2 = <value of IncludedWorkTitle= or Title= parameters>
}}

It uses the following algorithm:

  1. If the first parameter is empty, it returns the second parameter as plain text.
  2. If the first parameter is a URL, it returns the second parameter wrapped inside an external link to the first.

This "subroutine" is designed for {{Citation/core}} and makes assumptions that may not be valid elsewhere.

Examples:

  • "{{Citation/make link||BBC News front page}}" produces "BBC News front page".
  • "{{Citation/make link|http://news.bbc.co.uk/|BBC News front page}}" produces "BBC News front page".