Extension:JsCalendar

From mediawiki.org
MediaWiki extensions manual
JsCalendar
Release status: beta
Implementation Parser extension
Description Provides <EventCalendar> tag that shows a JavaScript-based calendar with event pages
Author(s) Edward Chernenko, Steffen Beyer
Latest version 0.3.1
Compatibility policy Snapshots releases along with MediaWiki. Master is not backward compatible.
MediaWiki 1.35 (master branch)
1.34 (REL_34 branch)
Database changes No
License GNU General Public License 2.0 or later
Download

The JsCalendar extension is based on YASEC extension (by Steffen Beyer). It additionally supports coloring (based on category or keywords), showing HTML snippets of event pages, finding event pages by regex, etc. However, unlike YASEC, it only supports MySQL/MariaDB. (PostgreSQL is not supported. Patches are welcome)

Usage[edit]

The following syntax will find all pages with names like Today_in_History/April,_12 and display a calendar of these events:

   <EventCalendar>
   prefix = Today_in_History/
   suffix =
   dateFormat = F_j
   </EventCalendar>

The value of dateFormat parameter is explained here: https://www.php.net/datetime.createfromformat#refsect1-datetime.createfromformat-parameters

The following syntax will find pages like 2020/05/15_Name_of_some_event and display a calendar:

   <EventCalendar>
   titleRegex = ^([0-9]{4,4}/[0-9][0-9]/[0-9][0-9])_.*
   dateFormat = Y/m/d
   </EventCalendar>

By default, pages in main namespace (articles) are shown. To use another namespace, use namespace= parameter, for example (to find pages like "Template:04-13/WhatHappened"):

   <EventCalendar>
   namespace = Template
   prefix =
   suffix = /WhatHappened
   dateFormat = m-j
   </EventCalendar>

Events can be colored based on the category they are in. For example,

   categorycolor.Cat-related events = red
   categorycolor.Dogs = green

Events can be colored based on presence of some keyword within their wikitext. For example,

   keywordcolor.arctic = yellow
   keywordcolor.statistically = lightgreen

Instead of the page name, a HTML snippet of the first N symbols can be shown for each event page. To enable, use the following parameter:

   symbols = 500

Please see README.md for more details/examples.

Installation[edit]

For modern versions of MediaWiki (1.35+), use the following instruction:

Installation for older versions of MediaWiki[edit]

For MediaWiki 1.34, replace the above-mentioned "git clone" command with the following: git clone -b REL1_34 https://github.com/edwardspec/mediawiki-extension-JsCalendar.git

These versions may still receive security fixes (if any), but not new features.

Alternatives[edit]

Please see Calendars for the list of other calendar extensions.