Template:URL: Difference between revisions

From Zoophilia Wiki
Jump to navigationJump to search
meta>Verdy p
m (work-around when titleparts does not work (for example presence of %xx URL-encoding in the path or in the query string):don't transform the displayed URL)
meta>Verdy p
m (simplify tests for presence of parameter 2, and of the titleparts limitation and its work-round ; additional fix for "ftp://" URLs)
Line 1: Line 1:
<includeonly>{{#if:{{{1|}}}|<!--
<includeonly>{{#if:{{{1|}}}|<!--
   --><span class="url"><!--
   --><span class="url"><!--
  -->{{#ifeq:{{#titleparts:{{{1|}}}|1|1}}|{{{1|}}}|<!-- work-around when titleparts doesn't accept the URL and returns the full string instead: don't attempt to transform the displayed URL
      -->[{{#if:1|{{{1|}}}}}]<!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}}
  -->|<!--
       -->{{#switch:{{lc:{{#titleparts:{{{1|}}}|2}}}}<!--
       -->{{#switch:{{lc:{{#titleparts:{{{1|}}}|2}}}}<!--
       -->|https:/<!--
       -->|https:/<!--
       -->|http:/<!--
       -->|http:/<!--
       -->|ftp:/=<!--
       -->|ftp:/=<!-- an FTP URL is a valid URI scheme and MUST NOT imply a default "http://" (as generated in the #default case)
         -->[{{#if:1|{{{1|}}}}} <!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}}
         -->[{{#if:1|{{{1|}}}}} <!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}}
         -->{{#if:{{{2|}}}|{{{2|}}}|<!--
         -->{{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}| <!-- This #if:1 allows trimming leading spaces in the specified display text : {{{2|}}}
            -->{{#ifeq:{{#titleparts:{{{1|}}}|1|3}}|{{{1|}}}|{{{1|}}}|<!-- work-around when titleparts doesn't accept the URL and returns the full string instead : don't attempt to transform the displayed URL
            -->{{lc:<!-- domain name in lowercase
              -->{{lc:<!-- domain name in lowercase
              -->{{#ifeq:{{lc:{{padleft:|4|{{#titleparts:{{{1|}}}|1|3}}}}}}|www.<!--
                  -->{{#ifeq:{{lc:{{padleft:|4|{{#titleparts:{{{1|}}}|1|3}}}}}}|www.<!--
              -->|{{Str right|{{#titleparts:{{{1|}}}|1|3}}|4}}<!--
                  -->|{{Str right|{{#titleparts:{{{1|}}}|1|3}}|4}}<!--
              -->|{{#titleparts:{{{1|}}}||3}}<!--
                  -->|{{#titleparts:{{{1|}}}||3}}<!--
                  -->}}<!--
              -->}}<!--
              -->{{#if:{{#titleparts:{{{1|}}}||4}}<!-- rest of the ressource path
              -->|/{{#titleparts:{{{1|}}}||4}}<!--
               -->}}<!--
               -->}}<!--
            -->}}<!--
            -->{{#if:{{#titleparts:{{{1|}}}||4}}<!-- rest of the ressource path
            -->|/{{#titleparts:{{{1|}}}||4}}<!--
             -->}}<!--
             -->}}<!--
         -->}}<!--
         -->}}<!--
         -->]<!--
         -->]<!--
       -->|#default=<!--
       -->|#default=<!-- Warning! this case implies a default "http://" URI scheme, and should NOT occur if there's another accepted URI scheme in the URL
         -->[http://{{#if:1|{{{1|}}}}} <!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}}
         -->[http://{{#if:1|{{{1|}}}}} <!-- This #if:1 allows trimming leading spaces in the full URL: {{{1|}}}
         -->{{#if:{{{2|}}}|{{{2|}}}|<!--
         -->{{#if:{{{2|}}}|{{#if:1|{{{2|}}}}}| <!-- This #if:1 allows trimming leading spaces in the specified display text : {{{2|}}}
            -->{{#ifeq:{{#titleparts:{{{1|}}}|1|1}}|{{{1|}}}|{{{1|}}}|<!-- work-around when titleparts doesn't accept the URL and returns the full string instead : don't attempt to transform the displayed URL
            -->{{lc:<!-- domain name in lowercase
              -->{{lc:<!-- domain name in lowercase
              -->{{#ifeq:{{lc:{{padleft:|4|{{#titleparts:{{{1|}}}|1|1}}}}}}|www.<!--
                  -->{{#ifeq:{{lc:{{padleft:|4|{{#titleparts:{{{1|}}}|1|1}}}}}}|www.<!--
              -->|{{Str right|{{#titleparts:{{{1|}}}|1|1}}|4}}<!--
                  -->|{{Str right|{{#titleparts:{{{1|}}}|1|1}}|4}}<!--
              -->|{{#titleparts:{{{1|}}}|1|1}}<!--
                  -->|{{#titleparts:{{{1|}}}|1|1}}<!--
                  -->}}<!--
              -->}}<!--
              -->{{#if:{{#titleparts:{{{1|}}}||2}}<!-- rest of the ressource path
              -->|/{{#titleparts:{{{1|}}}||2}}<!--
               -->}}<!--
               -->}}<!--
            -->}}<!--
            -->{{#if:{{#titleparts:{{{1|}}}||2}}<!-- rest of the ressource path
            -->|/{{#titleparts:{{{1|}}}||2}}<!--
             -->}}<!--
             -->}}<!--
         -->}}<!--
         -->}}<!--

Revision as of 00:43, 11 October 2010