Extension:RPED

This is the Remote Page Existence Detection (RPED) extension.

In the experimental release
Wikilinks to pages existent on the local wiki turn green. Wikilinks to pages existent on the remote wiki turn blue and link to a remote wiki if the page title exists in a table of page titles present on a remote wiki (e.g. Wikipedia). There is also a parser function, #ifexistremotely.

In the production-level release
This extension maintains a local copy of a centralized list of names of pages existent on Wikipedia; when parsing a page, wikilinks are colored accordingly. It can also act a server providing the full list and differential updates to it to other wikis that request it. The configuration of the extension can be controlled through a special page. See Extension:RemotePageExistenceDetection/Development notes for more details.

Usage
In the current implementation, you will need to create a new username for database use. E.g., if you set $wgDBuser to "wikiuser" in your LocalSettings.php file, you will want to use something else (e.g. "wikiuser2") in your RPEDConfig.php file. Be sure to give that username the necessary permissions to access the database.

In future implementations, an authorized user (i.e. a bureaucrat) uses Special:RPED to generate a random 32-digit password that is then sent to the RPED central server. The wiki is then subscribed for page title list syndication and will receive updates (i.e. additions and deletions) every x seconds.

Installation
See Extension:RPED/Alpha release.

Configuration parameters
See RPEDConfig.php.

Code
See Extension:RPED/Alpha release.

Remaining tasks
There is still much to accomplish:
 * ✅ Limit the special page Special:RPED to admins only
 * Provide a more efficient means of importing page name files into the table
 * Provide a means of aborting imports without having to manually drop the control table
 * Provide a means of adding/removing names from the page name table via API
 * ✅ Implement green links (rather than just blue)
 * ✅ Provide a different method of differentiating "green" links from "blue" (e.g. different font) for accessibility
 * Provide translation into other languages
 * Enable extension to act as a server for the page name list
 * Enable downloads of page name lists from other wikis with the extension