From 31108dda7cfee466a1d27790558c885816003683 Mon Sep 17 00:00:00 2001 From: David Lynch Date: Thu, 16 Mar 2023 11:15:42 -0500 Subject: [PATCH] Add editcheck tags when VE thinks a reference is needed Bug: T324733 Change-Id: Iddc57e07133c56000c1338e8d780fa55cc95ab89 --- extension.json | 3 ++- i18n/ve-wmf/en.json | 2 ++ i18n/ve-wmf/qqq.json | 2 ++ includes/Hooks.php | 2 ++ .../init/targets/ve.init.mw.ArticleTarget.js | 16 +++++++++------- 5 files changed, 17 insertions(+), 8 deletions(-) diff --git a/extension.json b/extension.json index 7c0a2e2541..257fa499b4 100644 --- a/extension.json +++ b/extension.json @@ -166,7 +166,8 @@ "value": false }, "VisualEditorUseChangeTagging": { - "value": true + "value": true, + "description": "Tag edits as having used visualeditor, or VE's wikitext mode." }, "VisualEditorEditCheckTagging": { "value": false, diff --git a/i18n/ve-wmf/en.json b/i18n/ve-wmf/en.json index c9b2c9c76c..cd93f43559 100644 --- a/i18n/ve-wmf/en.json +++ b/i18n/ve-wmf/en.json @@ -16,6 +16,8 @@ "Amir E. Aharoni" ] }, + "tag-editcheck-needreference": "-", + "tag-editcheck-needreference-description": "EditCheck thinks a reference might have been needed in this edit", "tag-visualeditor": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit]]", "tag-visualeditor-description": "Edit made using the [[{{MediaWiki:visualeditor-descriptionpagelink}}|visual editor]]", "tag-visualeditor-needcheck": "[[{{MediaWiki:visualeditor-descriptionpagelink}}|Visual edit: Check]]", diff --git a/i18n/ve-wmf/qqq.json b/i18n/ve-wmf/qqq.json index f29d8a0d79..21473f6881 100644 --- a/i18n/ve-wmf/qqq.json +++ b/i18n/ve-wmf/qqq.json @@ -25,6 +25,8 @@ "Verdy p" ] }, + "tag-editcheck-needreference": "{{ignored}}Short description of the editcheck-needreference tag.\n\nShown on lists of changes (history, recentchanges, etc.) for each edit made that EditCheck thinks might need a reference.\n\nSee also:\n* {{msg-mw|Tag-editcheck-needreference-description}}\n{{Related|tag-editcheck-needreference}}", + "tag-editcheck-needreference-description": "Long description of the editcheck-needreference tag.\n\nShown on lists of changes (history, recentchanges, etc.) for each edit made that EditCheck thinks might need a reference.\n\nSee also:\n* {{msg-mw|Tag-editcheck-needreference}}\n{{Related|tag-editcheck-needreference}}", "tag-visualeditor": "Short description of the visualeditor tag. Do not translate the link target, but do translate the words \"Visual edit\".\n\nShown on lists of changes (history, recentchanges, etc.) for each edit made using VisualEditor.\n\nRefers to {{msg-mw|Visualeditor-descriptionpagelink}}.\n\nSee also:\n* {{msg-mw|Tag-visualeditor-needcheck}}\n{{Related|Tag-visualeditor}}\n{{Identical|VisualEditor}}", "tag-visualeditor-description": "Long description of the visualeditor tag ({{msg-mw|Tag-visualeditor}}).\n\nShown on [[Special:Tags]].\n\nRefers to {{msg-mw|Visualeditor-descriptionpagelink}}.\n\nSee also:\n* {{msg-mw|Tag-visualeditor-needcheck-description}}\n{{Related|Tag-visualeditor}}", "tag-visualeditor-needcheck": "\"Check\" indicates \"Check needed\".\n\nSee {{msg-mw|Tag-visualeditor-needcheck-description}}.\n\nRefers to {{msg-mw|Visualeditor-descriptionpagelink}}.\n\nSee also:\n* {{msg-mw|Tag-visualeditor|similar message}}\n{{Related|Tag-visualeditor}}", diff --git a/includes/Hooks.php b/includes/Hooks.php index a9941f0e5e..1f5e29913a 100644 --- a/includes/Hooks.php +++ b/includes/Hooks.php @@ -53,6 +53,8 @@ class Hooks { private const TAGS = [ 'visualeditor', 'visualeditor-wikitext', + // Edit check + 'editcheck-needreference', // No longer in active use: 'visualeditor-needcheck', 'visualeditor-switched' diff --git a/modules/ve-mw/init/targets/ve.init.mw.ArticleTarget.js b/modules/ve-mw/init/targets/ve.init.mw.ArticleTarget.js index f7091a69e0..88275f05d6 100644 --- a/modules/ve-mw/init/targets/ve.init.mw.ArticleTarget.js +++ b/modules/ve-mw/init/targets/ve.init.mw.ArticleTarget.js @@ -1516,12 +1516,12 @@ ve.init.mw.ArticleTarget.prototype.save = function ( doc, options, isRetry ) { var config = mw.config.get( 'wgVisualEditorConfig' ); - if ( config.useChangeTagging && !data.vetags ) { - if ( this.getSurface().getMode() === 'source' ) { - data.vetags = 'visualeditor-wikitext'; - } else { - data.vetags = 'visualeditor'; - } + var taglist = data.vetags ? data.vetags.split( ',' ) : []; + + if ( config.useChangeTagging ) { + taglist.push( + this.getSurface().getMode() === 'source' ? 'visualeditor-wikitext' : 'visualeditor' + ); } if ( @@ -1529,9 +1529,11 @@ ve.init.mw.ArticleTarget.prototype.save = function ( doc, options, isRetry ) { mw.config.get( 'wgVisualEditorConfig' ).editCheckTagging && mw.editcheck.doesAddedContentNeedReference( this.getSurface().getModel().getDocument() ) ) { - // TODO: Add an "edit check" tag + taglist.push( 'editcheck-needreference' ); } + data.vetags = taglist.join( ',' ); + var promise = this.saving = this.tryWithPreparedCacheKey( doc, data, 'save' ) .done( this.saveComplete.bind( this ) ) .fail( this.saveFail.bind( this, doc, data, !!isRetry ) )