Extension inventory: Difference between revisions
Restating goal for removal of DcsNuke |
add column to number the extension list |
||
| Line 24: | Line 24: | ||
{| class="wikitable sortable" | {| class="wikitable sortable" | ||
!# | |||
!Extension | !Extension | ||
!What does it do? (explain functionality by role: regular-user, talk-editor, client-admin, or sysop) | !What does it do? (explain functionality by role: regular-user, talk-editor, client-admin, or sysop) | ||
| Line 32: | Line 33: | ||
!Example / Notes / Alternatives? | !Example / Notes / Alternatives? | ||
|- | |- | ||
|1 | |||
|[[mw:Extension:CirrusSearch|CirrusSearch]] | |[[mw:Extension:CirrusSearch|CirrusSearch]] | ||
|Extends the core search for MediaWiki to be able to use [[Elasticsearch]]. Elasticsearch provides a much better search capability to all users of the wiki. In particular, it allows DCS to index documents (file uploads). | |Extends the core search for MediaWiki to be able to use [[Elasticsearch]]. Elasticsearch provides a much better search capability to all users of the wiki. In particular, it allows DCS to index documents (file uploads). | ||
| Line 40: | Line 42: | ||
|CirrusSearch (Elasticsearch) is vital to the ability to index uploaded files | |CirrusSearch (Elasticsearch) is vital to the ability to index uploaded files | ||
|- | |- | ||
|2 | |||
|[[mw:Extension:Elastica|Elastica]] | |[[mw:Extension:Elastica|Elastica]] | ||
|Base Elasticsearch functionality by providing the Elastica library; required by CirrusSearch. | |Base Elasticsearch functionality by providing the Elastica library; required by CirrusSearch. | ||
| Line 48: | Line 51: | ||
|Required as part of Search | |Required as part of Search | ||
|- | |- | ||
|3 | |||
|[[mw:Extension:Nuke|Nuke]] | |[[mw:Extension:Nuke|Nuke]] | ||
|The Nuke extension makes it possible for sysops to [https://demo.qualitybox.us/wiki/Special:Nuke mass delete pages]. | |The Nuke extension makes it possible for sysops to [https://demo.qualitybox.us/wiki/Special:Nuke mass delete pages]. | ||
| Line 59: | Line 63: | ||
The custom DcsNuke extension does not provide features different from the regular Nuke extension. The regular Nuke extension shall be included for DCS. | The custom DcsNuke extension does not provide features different from the regular Nuke extension. The regular Nuke extension shall be included for DCS. | ||
|- | |- | ||
|4 | |||
|[[mw:Extension:ParserFunctions|ParserFunctions]] | |[[mw:Extension:ParserFunctions|ParserFunctions]] | ||
|Enhances the wikitext parser with helpful functions, mostly related to logic and string-handling. | |Enhances the wikitext parser with helpful functions, mostly related to logic and string-handling. | ||
| Line 69: | Line 73: | ||
|At 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 | |At 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 | ||
|- | |- | ||
|5 | |||
|[[mw:Extension:Pipe_Escape|PipeEscape]] | |[[mw:Extension:Pipe_Escape|PipeEscape]] | ||
|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 purpose of using wiki tables (or parts thereof) inside parser function calls or templates. | |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 purpose of using wiki tables (or parts thereof) inside parser function calls or templates. | ||
| Line 77: | Line 82: | ||
|Included via DcsSetup | |Included via DcsSetup | ||
|- | |- | ||
|6 | |||
|[[mw:Extension:SimpleMathJax|SimpleMathJax]] | |[[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. | |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. | ||
| Line 85: | Line 91: | ||
|included by DcsSetup.php | |included by DcsSetup.php | ||
|- | |- | ||
|7 | |||
|[[mw:Extension:WikiEditor|WikiEditor]] | |[[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". | |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". | ||
| Line 93: | Line 100: | ||
| | | | ||
|- | |- | ||
|8 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsamendments DcsAmmendments] | |[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsamendments DcsAmmendments] | ||
|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. | |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. | ||
| Line 101: | Line 109: | ||
|https://clienttest.dm.dcstemporary.com/ARCA14:1.5_Time_References | |https://clienttest.dm.dcstemporary.com/ARCA14:1.5_Time_References | ||
|- | |- | ||
|9 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsbaskets DcsBaskets] | |[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsbaskets DcsBaskets] | ||
|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. | |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. | ||
| Line 111: | Line 120: | ||
'''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''' | '''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''' | ||
|- | |- | ||
|10 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcscommon DcsCommon] | |[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-cookie/js-cookie/blob/master/src/js.cookie.js js-cookie]. So, we could update that code. Or, we could replace it with internal functions so we don't rely on 3rd party code. See the API documentation for [https://doc.wikimedia.org/mediawiki-core/master/js/#!/api/mw.cookie mw.cookie] (Does '''not''' use the $wgCookieSecure configuration variable since 'detect' could not work with | |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-cookie/js-cookie/blob/master/src/js.cookie.js js-cookie]. So, we could update that code. Or, we could replace it with internal functions so we don't rely on 3rd party code. See the API documentation for [https://doc.wikimedia.org/mediawiki-core/master/js/#!/api/mw.cookie mw.cookie] (Does '''not''' use the $wgCookieSecure configuration variable since 'detect' could not work with | ||
| Line 132: | Line 142: | ||
|pervasive | |pervasive | ||
|- | |- | ||
|11 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Compliance-Checklist DcsComplianceChecklist] | |[https://github.com/debtcompliance/mediawiki/wiki/Compliance-Checklist DcsComplianceChecklist] | ||
|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. | |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. | ||
| Line 140: | Line 151: | ||
|e.g. https://clienttest.dm.dcstemporary.com/Checklist | |e.g. https://clienttest.dm.dcstemporary.com/Checklist | ||
|- | |- | ||
|12 | |||
|DcsComplianceChecklist2 | |DcsComplianceChecklist2 | ||
|purpose? | |purpose? | ||
| Line 150: | Line 162: | ||
'''This is in progress, the requirements of the checklist are simpler now and version 2 is just about stripping out a bunch of obsolete functionality.''' | '''This 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://github.com/debtcompliance/mediawiki/tree/master/extensions/DcsEmailLink DcsEmailLink] | |[https://github.com/debtcompliance/mediawiki/tree/master/extensions/DcsEmailLink DcsEmailLink] | ||
|Allows you to send a link to a page in the wiki. Activated by the "Email Link" item in the primary navigation across the top of the page. Similar to the "Email Page" extension by Aran, which is also used. | |Allows you to send a link to a page in the wiki. Activated by the "Email Link" item in the primary navigation across the top of the page. Similar to the "Email Page" extension by Aran, which is also used. | ||
| Line 158: | Line 171: | ||
|visit any page | |visit any page | ||
|- | |- | ||
|14 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsexportterms DcsExportTerms] | |[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsexportterms DcsExportTerms] | ||
|Allows terms to be downloaded in Comma Separated Value (CSV) format. CSV is easily imported to a spreadsheet. | |Allows terms to be downloaded in Comma Separated Value (CSV) format. CSV is easily imported to a spreadsheet. | ||
| Line 166: | Line 180: | ||
|Visit https://clienttest.dm.dcstemporary.com/Category:Terms and you will see a "Export Terms" action in the primary navigation across the top of the page. | |Visit https://clienttest.dm.dcstemporary.com/Category:Terms and you will see a "Export Terms" action in the primary navigation across the top of the page. | ||
|- | |- | ||
|15 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsfindtitle DcsFindTitle] | |[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsfindtitle DcsFindTitle] | ||
|helps to find a title regardless of case-sensitivity of the system. | |helps to find a title regardless of case-sensitivity of the system. | ||
| Line 176: | Line 191: | ||
'''This uses ApiBeforeMain and APIAfterExecute hooks to modify the API query prop=info to make it case-insensitive.''' | '''This uses ApiBeforeMain and APIAfterExecute hooks to modify the API query prop=info to make it case-insensitive.''' | ||
|- | |- | ||
|16 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsgroupadmin DcsGroupAdmin] | |[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsgroupadmin DcsGroupAdmin] | ||
|Leverages the DcsBlockPageAccess hook to allow/disallow access to files and namespaces. | |Leverages the DcsBlockPageAccess hook to allow/disallow access to files and namespaces. | ||
| Line 184: | Line 200: | ||
|https://clienttest.dm.dcstemporary.com/Special:DcsGroupAdmin/equality | |https://clienttest.dm.dcstemporary.com/Special:DcsGroupAdmin/equality | ||
|- | |- | ||
|17 | |||
|[https://github.com/debtcompliance/mediawiki/tree/master/extensions/DcsJobAdmin DcsJobAdmin] | |[https://github.com/debtcompliance/mediawiki/tree/master/extensions/DcsJobAdmin DcsJobAdmin] | ||
|See [https://github.com/debtcompliance/mediawiki/wiki/Background-jobs Background info on Background jobs]. Creates a Special Page [https://clienttest.dm.dcstemporary.com/Special:DcsJobAdmin Special:DcsJobAdmin] where you can start a new job; or view current and historical jobs. Each job type loads it's own form into the Admin page. The job runner extends the Maintenance class, and loops over running jobs to provide some progress reporting. It saves the most recent 10 jobs to a 'history' list. | |See [https://github.com/debtcompliance/mediawiki/wiki/Background-jobs Background info on Background jobs]. Creates a Special Page [https://clienttest.dm.dcstemporary.com/Special:DcsJobAdmin Special:DcsJobAdmin] where you can start a new job; or view current and historical jobs. Each job type loads it's own form into the Admin page. The job runner extends the Maintenance class, and loops over running jobs to provide some progress reporting. It saves the most recent 10 jobs to a 'history' list. | ||
| Line 214: | Line 231: | ||
| | | | ||
|- | |- | ||
|18 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsloanpages DcsLoanPages] | |[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsloanpages DcsLoanPages] | ||
|creates "backlinks" which are links to content that contain a particular keyword or phrase found in a loan document. It also creates the <nowiki>"< Prev" and "Next >"</nowiki> navigation links (called 'breadcrumbs' in the code, but actually these are 'pager' links not breadcrumbs). | |creates "backlinks" which are links to content that contain a particular keyword or phrase found in a loan document. It also creates the <nowiki>"< Prev" and "Next >"</nowiki> navigation links (called 'breadcrumbs' in the code, but actually these are 'pager' links not breadcrumbs). | ||
| Line 224: | Line 242: | ||
'''They wanted the backlinks at the bottom of the page not in a separate special page''' | '''They wanted the backlinks at the bottom of the page not in a separate special page''' | ||
|- | |- | ||
|19 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsnamespaces DcsNamespaces] | |[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsnamespaces DcsNamespaces] | ||
|Manages the segregation of loan documents into their own separate namespaces. Also provides some functionality around moving/deleting/renaming namespaces via the https://clienttest.dm.dcstemporary.com/Special:DcsNamespaces special page. | |Manages the segregation of loan documents into their own separate namespaces. Also provides some functionality around moving/deleting/renaming namespaces via the https://clienttest.dm.dcstemporary.com/Special:DcsNamespaces special page. | ||
| Line 232: | Line 251: | ||
|e.g. https://clienttest.dm.dcstemporary.com/Special:DcsNamespaces | |e.g. https://clienttest.dm.dcstemporary.com/Special:DcsNamespaces | ||
|- | |- | ||
|20 | |||
|DcsNuke | |DcsNuke | ||
|purpose? | |purpose? | ||
| Line 242: | Line 262: | ||
'''See notes in Nuke above, this is not a replica of Nuke''' | '''See notes in Nuke above, this is not a replica of Nuke''' | ||
|- | |- | ||
|21 | |||
|DcsSearch | |DcsSearch | ||
|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://github.com/debtcompliance/mediawiki/wiki/Search-&-sorting | |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://github.com/debtcompliance/mediawiki/wiki/Search-&-sorting | ||
| Line 250: | Line 271: | ||
|e.g. See the "heart" symbol next to the search box which implements the "favorites" feature. | |e.g. See the "heart" symbol next to the search box which implements the "favorites" feature. | ||
|- | |- | ||
|22 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcssection DcsSection] | |[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcssection DcsSection] | ||
|Allows for loan documents to be imported into the wiki as multiple articles. Creates a 'section reference' capability. | |Allows for loan documents to be imported into the wiki as multiple articles. Creates a 'section reference' capability. | ||
| Line 258: | Line 280: | ||
| | | | ||
|- | |- | ||
|23 | |||
|DcsSection2 | |DcsSection2 | ||
|purpose? | |purpose? | ||
| Line 268: | Line 291: | ||
'''There is a lot of obsolete and patched functionality in this extension, a version 2 was about to be started to strip all this out''' | '''There is a lot of obsolete and patched functionality in this extension, a version 2 was about to be started to strip all this out''' | ||
|- | |- | ||
|24 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/SSO-2017-specification DcsSingleSignOn] | |[https://github.com/debtcompliance/mediawiki/wiki/SSO-2017-specification DcsSingleSignOn] | ||
|Create a master/slave relationship with the Ruby on Rails application as the authentication and group mangement source; with the MediaWiki application synchronizing user information into it's local database. | |Create a master/slave relationship with the Ruby on Rails application as the authentication and group mangement source; with the MediaWiki application synchronizing user information into it's local database. | ||
| Line 276: | Line 300: | ||
|For testing, you can access /wiki/extensions/dcs/DcsSingleSignOn/testLogin.php | |For testing, you can access /wiki/extensions/dcs/DcsSingleSignOn/testLogin.php | ||
|- | |- | ||
|25 | |||
|[https://github.com/debtcompliance/mediawiki/wiki#the-dcs-skin DcsSkin] | |[https://github.com/debtcompliance/mediawiki/wiki#the-dcs-skin DcsSkin] | ||
|Custom 'style' to match DCS website / frontend QAR app | |Custom 'style' to match DCS website / frontend QAR app | ||
| Line 284: | Line 309: | ||
|Skin by Aran Dunkley | |Skin by Aran Dunkley | ||
|- | |- | ||
|26 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/The-DcsTitle-class DcsTitle] | |[https://github.com/debtcompliance/mediawiki/wiki/The-DcsTitle-class DcsTitle] | ||
|Extends the regular MediaWiki title object class. Creates a custom cache of the TOC. | |Extends the regular MediaWiki title object class. Creates a custom cache of the TOC. | ||
| Line 292: | Line 318: | ||
|yes | |yes | ||
|- | |- | ||
|27 | |||
|[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsuploadedfiles DcsUploadedFiles] | |[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcsuploadedfiles DcsUploadedFiles] | ||
|Creates a special page listing all the files uploaded to loan documents orderd by loan namepsace then by article | |Creates a special page listing all the files uploaded to loan documents orderd by loan namepsace then by article | ||
| Line 300: | Line 327: | ||
|https://clienttest.dm.dcstemporary.com/Special:DcsUploadedFiles | |https://clienttest.dm.dcstemporary.com/Special:DcsUploadedFiles | ||
|- | |- | ||
|28 | |||
|DcsUserDisable | |DcsUserDisable | ||
|Adds 'enable/disable' links to the User list | |Adds 'enable/disable' links to the User list | ||
| Line 308: | Line 336: | ||
|https://clienttest.dm.dcstemporary.com/Special:ListUsers Why not use the [https://clienttest.dm.dcstemporary.com/Special: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. | |https://clienttest.dm.dcstemporary.com/Special:ListUsers Why not use the [https://clienttest.dm.dcstemporary.com/Special: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://github.com/debtcompliance/mediawiki/wiki/Extensions#dcswatchcomments DcsWatchComments] | |[https://github.com/debtcompliance/mediawiki/wiki/Extensions#dcswatchcomments DcsWatchComments] | ||
|Adds subscription to talk pages. | |Adds subscription to talk pages. | ||
| Line 318: | Line 347: | ||
'''This functionality doesn't apply to the MW watchlist, it's on the Company Comments page''' | '''This functionality doesn't apply to the MW watchlist, it's on the Company Comments page''' | ||
|- | |- | ||
|30 | |||
|[https://github.com/OrganicDesign/extensions/tree/master/MediaWiki/AjaxComments AjaxComments] | |[https://github.com/OrganicDesign/extensions/tree/master/MediaWiki/AjaxComments AjaxComments] | ||
| | | | ||
| Line 326: | Line 356: | ||
| | | | ||
|- | |- | ||
|31 | |||
|[[mw:Extension:EmailPage|EmailPage]] | |[[mw:Extension:EmailPage|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) | |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) | ||
| Line 334: | Line 365: | ||
|Activated by the "Email" item in the primary navigation across the top of the page. | |Activated by the "Email" item in the primary navigation across the top of the page. | ||
|- | |- | ||
|32 | |||
|[https://github.com/OrganicDesign/extensions/blob/master/MediaWiki/ExtraMagic/ExtraMagic_body.php ExtraMagic] | |[https://github.com/OrganicDesign/extensions/blob/master/MediaWiki/ExtraMagic/ExtraMagic_body.php ExtraMagic] | ||
|Adds extra [[mw:Help:Magic_words|Magic Words]] and Parser functions. | |Adds extra [[mw:Help:Magic_words|Magic Words]] and Parser functions. | ||
| Line 342: | Line 374: | ||
| | | | ||
|- | |- | ||
== Double Check == | == Double Check == | ||