Difference between revisions of "Template:ISO end date"

From blackwiki
Jump to navigation Jump to search
imported>Pigsonthewing
 
imported>Pigsonthewing
(sync with {{{ISO date}})
 
Line 1: Line 1:
 
<span class="dtend"><!-- if formatted MMMM YYYY
 
<span class="dtend"><!-- if formatted MMMM YYYY
  -->{{ #ifeq: {{{1|}}} | {{ #time: F Y | {{{1|}}} | local }}|<!--  
+
-->{{ #ifeq: {{{1|}}} | {{ #time: F Y | {{{1|}}} | local }}|<!--  
 
   then -->{{ #time: Y-m | {{{1|}}} | local }}|<!--
 
   then -->{{ #time: Y-m | {{{1|}}} | local }}|<!--
 
   else if formatted MMM YYYY
 
   else if formatted MMM YYYY
 
       -->{{ #ifeq: {{{1|}}} | {{ #time: M Y | {{{1|}}} | local }}|<!--  
 
       -->{{ #ifeq: {{{1|}}} | {{ #time: M Y | {{{1|}}} | local }}|<!--  
 
       then -->{{ #time: Y-m | {{{1|}}} | local }}|<!--
 
       then -->{{ #time: Y-m | {{{1|}}} | local }}|<!--
        else if formatted YYYY
+
      else if formatted YYYY
         -->{{ #ifeq: {{CURRENTYEAR}}-{{CURRENTMONTH}} |{{ #time: Y-m | {{{1|<noinclude>15 January 2001</noinclude>}}} | local }}|<!--  
+
         -->{{ #ifeq: {{{1|}}} | {{ #time: Y | 0:01 {{{1|<noinclude>15 January 2001</noinclude>}}} | local }}|<!--  
            then -->{{#if:{{{1|<noinclude>15 January 2001</noinclude>}}}|{{{1}}}|<span class="error">ISO date requires a parameter</span>}}|<!--  
+
        then -->{{#if:{{{1|<noinclude>15 January 2001</noinclude>}}}|{{{1}}}|<span class="error">ISO date requires a parameter</span>}}|<!--  
            else format general case as regular date
+
        else format general case as regular date
 
             -->{{ #time: Y-m-d |{{{1|<noinclude>15 January 2001</noinclude>}}}|local}}<!--
 
             -->{{ #time: Y-m-d |{{{1|<noinclude>15 January 2001</noinclude>}}}|local}}<!--
 
         end if-->}}<!--
 
         end if-->}}<!--

Latest revision as of 22:17, 12 November 2008

2001-01-15

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

This template converts dates to ISO dates (YYYY-MM-DD or YYYY-MM or YYYY as appropriate), see below for restrictions on input formats accepted.

Usage

The template mat be used without any parameters, in which case it displays the current date:

  • {{ISO end date}} returns 2025-09-05

The template accepts one unnamed parameter containing a date in one of the following formats:

  • {{ISO end date|15 January 2001}} returns 2001-01-15
  • {{ISO end date|15 Jan 2001}} returns 2001-01-15
  • {{ISO end date|15-01-2001}} returns 2001-01-15
  • {{ISO end date|January 15, 2001}} returns 2001-01-15
  • {{ISO end date|Jan 15, 2001}} returns 2001-01-15
  • {{ISO end date|Jan. 15, 2001}} returns 2001-01-15
  • {{ISO end date|01/15/2001}} returns 2001-01-15
  • {{ISO end date|January 2001}} returns 2001-01
  • {{ISO end date|Jan 2001}} returns 2001-01
  • {{ISO end date|2001}} returns 2001

Formats for which it can not work because #time returns an error or an incorrect ISO format:

  • {{ISO end date|01-15-2001}} returns Error: Invalid time. (hyphens indicate DD-MM-YYYY and 15 is an invalid month number)
  • {{ISO end date|15/01/2001}} returns Error: Invalid time. (slashes indicate MM/DD/YYYY and 15 is an invalid month number)
  • {{ISO end date|1/2001}} returns Error: Invalid time.
  • {{ISO end date|2001 January 15}} returns Error: Invalid time.
  • {{ISO end date|2001 January}} returns 2001-01-01 (expected: 2001-01)

Use in microformats

This template also wraps the date in the dtend classes needed by the hCalendar microformat - usually, but not always, within infobox or similar templates, or tables.

Note: due to the requirement exclusive "dtend" in hCalendar, and the accessibility problems that presents when a date is rendered (as seen without CSS) as 28 March 1999 (1999-03-29) or even 28 February 1999 (1999-03-01) or 31 December 1999 (2000-01-01), this template should not be used for whole-day dates.

See also