Template:Date-calc

From Test Wiki
Revision as of 16:59, 17 December 2024 by TheAstorPastor (talk | contribs)
The template description below will not be displayed when the template is placed.
Template: v · d · eTemplate/doc: v · d · e

Usage

The `Date-calc` template performs date arithmetic (addition or subtraction) using days, weeks, and months. It is useful for calculating dates relative to a given date.

Parameters

  • date – The starting date in any valid format recognizable by the `#time` parser function (e.g., `1 April 2024`, `19 December 2024`).

Required

  • operation – Specifies whether to add or subtract time. Valid values are:
 * add
 * subtract
  • days – The number of days to add or subtract. Defaults to 0 if not provided.
  • weeks – The number of weeks to add or subtract. Defaults to 0 if not provided.
  • months – The number of months to add or subtract. Defaults to 0 if not provided.

Output

The template outputs the resulting date in the format DD Month YYYY (e.g., 15 January 2024).

Examples

Adding Time

  • To add 2 months and 10 days to 1 January 2024:
 
  {{Date-calc|date=1 January 2024|operation=add|months=2|days=10}}
  
 Output: 11 March 2024
  • To add 3 weeks to today's date:
 
  {{Date-calc|date={{TODAY}}|operation=add|weeks=3}}
  
 Output: (depends on today's date)

Subtracting Time

  • To subtract 1 month and 2 weeks from 17 December 2024:
 
  {{Date-calc|date=17 December 2024|operation=subtract|months=1|weeks=2}}
  
 Output: 3 November 2024
  • To subtract 15 days from 15 March 2024:
 
  {{Date-calc|date=15 March 2024|operation=subtract|days=15}}
  
 Output: 29 February 2024

Error Handling

If required parameters are missing:

 
  {{Date-calc|date=|operation=add}}
  
 Output: Please specify a valid date and operation (add or subtract).

Notes

  • The template uses the `#time` parser function, which supports various date formats.
  • The `days`, `weeks`, and `months` parameters can be used together or separately.
  • If all time parameters (days, weeks, and months) are omitted, no calculation is performed, and the input date is returned as-is.