Open main menu

Changes

592 bytes added ,  12:19, 20 June 2018
restore three rows that were accidentally removed
This page serves to inventory and assess the mix of extensions that are in use for the DCS wiki. Code for "regular" extensions are hosted on Gerrit at the WMF (which is also mirrored to GitHub) with documentation at https://www.mediawiki.org/wiki. Code for the DCS extensions is in the [https://github.com/debtcompliance/mediawiki/tree/master/extensions private Debt Compliance GitHub repo]; and the Organic Design extensions are in the [https://github.com/OrganicDesign/extensions/tree/master/MediaWiki 'MediaWiki' tree of the Organic Design GitHub repo].
== "; Regular" Extensions =={| class=:: Code for "wikitable sortableregular"|-! Extension! Used by extensions are hosted on Gerrit at the WMF projects?! What does it do? ! Maintenance / Last release ! Used by Meza! Used by QualityBox! Alternative Extension|-| [(which is also mirrored to GitHub) with documentation at https://www.mediawiki.org/wiki/Extension:CirrusSearch CirrusSearch] | YES| Extends . Regular is in quotes because ''all'' extensions modify the core search for behavior and capabilities of MediaWiki to . Those that are used by the WMF in their projects or are distributed in the official download should be able to use [https://enconsidered stable, tested, and maintained.wikipediaOver time, some extensions become part of MediaWiki core; and rarely core features are extracted into extensions.org/wiki/Elasticsearch Elasticsearch]| Continuous | Yes| Yes| ; DCS Custom|-| [https://www.mediawiki.org/wiki/Extension:Cite Cite] | Bundled| Provides <nowiki><references /> and <ref></ref></nowiki> tags| Continuous| Yes| Yes| |-| [https://www.mediawiki.org/wiki/Extension:CiteThisPage CiteThisPage] | Bundled| Provides Code for the DCS extensions is in the [https://demogithub.qualitybox.uscom/wikidebtcompliance/Special:CiteThisPage Cite This Page] Special Page.| Continuous | No| Yes| UNUSED|-| [https://www.mediawiki.org/wikitree/Extension:ConfirmEdit ConfirmEdit]| Bundled| Adds CAPTCHAs for page saves and other user actions to protect against spam and password-guessing| Continuous| No| Yes| UNUSED|-| [https:master//www.mediawiki.org/wiki/Extension:Elastica Elasticaextensions private Debt Compliance GitHub repo] | YES| Base Elasticsearch functionality by providing the Elastica library; required by CirrusSearch.Organic Design| Continuous| Yes| Yes| :|-| [https://www.mediawiki.org/wiki/Extension:Gadgets Gadgets] | Bundled| Provides a way for users to pick JavaScript or CSS based "gadgets" that other wiki users provide. | Continuous | No| Yes| UNUSED|-| Organic Design extensions are in the [https://wwwgithub.mediawiki.orgcom/wikiOrganicDesign/Extension:ImageMap ImageMap] | Bundled| The ImageMap extension allows clickable image maps.| Continuous | Yes| Yes| UNUSED|-| [https:extensions/tree/www.mediawiki.orgmaster/wiki/Extension:InputBox InputBox MediaWiki 'MediaWiki' tree of the Organic Design GitHub repo]| Bundled| The InputBox extension adds already created HTML forms to wiki pages.| Continuous| Yes| Yes| UNUSED|-| [https://www.mediawiki.org/wiki/Extension:Interwiki Interwiki]| Bundled| The Interwiki Just because it's an OD extension adds doesn't mean it's not used by the "Special:Interwiki" page to wider MediaWiki, community. We try to view and edit the interwiki table, and a log of any actions made with itnote usage below.| Continuous{{Highlight| Yes| Yes| UNUSED|-| [https://www.mediawiki.org/wiki/Extension:LocalisationUpdate LocalisationUpdate] | Bundled| allows to update text=Please review with the localizations for MediaWiki messages at any time, without needing goal of adding info to upgrade the MediaWiki software.| Continuous| No| No| UNUSED|-| [https://www.mediawiki.org/wiki/Extension:Nuke Nuke] | Bundled| The Nuke extension makes What does it possible for sysops to [https://demodo? column.qualitybox.us/wiki/Special:Nuke mass delete pages].| Continuous| No| Yes| For whatever reason, the DCSNuke extension intercepts page requests for the Nuke special page. DCSNuke has no added functionality. The DCSNuke code is roughly equivalent That would be helpful to understand the REL1_20 release function or utility of Nuke; and the current Nuke extension offers more functionality-- especially as seen from the user perspective. I thought that potentially the reason to use a cloned extension was to totally customize the interface language stringsPlease note whichever role is involved: '''regular-user''', but that's not the case<ref>meld <(curl https://raw.githubusercontent.com/debtcompliance/mediawiki/master/extensions/DcsNuke/i18n/en.json?token=AACV4LWLt32dJzNg2zqcDRP_QZ6ecfOvks5bDx4MwA%3D%3D) <(curl https://raw.githubusercontent.com/wikimedia/mediawiki''talk-extensionseditor''', '''client-Nuke/master/i18n/en.json)</ref>. Remove DCSNukeadmin''', or '''sysop'''.}}|-| ParserFunctions| Bundled?| What does it do? | Maintenance / Last release | Meza?| QB?| UNUSED?|The ultimate goal is two-| PdfHandler| Bundled?| fold: not only understand 'What does it do? ', but also understand related questions like:| Maintenance / Last release | Meza?| QB?| UNUSED?|-| PipeEscape| Bundled?| What does * "How critical is it do? | Maintenance (Used all the time / Last release | Meza?| QB?| UNUSED?|-| Poem| Bundled?| What does it do? | Maintenance occasionally, but still essential / Last release never)"| Meza?| QB?| UNUSED?|-| Renameuser| Bundled?| What does * "Does it doneed work? (known bugs or missing functionality)"| Maintenance / Last release | Meza* "Can or should this extension be replaced (with a more widely supported "regular" extension) to improve maintainability, features, security and lower cost?| QB?| UNUSED?|Of course some features or functions are not really "user-| SimpleMathJax| Bundled?| What does it do? | Maintenance / Last release | Meza?| QB?| UNUSED?|-| SpamBlacklist| Bundled?| What does it do? | Maintenance centric" but might provide security or other features important to stakeholders like "Owner" or "Developer". For example: The DcsSkin provides a look and feel that is consistent with the company brand and makes the user experience more seamless while navigating between Website / Last release | Meza?| QB?| UNUSED?|-| SyntaxHighlight_GeSHi| Bundled?| What does it do? | Maintenance Rails App / Last release | Meza?| QB?| UNUSED?|-| TitleBlacklist| Bundled?| What does it do? | Maintenance / Last release | Meza?| QB?| UNUSED?|-| WikiEditor| Bundled?| What does it do? | Maintenance / Last release | Meza?| QB?| UNUSED?|-|}Wiki.
== Custom DCS Extensions ==I've put information about "[[Extension inventory/sloc|Source lines of code]]" into a sub-article.
{| styleclass="border-spacing:0;wikitable sortable"|- style="background-color:#f2f2f2;border:0.05pt solid !#aaaaaa;padding:0.0194in;"! Extension! PurposeWhat does it do? (explain functionality by role: regular-user, talk-editor, client-admin, or sysop)! Maintenance / Last release! Confirm usedUsed by WMF!Used by Meza!Used by QualityBox!Example / Notes / Alternatives? + notes
|-
| DcsAmmendments1| Adds ammendments section to DCS loan pages. Sysop (only) can add/delete/edit/re-order (up/down) the ammendments; UX [https[mw:Extension://github.com/debtcompliance/mediawiki/blob/master/extensions/DcsAmmendments/modules/dcsammendments.js implemented in JavaScriptCirrusSearch|CirrusSearch]]. |Extends the API with core search for MediaWiki to be able to use [[Elasticsearch]]. Elasticsearch provides a much better search capability to all users of the same functionswiki. Adds new log type: amendments; and logs all actionsIn particular, it allows DCS to index documents (file uploads).| Jan 2018 - new sort functionality ready for testingContinuous|Yes|Yes|Yes| yesCirrusSearch (Elasticsearch) is vital to the ability to index uploaded files
|-
| DcsBaskets2| purpose?[[mw:Extension:Elastica|Elastica]]|Base Elasticsearch functionality by providing the Elastica library; required by CirrusSearch.|Continuous|Yes|Yes| release?Yes| yesRequired as part of Search
|-
| DcsCommon3| [[mw:Extension:Nuke|Nuke]]|The Nuke extension makes it possible for sysops to [https://githubdemo.qualitybox.com/debtcompliance/mediawikius/wiki/Extensions#dcscommonSpecial:Nuke mass delete pages].|Continuous|Bundled|No|Yes| Cookie handling was [https://githubFor whatever reason, the DCSNuke extension intercepts page requests for the Nuke special page.com/debtcompliance/mediawiki/commit/41b4c2a9af447c25143da7e39d959dae3affd0c8#diff-dfec3a4f5a263c72b06f5ceafcac3408 DCSNuke has no added on June 14, 2017]functionality. The DCSNuke code (is roughly equivalent to the REL1_20 release of Nuke; and the cookiecurrent Nuke extension offers more functionality.js part) is from I thought that potentially the reason to use a project called [https://github.com/js-cookie/js-cookie/blob/master/src/js.cookie.js js-cookie]. Socloned extension was to totally customize the interface language strings, we could update but that code. Or, we could replace it with internal functions so we don't rely on 3rd party code. See s not the API documentation for [case<ref>meld <(curl https://docraw.wikimediagithubusercontent.orgcom/debtcompliance/mediawiki-core/master/jsextensions/#!DcsNuke/apii18n/mw.cookie mwen.cookie] (Does '''not''' use the $wgCookieSecure configuration variable since 'detect' could not work withResourceLoaderStartUpModule; as module cache is not fragmented by protocol.) The mw.cookie (JavaScriptjson?token=AACV4LWLt32dJzNg2zqcDRP_QZ6ecfOvks5bDx4MwA%3D%3D) code is syntactically and functionally similar to the server-side cookie API <(`[curl https://docraw.wikimediagithubusercontent.orgcom/mediawiki-core/master/php/classWebRequest.html#aa952980c6053a1e23c3ce673eb0f1d6d WebRequest#getCookie]` and `[https://doc.wikimedia.org/mediawiki-coreextensions-Nuke/master/phpi18n/classWebResponseen.html#a92cfd006677a1d96c3cee8ee3edcccd3 WebResponse#setcookie]`json)</ref>. Remove DCSNuke.
https://www.mediawiki.org/wiki/Manual:Hooks/UserSetCookies '''DcsNuke is deprecated not just a clone, as of REL1_27, and session-handling extensions should be subclassing CookieSessionProvider. [httpsdescribed in the Github wiki Extensions page://wwwit adds a new field for supplying a title pattern to select the deletion candidates by.mediawikiOther criteria could be added later such as restricting to category.org/wiki/Manual:$wgSessionProviders $wgSessionProviders]'''
| yesThe custom DcsNuke extension does not provide features different from the regular Nuke extension. The regular Nuke extension shall be included for DCS.
|-
| DcsComplianceChecklist4| purpose?[[mw:Extension:ParserFunctions|ParserFunctions]]|Enhances the wikitext parser with helpful functions, mostly related to logic and string-handling.|Continuous maintenance|Bundled|Yes| release?Yes| yesAt the bottom of the Special:Version page, you'll see a list of "Parser Function Hooks" that includes the following custom parser functions defined by DCS extensions: '''amendments''', '''companycomments''', '''compliancechecklist''', '''loans''', '''loansinuse''', '''section'''. Many of the others are provided by the Parser Functions extension: if, ifeq, switch, ifexist, ifexpr, iferror, time, timel, expr, rel2abs, titleparts, len, pos, rpos, sub, count, replace, explode
|-
| DcsComplianceChecklist2 5| purpose?[[mw:Extension:Pipe_Escape| release?PipeEscape]]| only used The Pipe Escape extension allows for pipe characters in parser function arguments (and template argument calls) avoid being interpreted as an argument delimiter. This is primarily for the '''checktest''' subdomain, purpose of using wiki tables (or parts thereof) inside parser function calls or when `wgLocalTesting`; intention is to use a timestamp conditiontemplates.|Old but stable|Bundled|Yes|Yes|Included via DcsSetup
|-
| DcsEmailLink6| purpose?[[mw:Extension:SimpleMathJax|SimpleMathJax]]|The SimpleMathJax extension enables MathJax, a Javascript library, for typesetting TeX formula in MediaWiki inside math environments. This extension will load resources from cdnjs.cloudflare.com on all wiki pages that have math or chem tags.|Regular maintenance|No, WMF uses the Math extension|Yes| release?Yes| yesincluded by DcsSetup.php
|-
| DcsExportTerms7| purpose?[[mw:Extension:WikiEditor|WikiEditor]]|The WikiEditor extension provides an improved interface for editing wikitext. It is the wikitext editing interface that Wikipedia started using in 2010 for desktop users, and so it is sometimes called the "2010 wikitext editor".|0.5.1 (2016-04-15) some oversight by WMF|Bundled|Yes| release?Yes| yes
|-
| DcsFindTitle8| purpose?[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsamendments DcsAmmendments]| release?Adds ammendments section to DCS loan pages. Sysop (only) can add/delete/edit/re-order (up/down) the ammendments; UX [https://github.com/debtcompliance/mediawiki/blob/master/extensions/DcsAmmendments/modules/dcsammendments.js implemented in JavaScript]. Extends the API with the same functions. Adds new log type: amendments; and logs all actions.| yesJan 2018 - new sort functionality ready for testing|no|no|no|https://clienttest.dm.dcstemporary.com/ARCA14:1.5_Time_References
|-
| DcsGroupAdmin9| purpose?[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsbaskets DcsBaskets]| release?This extension allows the utilization column of the Baskets tables to be edited directly using AJAX and saving values into 'basket' tables rather than in the traditional wiki-text revision tables.| yes1.4.3, 2018-05-25|no|no|no|"Baskets" can be found in the hierarchy list of the leftnav under the 'Compliance' folder. The page name, by convention, is 'Baskets' e.g. https://clienttest.dm.dcstemporary.com/Baskets This is really neat, and very advanced. However, now that Visual Editor is available, I'd suspect that the user experience of editing large tables in Visual Editor would be much better. '''Replace Baskets with Visual Editor''' '''We've tested the Visual Editor and found it to be to "clunky" for practical use, that was a year or so back, but based on my own experience I think it would still be considered that way if it was tested again now'''
|-
| DcsJobAdmin10| purpose?| release?| yes[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcscommon DcsCommon]|Cookie handling was [https://github.com/debtcompliance/mediawiki/commit/41b4c2a9af447c25143da7e39d959dae3affd0c8#diff-dfec3a4f5a263c72b06f5ceafcac3408 added on June 14, 2017]. The code (the cookie.js part) is from a project called [https://github.com/js-| DcsLoanPages| purpose?| release?| yes|cookie/js-| DcsNamespaces| purpose?| release?| yes|cookie/blob/master/src/js.cookie.js js-| DcsNuke| purpose?| release?| yescookie]. So, we could update that code. REPLACE Or, we could replace it with internal functions so we don't rely on 3rd party code. See the API documentation for [https://wwwdoc.mediawikiwikimedia.org/wikimediawiki-core/master/js/#!/api/Extension:Nuke standard Nuke extensionmw.cookie mw.cookie](Does '''not''' use the $wgCookieSecure configuration variable since 'detect' could not work with|ResourceLoaderStartUpModule; as module cache is not fragmented by protocol.) The mw.cookie (JavaScript) code is syntactically and functionally similar to the server-| DcsSearch| purpose?| release?| yes|side cookie API (`[https://doc.wikimedia.org/mediawiki-| DcsSection| purpose?| release?| yes|core/master/php/classWebRequest.html#aa952980c6053a1e23c3ce673eb0f1d6d WebRequest#getCookie]` and `[https://doc.wikimedia.org/mediawiki-| DcsSection2| purpose?| release?| NO|-| DcsSingleSignOn| purpose?| release?| yes|-| DcsSkin| purpose?| release?| usage?|-| DcsTitle| purpose?| release?| yes|-| DcsUploadedFiles| purpose?| release?| yes|-| DcsUserDisable| purpose?| release?| yes|-| DcsWatchComments| purpose?| release?| yes|-|}core/master/php/classWebResponse.html#a92cfd006677a1d96c3cee8ee3edcccd3 WebResponse#setcookie]`).
== Organic Design https://www.mediawiki.org/wiki/Manual:Hooks/UserSetCookies is deprecated as of REL1_27, and session-handling extensions ==# Accordian# AddLinkClasses# AjaxComments# ArticleProperties# Bliki# CodeTidy# CurrentPages# CurrentUsers# Download# EmailPage# EmailToWiki# EximMailList# ExtraMagic# FaceBook# FileAttach# FormMailer# HighlightJS# InterWiki# jQueryUpload# jQueryUpload2# Ligmincha# LinkAttributes# LinkTree# NukeDPL# ODMaps# OrganicDesign# PdfBook# RecentActivity# SimpleCalendar# TransformChanges# TreeAndMenu# UserLoginLog# UserProfiles# Variables# WebSocket# WikiaAdmin# WikiaInfoshould be subclassing CookieSessionProvider. [[mw:Manual:$wgSessionProviders|$wgSessionProviders]]
The class creates methods for outputting messages, notices, dates, getting [[git:mediawiki/core/+/master/includes/content/ContentHandler.php#86|raw content]].
It loads some javascript (through resource loader). That [https://github.com/debtcompliance/mediawiki/blob/master/extensions/DcsCommon/modules/dcscommon.js javascript] could more easily be maintained as MediaWiki:Common.js? although there may be load order issues. The JS defines like-named methods with varying features. E.g. <blockquote>Check if the passed page title string is in a loan namespace, returns boolean. Note that this function only checks if the namespace is in the list of all loan namespaces, it doesn't do any checks for whether the namespace is in use, or whether the title is in a DCS_TOC article like the DcsCommon::isLoanPage PHP function.</blockquote>
The series of extensions create [https://github.com/debtcompliance/mediawiki/blob/bf8a1096e71d2e997c626b9d6e33b4799ba4a87e/extensions/DcsEmailLink/DcsEmailLink.php#L4 DcsInit()] (in DcsEmailLink), DcsBlockPageAccess(), and DcsReady() hook functions. DcsReady() implementations are different across different classes from Basket to [https://github.com/debtcompliance/mediawiki/blob/93999818fd46c2075638120b12d4f684968daa90/extensions/DcsSingleSignOn/DcsSingleSignOn.php#L42 DcsSingleSignOn].
The 'common' extension creates a singleton instance of the DcsCommon class that does a bunch of things according to [https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcscommon notes in the wiki]. The permissions shouldn't really be hidden away in the class code. They should simply be in LocalSettings.php. onUserGetRights() is a big function. The 'self:cache' is mostly called in connection with 'isLocal'. Any true caching should just be offloaded to APC and memcache. Although there is no 'dcs' table in the database on dcsTemporary, the [https://github.com/debtcompliance/mediawiki/blob/master/extensions/DcsCommon/DcsCommon.php#L653 setData()] method is used throughout the codebase so should update [https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcscommon wiki] about where this data is stored.
== Special'''set/getData is for storing arbitrary DCS data in the dcs db table. Agreed that this extension needs cleaning up.'''|recent|no|no|no|pervasive|-|11|[https:Version ==//github.com/debtcompliance/mediawiki/wiki/Compliance-Checklist DcsComplianceChecklist]This is what you'll see reported |Provides a dropdown list of loans and responsibility terms by which the table can be filtered on the Checklist page (by convention). The parser function creates the "[page contents and form controls.|recent (2017 - 2018)|no|no|no|e.g. https://clienttest.dm.dcstemporary.com/Special:Version Special:Version]" page of Checklist|-|12|DcsComplianceChecklist2|purpose?|release?|no|no|no|only used in the wiki'''checktest''' subdomain, or when `wgLocalTesting`; intention is to use a timestamp condition.
=== Installed skins === {| style="border-spacing:0;"|- style="background-color:#f2f2f2;border:0.05pt solid #aaaaaa;padding:0.0194in;"| align=center| '''Skin'''| align=center| '''Version'''| align=center| '''License'''| align=center| '''Description'''| align=center| '''AuthorsThis is in progress, the requirements of the checklist are simpler now and version 2 is just about stripping out a bunch of obsolete functionality.'''
|-
| 13| [https://wwwgithub.com/debtcompliance/mediawiki.org/wikitree/master/extensions/Skin:Cologne_Blue Cologne BlueDcsEmailLink DcsEmailLink]| | –| | [https://clienttestAllows you to send a link to a page in the wiki.dmActivated by the "Email Link" item in the primary navigation across the top of the page.dcstemporarySimilar to the "Email Page" extension by Aran, which is also used.com/Special:Version/License/Cologne_Blue GPL-2.0+]| 11 months ago|no| A lightweight skin with minimal formattingno| no| Lee Daniel Crocker and othersvisit any page
|-
| 14| [httphttps://wwwgithub.com/debtcompliance.com/ DcsSkinmediawiki/wiki/Extensions#dcsexportterms DcsExportTerms]| | 3Allows terms to be downloaded in Comma Separated Value (CSV) format.0CSV is easily imported to a spreadsheet.2, 2016-07-01| recent| [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]no| no| DCS skin desgined to match the QAR appno| | [httpVisit https://wwwclienttest.organicdesigndm.codcstemporary.nzcom/aran Aran Dunkley]Category:Terms and you will see a "Export Terms" action in the primary navigation across the top of the page.
|-
| 15| [https://wwwgithub.com/debtcompliance/mediawiki.org/wiki/Skin:Modern ModernExtensions#dcsfindtitle DcsFindTitle]| helps to find a title regardless of case-sensitivity of the system.|recent|no|no| no| integrates with the API, however I'm unsure where it's visible/usable to the user. I believe it's used from the Ruby side to create links that will match a wiki page even if there is a case mismatch. | [If you wish to navigate to https://clienttest.dm.dcstemporary.com/ARCA14:TOC but request https://clienttest.dm.dcstemporary.com/Specialarca14:toc instead, you'll get a 404 Not Found error. If you request https:Version/License/Modern GPL-2clienttest.dm.dcstemporary.0+]| | A bluecom/gray theme with sidebar and top bararca14:toc?action=findtitle then you will be redirected to the proper article. Derived from MonoBook| | River Tarnell '''This uses ApiBeforeMain and othersAPIAfterExecute hooks to modify the API query prop=info to make it case-insensitive.'''
|-
| 16| [https://wwwgithub.com/debtcompliance/mediawiki.org/wiki/Skin:MonoBook MonoBookExtensions#dcsgroupadmin DcsGroupAdmin]| Leverages the DcsBlockPageAccess hook to allow/disallow access to files and namespaces.|recent|no| no| no| [https://clienttest.dm.dcstemporary.com/Special:Version/LicenseDcsGroupAdmin/MonoBook GPL-2.0+]| | The classic MediaWiki skin since 2004, named after the black-and-white photo of a book in the page background| | Gabriel Wicke and othersequality
|-
| 17| [https://wwwgithub.com/debtcompliance/mediawiki/tree/master/extensions/DcsJobAdmin DcsJobAdmin]|See [https://github.orgcom/debtcompliance/mediawiki/wiki/Skin:Vector VectorBackground-jobs Background info on Background jobs]| | –| | . Creates a Special Page [https://clienttest.dm.dcstemporary.com/Special:Version/License/Vector GPL-2.0+DcsJobAdmin Special:DcsJobAdmin]| | Modern version of MonoBook with fresh look where you can start a new job; or view current and many usability improvements| historical jobs. | Trevor ParscalEach job type loads it's own form into the Admin page. The job runner extends the Maintenance class, Roan Kattouw and othersloops over running jobs to provide some progress reporting. It saves the most recent 10 jobs to a 'history' list.There are functions in the code for:
* Return a list of the currently running jobs sorted by start time.
* Add a job to the 'history' list of jobs executed (list is limited to 10 items).
* Get a 'history' list of the last 10 jobs
* Get job data (both current and history)
* shell_exec() to the process table to find DcsJobRunner. Return the currently running jobs by Process ID (PID)
* register the PHP code classes for each job type:
** Change Namespace
** EditTest
** Import
** ImportXML
** Links
** PhpTest
** ReplaceText
** UpgradeAttachments
Each (or almost all?) PHP file is backed by a perl file which was the basis for the PHP development. Everything is written twice because it all started back when the best framework for handling MediaWiki jobs was a perl bot framework. Things have changed significantly over the recent past for [[mw:Manual:Job_queue|-|}MediaWiki's job queue]].
=== Installed extensions ===According to [https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsjobadmin the documentation], it allows you to manage jobs. But, I'm wondering how much this is actually used? The job queue should be run automatically by cron, and the administrative user shouldn't have to worry about it really. If there is a usage pattern where job execution is time sensitive, there is a use for an Admin function; but I'm curious about the usage patterns that create large or numerous jobs. Otherwise, set wgJobRunRate to zero, and put it into cron `0 0 * * * root /usr/bin/php /var/www/example.com/www/w/maintenance/runJobs.php > /var/log/runJobs.log 2>&1`
{| style="border-spacing:0;"|- style="background-color:#f2f2f2;border:0.05pt solid #aaaaaa;padding:0.0194in;"| colspan="5" align=center| '''Special pagesThese jobs aren't just the standard MW maintenance jobs, they''|re DCS- style="specific jobs that need to run in the background-color:#f2f2f2;border:0as they often need to do intensive manipulation of thousands of articles.05pt solid #aaaaaa;padding:0The special page is the interface to these jobs allowing parameters to be set for them and stopping/starting/cancelling/pausing them etc, as well as getting feedback on their progress or errors etc.0194in;"| align=center| '''Extension'''| align=center2018-05-25| '''Version'''no| align=center| '''License'''no| align=center| '''Description'''no| align=center| '''Authors'''
|-
| 18| [httphttps://wwwgithub.com/debtcompliance.com/ DcsGroupAdminmediawiki/wiki/Extensions#dcsloanpages DcsLoanPages]| | 1creates "backlinks" which are links to content that contain a particular keyword or phrase found in a loan document.2It also creates the <nowiki>"< Prev" and "Next >"</nowiki> navigation links (called 'breadcrumbs' in the code, but actually these are 'pager' links not breadcrumbs).0, 2015-06-26| recent| [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]no| no| A special page for managing DCS groups and accessno| | [httpIf you go to a page like https://wwwclienttest.organicdesigndm.codcstemporary.nzcom/aran Aran Dunkley]ARCA14:Agreement You will see a large section of content called '''Index to ARCA14 pages containing "Agreement""'' So, in other words, it's a list of links to pages of the ARCA14 loan that have the word "Agreement" in them. These links are created by the extension. '''They wanted the backlinks at the bottom of the page not in a separate special page'''
|-
| 19| [httphttps://wwwgithub.com/debtcompliance.com/ DcsJobAdminmediawiki/wiki/Extensions#dcsnamespaces DcsNamespaces]| | 4Manages the segregation of loan documents into their own separate namespaces.0.0, 2017-06-28| | [httpAlso provides some functionality around moving/deleting/renaming namespaces via the https://wwwclienttest.dm.debtcompliancedcstemporary.com/ Copyright © 2007-2018 Debt Compliance Services]Special:DcsNamespaces special page.|recent| no| A special page for managing DCS jobs that run in the backgroundno| no| [httpe.g. https://wwwclienttest.organicdesigndm.codcstemporary.nzcom/aran Aran Dunkley]Special:DcsNamespaces
|-
| 20| [http://www.debtcompliance.com/ DcsSearch]DcsNuke| purpose?| 2.4.2, 2017-01-27release?| no| [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]no| no| Renders the search dropdown REPLACE with favourite terms list, and allows users to track the pages they've visited from search results of their favorite terms| | [http[mw:Extension://www.organicdesign.co.nz/aran Aran DunkleyNuke|standard Nuke extension]'''See notes in Nuke above, this is not a replica of Nuke'''
|-
| 21| [httpDcsSearch|Extends the Elasticsearch backend with additional business logic, and new features and UX (saving search "favorites" and indexing link paths traversed in connection with a search query). See https://wwwgithub.com/debtcompliance.com/ DcsUploadedFiles]| | 1.3.0, 2017mediawiki/wiki/Search-07&-08sorting| a year ago| [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]no| no| A special page for listing the files uploaded to loan pagesno| | [http://wwwe.organicdesigng.coSee the "heart" symbol next to the search box which implements the "favorites" feature.nz/aran Aran Dunkley]
|-
| 22| [https://wwwgithub.com/debtcompliance/mediawiki.org/wiki/Extension:EmailPage EmailPageExtensions#dcssection DcsSection]| Allows for loan documents to be imported into the wiki as multiple articles. | 2Creates a 'section reference' capability.4.4, 2017-04-26| in progress (v2)| [https://clienttest.dm.dcstemporary.com/Special:Version/License/EmailPage GPL-2.0+]no| no| Send rendered HTML page to an e-mail address or list of addresses using&nbsp;[http://phpmailer.sourceforge.net/ phpmailer]no| | [http://www.organicdesign.co.nz/aran Aran Dunkley]
|-
| 23|DcsSection2|purpose?| [http://www.organicdesign.co.nz/jQueryUpload jQueryUpload]release?| no| 1.4.5, 2016-08-28no| no| [https://www.gnu.org/licenses/gplUnused -2at least not on the development machine which is a clone of production.0.html GNU ][https://www.gnu.org/licenses/gpl-2.0.html General Public Licence  '''There is a lot of obsolete and patched functionality in this extension, a version 2.0]&nbsp;or later| | Allows files was about to be uploaded to the wiki or started to specific pages using the jQueryFileUpload module| | [http://www.organicdesign.co.nz/aran Aran ][http://www.organicdesign.co.nz/aran Dunkley]&nbsp;and&nbsp;[http://blueimp.net/ Sebastian Tschan]strip all this out'''
|-
| | [https://www.mediawiki.org/wiki/Extension:Nuke Nuke]| | 1.2.024| | [https://clienttest.dm.dcstemporarygithub.com/Special:Versiondebtcompliance/mediawiki/Licensewiki/Nuke GPLSSO-2017-2.0+specification DcsSingleSignOn]| | Gives administrators Create a master/slave relationship with the Ruby on Rails application as the ability to&nbsp;[https://clienttest.dm.dcstemporary.com/Special:Nuke mass delete]&nbsp;pages| | Brion Vibber authentication and Jeroen De Dauw|- | colspan="5" | |- style="background-color:#f2f2f2group mangement source;border:0.05pt solid #aaaaaa;padding:0.0194in;"| colspan="5" align=center| '''Parser hooks''with the MediaWiki application synchronizing user information into it'|- style="background-color:#f2f2f2;border:0.05pt solid #aaaaaa;padding:0s local database.0194in;"| align=center| '''Extension'''2017 major update| align=center| '''Version'''no| align=center| '''License'''no| align=center| '''Description'''no| align=center| '''Authors'''For testing, you can access /wiki/extensions/dcs/DcsSingleSignOn/testLogin.php
|-
| 25| [httphttps://wwwgithub.com/debtcompliance.com/ DcsComplianceChecklistmediawiki/wiki#the-dcs-skin DcsSkin]| Custom 'style' to match DCS website / frontend QAR app| 13.240.2, 2016-0507-1001| no| [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]no| | Creates the #ComplianceChecklist parser-functionno| | [http://www.organicdesign.co.nz/aran Skin by Aran Dunkley]
|-
| 26| [httphttps://wwwgithub.organicdesign.co.nzcom/debtcompliance/mediawiki/wiki/Extension:ExtraMagic.php ExtraMagicThe-DcsTitle-class DcsTitle]| | 3Extends the regular MediaWiki title object class.8Creates a custom cache of the TOC.0, 2015-010-04| recent| [https://www.gnu.org/licenses/gpl-2.0.html GNU General Public Licence 2.0]&nbsp;or laterno| no| Adds useful variables and parser functionsno| | [http://www.organicdesign.co.nz/aran Aran Dunkley]yes
|-
| 27| [https://wwwgithub.com/debtcompliance/mediawiki.org/wiki/Extension:ParserFunctions ParserFunctionsExtensions#dcsuploadedfiles DcsUploadedFiles]| Creates a special page listing all the files uploaded to loan documents orderd by loan namepsace then by article| 1.6.0a year ago|no| no|no| [https://clienttest.dm.dcstemporary.com/Special:Version/License/ParserFunctions GPL-2.0]| | Enhance parser with logical functions| | Tim Starling, Robert Rohde, Ross McClure and Juraj SimlovicDcsUploadedFiles
|-
| 28| [http:DcsUserDisable|Adds 'enable//www.mediawiki.org/wiki/Extension:TreeAndMenu PdfBook]disable' links to the User list|a year ago| no| 1.5.2, 2017-05-15no| no| [https://wwwclienttest.gnudm.orgdcstemporary.com/licenses/gpl-2.0.html GNU General Public Licence 2.0]&nbsp;or later| | pdfbook-desc| | Special:ListUsers Why not use the [httphttps://wwwclienttest.organicdesigndm.codcstemporary.nzcom/aran Aran DunkleySpecial:Block Special:Block]functionality built into core?I believe it's every bit as accessible through the API and thus could be used from QAR.
|-
| 29| [https://wwwgithub.com/debtcompliance/mediawiki.org/wiki/Extension:Pipe_Escape Pipe EscapeExtensions#dcswatchcomments DcsWatchComments]| Adds subscription to talk pages.| 2.0.0.&nbsp;[https://phabricator.wikimedia.org/r/revision/mediawiki/extensions/PipeEscape;a36d2d6969fa0b86e1ac293b34b6b77f2df26576 (a36d2d6)]23:54, 4 May 2016release?|no|no| no| When I view my normal [https://clienttest.dm.dcstemporary.com/Special:Version/License/Pipe_Escape GPL-2EditWatchlist MediaWiki 'WatchList'], I don't see any loan talk pages added. I only see my user page.0+]| | Parser function&nbsp;<span style="background-color:#f9f9f9;"><tt><nowiki>#!</nowiki></tt></span>&nbsp;for when you want a pipe character '''This functionality doesn't apply to be just a pipe character| | David M. Sledge and Purodha Blissenbachthe MW watchlist, it's on the Company Comments page'''
|-
| | [http://www.mediawiki.org/wiki/Extension:TreeAndMenu TreeAndMenu]| | 4.2.1, 2016-05-2430| | [https://wwwgithub.gnu.org/licenses/gpl-2.0.html GNU General Public Licence 2.0]&nbsp;or later| | Adds&nbsp;<span style="background-color:#f9f9f9;"><tt><nowiki>#tree</nowiki></tt></span>&nbsp;and&nbsp;<span style="background-color:#f9f9f9;"><tt><nowiki>#menu</nowiki></tt><com/span>&nbsp;parser functions which contain bullet-lists to be rendered as collapsible treeviews or dropdown menus. The treeviews use the&nbsp;[http:OrganicDesign/extensions/wwwendt.de/tech/fancytree FancyTree]&nbsp;JavaScript tree menu, and the dropdown menus use&nbsp;[http://www.htmldog.com/articles/suckerfish/dropdowns/ Son of Suckerfish]| | [http:/master/www.organicdesign.co.nzMediaWiki/aran Aran DunkleyAjaxComments AjaxComments]|- | colspan="5" | |- style="background-color:#f2f2f2;border:0.05pt solid #aaaaaa;padding:0.0194in;"| colspan="5" align=center| '''Other'''|- style="background-color:#f2f2f2;border:0.05pt solid #aaaaaa;padding:0.0194in;"| align=center| '''Extension'''| align=center| '''Version'''| align=center| '''License'''| align=center| '''Description'''| align=center| '''Authors'''
|-
| 31| [http[mw://www.mediawiki.org/wiki/Extension:AjaxComments AjaxCommentsEmailPage|EmailPage]]| Adds a special page that allows you to send the rendered HTML contents of a wiki page to a recipient (or list). Dependant on PHPMailer (5.2.23)| 2.74.2, 4 (2017-0304-0826)| | Used by [[httpswikiapiary://www.gnu.org/licenses/gpl-2.0.html GNU General Public Licence 2.0Extension:EmailPage|at least 38 wikis]]&nbsp;or later| no| Add comments to no|Activated by the "Email" item in the primary navigation across the end top of the page that can be edited, deleted or replied to instead of using the talk pages| | [http://www.organicdesign.co.nz/aran Aran Dunkley]
|-
| 32| [https://wwwgithub.mediawiki.orgcom/wikiOrganicDesign/Extension:CirrusSearch CirrusSearch]| | 0.2&nbsp;[https:extensions/blob/phabricator.wikimedia.orgmaster/rMediaWiki/revisionExtraMagic/mediawiki/extensions/CirrusSearch;dcb0cf934a76a326aee728166e517fd1b74422e2 (dcb0cf9)ExtraMagic_body.php ExtraMagic]21:22, 4 May 2016| | Adds extra [[httpsmw://clienttest.dm.dcstemporary.com/SpecialHelp:Version/License/CirrusSearch GPL-2Magic_words|Magic Words]] and Parser functions.0+]| || Elasticsearch-powered search for MediaWiki| | Nik Everett, Chad Horohoe, Erik Bernhardson and&nbsp;[https://clienttest.dm.dcstemporary.com/Special:Version/Credits/CirrusSearch others]
|-
| | [http://www.debtcompliance.com/ DcsAmmendments]
| | 1.1.0, 2018-01-20
| | [http://www.debtcompliance.com/ Copyright © 2015-2018 Debt Compliance Services]
| | Adds ammendments section to DCS loan pages
| | [http://www.organicdesign.co.nz/aran Aran Dunkley]
|-
| 33| [httphttps://www.debtcompliancegithub.com/ DcsBasketsOrganicDesign/extensions/tree/master/MediaWiki/jQueryUpload jQueryUpload]| | 1v1.4.25, 2016-08-0828| | [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]no| | Allows fields in Baskets table to be updated via AJAXno| | [http://www.organicdesign.co.nz/aran Aran Dunkley]
|-
| 34|[[mw:Extension:PdfBook| PdfBook]]|The PdfBook extension composes a book from articles in a category, bullet list, or DPL query; and exports as a PDF file. Depends on [httphttps://www.debtcompliancemsweet.comorg/ DcsCommonprojects.php?Z1 HTMLDoc]| | 1.5.1.1, 2018(2017-0105-2514)| | Used by [[httpwikiapiary:Extension://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance ServicesPdfBook|at least 154 wikis]]| no| DCS common functionalityno| | [http://www.organicdesign.co.nz/aran Aran Dunkley]
|-
| | [http://www.debtcompliance.com/ DcsEmailLink]| | 0.0.1, 2017-07-1235| | [http://www.debtcompliance.com/ Copyright © 2017-2018 Debt Compliance Services]| | Adds a new "EmailLink" action which can match a title case-insensitvely| | [httpmw://www.organicdesign.co.nz/aran Aran Dunkley]|-| | [httpExtension://www.debtcompliance.com/ DcsExportTerms]| TreeAndMenu| 2.0.1, 2017-03-20| | [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance ServicesTreeAndMenu]| | Add an export action to the that allows terms to be downloaded in CSV format| | [http://www.organicdesign.co.nz/aran Aran Dunkley]|Makes bullet lists into folder trees or dynamic drop-| | [http://www.debtcompliancedown menus.com/ DcsFindTitle]| | 1.1.0, 2017-01-30| | [http:<br /><br /www.debtcompliance.com/ Copyright © 2007>The drop-2018 Debt Compliance Services]| | Adds a new "find" action down menu functionality uses Son of Suckerfish which can match a title case-insensitvely| | [http://www.organicdesign.co.nz/aran Aran Dunkley]|-| | [http://www.debtcompliance.com/ DcsLoanPages]| | 2.5.2is 99% CSS, 2016-05-17| | [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]| | Adds breadcrumbs, comments and backlinks to DCS loan pages| | [http://www.organicdesign.co.nz/aran Aran Dunkley]|-| | [http://www.debtcompliance.com/ DcsNamespaces]| | 2.5.0, 2015-12-12| | [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]| | A special page for administering loan documents in their own namepsaces| | [http://www.organicdesign.co.nz/aran Aran Dunkley]|-| | [http://www.debtcompliance.com/ DcsNuke]| | 1.2.2, 2017-01-19| | [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]| | Gives administrators the ability to mass delete pages| | [http://www.organicdesign.co.nz/aran Aran Dunkley]|-| | [http://www.debtcompliance.com/ DcsSection2]| | 2.0.0, 2018-01-12| | [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]| | DCS article section handling extension - new version 2 with individual sub-section article support removed| | [http://www.organicdesign.co.nz/aran Aran Dunkley]|-| | [http://www.debtcompliance.com/ DcsSingleSignOn]| | 5.1.5, 2017-07-14| | [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]| | Allows tree component is now using the Rails application to manage FancyTree jQuery plugin rather than the login, logout and session expiry for dTree used in previous version of the DCS wikis| | [http://wwwTreeAndMenu extension.organicdesign.co.nz/aran Aran Dunkley]|-| | [http://www.debtcompliance.com/ DcsTitle]| | 1.0.0, 2017-02-13| | [http://www.debtcompliance.com/ Copyright © 2017-2018 Debt Compliance Services]| | Creates a The new DCS-specific Title class that includes TOC info such as sortkey, next FancyTree has many options and plugins and prev| | [http://www.organicdesign.co.nz/aran Aran Dunkley]|-| | [http://www.debtcompliance.com/ DcsUserDisable]| | 1.3.0is very extendable, 2015-06-26| | [http://www.debtcompliance.com/ Copyright © 2007-2018 Debt Compliance Services]| | Adds acount enable/disable links to please view the user list| | [http://www.organicdesign.co.nz/aran Aran Dunkley]|-| | [http://www.debtcompliancesite and examples for more detail.com/ DcsWatchComments]| | 1.4, 2017-03-09| | [http://www.debtcompliance2.com/ Copyright © 2007-2 (2018 Debt Compliance Services]| | Removes default watchlist functionality and makes all loan comment articles auto-watched| | [http://www.organicdesign.co.nz/aran Aran Dunkley]|01-| | [https://www.mediawiki.org/wiki/Extension:Elastica Elastica]| | 1.3.0.0&nbsp;[https://phabricator.wikimedia.org/r/revision/mediawiki/extensions/Elastica;4607acf9efef0ad5cc236352ada9afe2f1dfdc2b (4607acf31)]22:52, 4 May 2016| | [https://clienttest.dm.dcstemporary.com/Special:Version/License/Elastica GPL-2.0+]| | Base&nbsp;[http://www.elasticsearch.org/ Elasticsearch]&nbsp;functionality for other extensions Used by providing&nbsp;[http://elastica.io/ Elastica]&nbsp;library| | Nik Everett and Chad Horohoe|-| | [httpswikiapiary://www.mediawiki.org/wiki/Extension:WikiEditor WikiEditorTreeAndMenu|at least 137 wikis]]| | 0.5.0no| | [https://clienttest.dm.dcstemporary.com/Special:Version/License/WikiEditor GPL-2.0+]no| | Provides an extendable wikitext editing interface and many feature-providing modules| | Derk-Jan Hartman, Trevor Parscal, Roan Kattouw, Nimish Gautam and Adam Miller
|-
|}
== Double Check ==
You can visit the "[https://clienttest.dm.dcstemporary.com/Special:Version Special:Version]" page of the wiki. This page shows you exactly what extensions and versions of software are installed and activated on your wiki.
 
== References ==
<references />
 
[[Category:Remove table formatting]]
[[Category:Replace with class wikitable]]
4,558

edits