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

From Self-sufficiency
Jump to: navigation, search
(+fullurl form as requested for demonstration purposes)
(return to non-demo #default, remove <span>s, and update code notes)
Line 1: Line 1:
 
{{#switch:{{#titleparts:{{{1|}}}|2}}
 
{{#switch:{{#titleparts:{{{1|}}}|2}}
 
  |Http:/|Https:/|Ftp:/ = [{{{1}}} {{{2|}}}]
 
  |Http:/|Https:/|Ftp:/ = [{{{1}}} {{{2|}}}]
  |<!--if empty-->|None = <span>{{{2|}}}</span>
+
  |<!--if empty-->|None = {{{2|}}}
  |#default            = <span class="plainlinks plainlinks2"><!--
+
  |#default            = [[:{{{1}}}|{{{2|{{{1}}}}}}]]
                          -->[{{fullurl:{{{1}}}}} {{{2|{{{1}}}}}}]</span>
+
 
}}<noinclude>
 
}}<noinclude>
<!-- Code notes:  
+
<!-- Code notes (here so that people /read/ it)
 +
  Switch cases:
 
   1. The switch cases on the first line are for regular url= or chapter-url=  
 
   1. The switch cases on the first line are for regular url= or chapter-url=  
 
   2. The switch cases on the second line are for empty first param, or for "none" in first param.
 
   2. The switch cases on the second line are for empty first param, or for "none" in first param.
 
     Editors can use "none" to stop chapter-url= from defaulting to the value of url=
 
     Editors can use "none" to stop chapter-url= from defaulting to the value of url=
    The benign <span> is to to stop italicized "'foo' & 'bar'" from becoming "'''foo' & 'bar'''"
 
 
   3. The #default constructs an internal link since that is what the editor  
 
   3. The #default constructs an internal link since that is what the editor  
     seems to have passed in url=.
+
     seems to have passed in url=
    The fullurl form is functionally equivalent to [[:{{{1}}}|{{{2|{{{1}}}}}}]],
+
  Other notes:
    but without clogging up the target's what-links-here.
+
  1. Parameter #2 is always non-empty when called from citation/core.
 +
  2. Its up to citation/core to stop italicized "'foo' & 'bar'" from becoming
 +
    "'''foo' & 'bar'''". Citation/core does this by having a <nowiki></nowiki>
 +
    at both beginning and end of the call to this template. Since this is only
 +
    needed once, its more efficient to do it in citation/core than here.
 +
  3. "None" is safe to use as a magic word. The wp article is not the title of
 +
    a book, and will thus not be a url=
 
-->
 
-->
 
{{documentation}}
 
{{documentation}}
 
</noinclude>
 
</noinclude>

Revision as of 00:47, 29 July 2009