PHP JavaScript Other
Switch branches/tags
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
api
i18n
includes
specials
src
tests
.gitignore
.scrutinizer.yml
.travis.install.sh
.travis.yml
COPYING
DefaultSettings.php
README.md
RELEASE-NOTES.md
SemanticWatchlist.hooks.php
SemanticWatchlist.i18n.alias.php
SemanticWatchlist.php
composer.json
phpunit.xml.dist

README.md

Semantic Watchlist

Build Status Code Coverage Scrutinizer Code Quality Latest Stable Version Packagist download count

Semantic Watchlist (a.k.a. SWL) is an extension to Semantic MediaWiki that enables users to watch semantic properties by adding a new watchlist page (Special:SemanticWatchlist) that lists changes to these properties.

Requirements

Semantic Watchlist 1.2:

Semantic Watchlist 1.1:

  • PHP 5.3+, including PHP 7 and HHVM
  • MediaWiki 1.19 - 1.26
  • Semantic MediaWiki 2.x (and 1.9.x)
  • MySQL 5+ or SQLite 3

Installation

The recommended way to install Semantic Watchlist is by using Composer with an entry in MediaWiki's composer.json.

{
	"require": {
		"mediawiki/semantic-watchlist": "~1.0"
	}
}
  1. From your MediaWiki installation directory, execute composer require mediawiki/semantic-watchlist:~1.0
  2. Run php maintenance/update.php from your MediaWiki installation directory to create the required database tables.
  3. Navigate to Special:Version on your wiki and verify that the package have been successfully installed.

For configuration, see the configuration documentation on MediaWiki.org.

Usage

Users can choose to follow one or more watchlist groups, which are administrator defined, and cover a set of properties and a set of pages (category, namespace, or SMW concept). Notification of changes to watched properties is also possible via email.

Features

  • A watchlist page (Special:SemanticWatchlist) listing changes to properties watched by the user.
  • Per-user optional email notification per edit that changes properties.
  • Integration with user preferences to allow users to specify which watchlist groups they want to follow, and if they want to receive emails on changes.
  • Special:WatchListConditions as administration interface for watchlist groups.
  • API module to query property changes grouped by edit for a single user.
  • API modules to add, modify and delete the watchlist groups.

Find more detailed usage documentation on MediaWiki.org. Recent changes can be found in the release notes.

Contribution and support

If you have remarks, questions, or suggestions, please send them to semediawiki-users@lists.sourceforge.net. You can subscribe to this list here.

If you want to contribute work to the project please subscribe to the developers mailing list and have a look at the contribution guildline. A list of people who have made contributions in the past can be found here.

Extending Semantic Watchlist

Semantic Watchlist is in part a workflow extension, which makes it important for other SMW/MW extensions and tools to interact with it. This is possible via the hooks and API modules Semantic Watchlist provides:

API modules

  • addswlgroup an API module to add semantic watchlist groups.
  • deleteswlgroup an API module to delete semantic watchlist groups.
  • editswlgroup an API module to modify semantic watchlist groups.
  • semanticwatchlist returns a list of modified properties per page for a persons semantic watchlist.

Hooks

  • SWLBeforeEmailNotify
  • SWLBeforeEditInsert
  • SWLAfterEditInsert
  • SWLBeforeChangeSetInsert
  • SWLAfterChangeSetInsert

Tests

This extension provides unit and integration tests that are run by a continues integration platform but can also be executed using composer phpunit from the extension base directory.

License

GNU General Public License 3.0 or later