Skip to content
Github mirror of MediaWiki extension Cargo - our actual code is hosted with Gerrit (please see https://www.mediawiki.org/wiki/Developer_access for contributing
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
api
drilldown
formats
i18n
includes
libs
maintenance
skins
specials
sql
tests/phpunit
.gitignore
.gitreview
.jscsrc
.jshintignore
.jshintrc
.phpcs.xml
COPYING
Cargo.alias.php
Cargo.css
Cargo.hooks.php
Cargo.i18n.magic.php
Cargo.php
CargoLua.library.php
Gruntfile.js
README
cargo.lua
composer.json
extension.json
package.json

README

Cargo extension

        Version 2.1.2
        Yaron Koren

This is free software licensed under the GNU General Public License. Please
see http://www.gnu.org/copyleft/gpl.html for further details, including the
full text and terms of the license.

== Overview ==

Cargo is an extension to MediaWiki that provides a lightweight way
to store and query the data contained within the calls to templates, such
as infoboxes.

The extension defines the following parser functions:

* #cargo_declare - placed within the <noinclude> part of a template; it
defines the schema for a table.

* #cargo_attach - also placed within the <noinclude> part of a template;
specifies that a template adds rows to a table declared elsewhere.

* #cargo_store - stores one row to a Cargo table; usually placed within
the <includeonly> part of a template.

* #cargo_query - queries one or more Cargo data tables, using SQL
components.

* #cargo_compound_query - calls multiple queries, and displays the
results together.

* #cargo_display_map - displays a map showing a single point.

* #recurring_event - outputs a string holding a list of dates for a
recurring event, for use by #cargo_store.

For more information, see the extension homepage at:
https://www.mediawiki.org/wiki/Extension:Cargo

== Requirements ==

This version of the Cargo extension requires MediaWiki 1.23 or higher.

== Installation ==

To install the extension, place the entire 'Cargo' directory within
your MediaWiki 'extensions' directory, then add the following line to
your 'LocalSettings.php' file:

     require_once( "$IP/extensions/Cargo/Cargo.php" );

== Credits ==

Cargo was created, and mostly written by, Yaron Koren.

Query formats were also added by Cindy Cicalese, Luis Morillas, StasR
and Kris Field.

Support for hierarchy fields was added by Feroz Ahmed as a project for
the 2017 Google Summer of Code.

Substantial improvements to the Special:Drilldown page, including
support for "parent tables", were done by Nikhil Kumar as part of the
2018 Google Summer of Code.

Important code contributions were also made by Ad Strack van Schijndel,
Duncan Crane, Ed Hoo, Namit Ohri, Paladox, Sam Wilson, Vivek Ghaisas and
others.

== Contact ==

Comments, questions, suggestions and bug reports can be sent to the
MediaWiki mailing list:

 https://lists.wikimedia.org/mailman/listinfo/mediawiki-l

If possible, please add "[Cargo]" at the beginning of the subject line, to
clarify the subject matter.

== Credits to other projects ==

* Cargo includes the DataTables JavaScript library (http:/datatables.net),
available under the MIT License.

* Cargo includes the FullCalendar JavaScript library (http://fullcalendar.io),
available under the MIT License.

* Cargo includes the Slick JS library (http://kenwheeler.github.io/slick/),
available under the MIT License.

* Cargo includes the markerclusterer.js file, available under the Apache
License.

* A significant portion of the drill-down code was copied from the
Semantic Drilldown extension, also written (for the most part) by Yaron
Koren.

* Much of the map display code was copied from the Miga JavaScript library
(http://migadv.com), also written by Yaron Koren.

* Various of the display formats include elements from the code of their
corresponding formats in Semantic MediaWiki and other extensions, notably
the 'outline' format.
You can’t perform that action at this time.