From a42d5d4adfe26d29c128c177f52eeb83e331952d Mon Sep 17 00:00:00 2001 From: Amir Aharoni Date: Sat, 31 Aug 2019 22:49:57 +0300 Subject: [PATCH] Move apihelp messages to a separate file This is one of the last extensions to be converted to having the API messages in a separate file (at least out of the extensions that are used be Wikimedia). This one is a bit different from the others because it actually as several extensions with separate i18n files, so it requires extra-careful review, especially in Gruntfile and the extension.json files. Bug: T189982 Change-Id: I66faae6fd4ff447327587c89ad2a1704edd1b356 --- FancyCaptcha/extension.json | 3 ++- FancyCaptcha/i18n/api/en.json | 10 ++++++++++ FancyCaptcha/i18n/api/qqq.json | 10 ++++++++++ FancyCaptcha/i18n/en.json | 5 +---- FancyCaptcha/i18n/qqq.json | 5 +---- Gruntfile.js | 4 +++- ReCaptchaNoCaptcha/extension.json | 3 ++- ReCaptchaNoCaptcha/i18n/api/en.json | 8 ++++++++ ReCaptchaNoCaptcha/i18n/api/qqq.json | 8 ++++++++ ReCaptchaNoCaptcha/i18n/en.json | 3 +-- ReCaptchaNoCaptcha/i18n/qqq.json | 3 +-- extension.json | 3 ++- i18n/api/en.json | 10 ++++++++++ i18n/api/qqq.json | 10 ++++++++++ i18n/en.json | 2 -- i18n/qqq.json | 2 -- 16 files changed, 69 insertions(+), 20 deletions(-) create mode 100644 FancyCaptcha/i18n/api/en.json create mode 100644 FancyCaptcha/i18n/api/qqq.json create mode 100644 ReCaptchaNoCaptcha/i18n/api/en.json create mode 100644 ReCaptchaNoCaptcha/i18n/api/qqq.json create mode 100644 i18n/api/en.json create mode 100644 i18n/api/qqq.json diff --git a/FancyCaptcha/extension.json b/FancyCaptcha/extension.json index f92f13835..5bee14f62 100644 --- a/FancyCaptcha/extension.json +++ b/FancyCaptcha/extension.json @@ -13,7 +13,8 @@ }, "MessagesDirs": { "FancyCaptcha": [ - "i18n" + "i18n", + "i18n/api" ] }, "AutoloadClasses": { diff --git a/FancyCaptcha/i18n/api/en.json b/FancyCaptcha/i18n/api/en.json new file mode 100644 index 000000000..ae3b505d8 --- /dev/null +++ b/FancyCaptcha/i18n/api/en.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Brad Jorsch" + ] + }, + "apihelp-fancycaptchareload-description": "Get a new FancyCaptcha.", + "apihelp-fancycaptchareload-summary": "Get a new FancyCaptcha.", + "apihelp-fancycaptchareload-example-1": "Get a new FancyCaptcha" +} diff --git a/FancyCaptcha/i18n/api/qqq.json b/FancyCaptcha/i18n/api/qqq.json new file mode 100644 index 000000000..4813bf65c --- /dev/null +++ b/FancyCaptcha/i18n/api/qqq.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Brad Jorsch" + ] + }, + "apihelp-fancycaptchareload-description": "{{doc-apihelp-description|fancycaptchareload}}", + "apihelp-fancycaptchareload-summary": "{{doc-apihelp-summary|fancycaptchareload}}", + "apihelp-fancycaptchareload-example-1": "{{doc-apihelp-example|fancycaptchareload}}" +} diff --git a/FancyCaptcha/i18n/en.json b/FancyCaptcha/i18n/en.json index 202ccf0f0..b7f956a9c 100644 --- a/FancyCaptcha/i18n/en.json +++ b/FancyCaptcha/i18n/en.json @@ -11,8 +11,5 @@ "fancycaptcha-edit": "To edit this page, please enter the words that appear below in the box ([[Special:Captcha/help|more info]]):", "fancycaptcha-imgcaptcha-ph": "Enter the text you see on the image", "fancycaptcha-sendemail": "To protect the wiki against automated spamming, we kindly ask you to enter the words that appear below in the box ([[Special:Captcha/help|more info]]):", - "fancycaptcha-reload-text": "Refresh", - "apihelp-fancycaptchareload-description": "Get a new FancyCaptcha.", - "apihelp-fancycaptchareload-summary": "Get a new FancyCaptcha.", - "apihelp-fancycaptchareload-example-1": "Get a new FancyCaptcha" + "fancycaptcha-reload-text": "Refresh" } diff --git a/FancyCaptcha/i18n/qqq.json b/FancyCaptcha/i18n/qqq.json index 246d8797f..2c497b80b 100644 --- a/FancyCaptcha/i18n/qqq.json +++ b/FancyCaptcha/i18n/qqq.json @@ -18,8 +18,5 @@ "fancycaptcha-edit": "{{Related|ConfirmEdit-edit}}", "fancycaptcha-imgcaptcha-ph": "Placeholder text for image CAPTCHA input field.", "fancycaptcha-sendemail": "{{Related|ConfirmEdit-sendemail}}", - "fancycaptcha-reload-text": "Prompts a click to get a new FancyCaptcha image.\n{{Identical|Refresh}}", - "apihelp-fancycaptchareload-description": "{{doc-apihelp-description|fancycaptchareload}}", - "apihelp-fancycaptchareload-summary": "{{doc-apihelp-summary|fancycaptchareload}}", - "apihelp-fancycaptchareload-example-1": "{{doc-apihelp-example|fancycaptchareload}}" + "fancycaptcha-reload-text": "Prompts a click to get a new FancyCaptcha image.\n{{Identical|Refresh}}" } diff --git a/Gruntfile.js b/Gruntfile.js index ba425faf9..ee0bccc34 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -27,7 +27,9 @@ module.exports = function ( grunt ) { banana: { all: [ 'i18n/', - '**/i18n/' + 'i18n/api/', + '**/i18n/', + '**/i18n/api/' ] } } ); diff --git a/ReCaptchaNoCaptcha/extension.json b/ReCaptchaNoCaptcha/extension.json index 415b49541..2f7e2ec37 100644 --- a/ReCaptchaNoCaptcha/extension.json +++ b/ReCaptchaNoCaptcha/extension.json @@ -9,7 +9,8 @@ "type": "antispam", "MessagesDirs": { "ReCaptchaNoCaptcha": [ - "i18n" + "i18n", + "i18n/api" ] }, "AutoloadClasses": { diff --git a/ReCaptchaNoCaptcha/i18n/api/en.json b/ReCaptchaNoCaptcha/i18n/api/en.json new file mode 100644 index 000000000..8bade2b02 --- /dev/null +++ b/ReCaptchaNoCaptcha/i18n/api/en.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Brad Jorsch" + ] + }, + "renocaptcha-apihelp-param-g-recaptcha-response": "Field from the ReCaptcha widget." +} diff --git a/ReCaptchaNoCaptcha/i18n/api/qqq.json b/ReCaptchaNoCaptcha/i18n/api/qqq.json new file mode 100644 index 000000000..e4ab8b225 --- /dev/null +++ b/ReCaptchaNoCaptcha/i18n/api/qqq.json @@ -0,0 +1,8 @@ +{ + "@metadata": { + "authors": [ + "Brad Jorsch" + ] + }, + "renocaptcha-apihelp-param-g-recaptcha-response": "{{doc-apihelp-param|description=the \"g-recaptcha-response\" parameter added by [[mw:Extension:ConfirmEdit]]|noseealso=1}}" +} diff --git a/ReCaptchaNoCaptcha/i18n/en.json b/ReCaptchaNoCaptcha/i18n/en.json index e3b8e7f0b..5db5462d8 100644 --- a/ReCaptchaNoCaptcha/i18n/en.json +++ b/ReCaptchaNoCaptcha/i18n/en.json @@ -10,6 +10,5 @@ "renocaptcha-createaccount-fail": "It seems you haven't solved the CAPTCHA.", "renocaptcha-create": "To protect the wiki against automated page creation, we kindly ask you to solve the following CAPTCHA:", "renocaptcha-noscript": "Unhappily you have disabled JavaScript, so we can't recognize automatically, if you're a human or not. Please solve the CAPTCHA above and copy the resulting text into the following textarea:", - "renocaptcha-help": "Please solve a ReCaptcha NoCaptcha challenge and return the response value as captchaWord.", - "renocaptcha-apihelp-param-g-recaptcha-response": "Field from the ReCaptcha widget." + "renocaptcha-help": "Please solve a ReCaptcha NoCaptcha challenge and return the response value as captchaWord." } diff --git a/ReCaptchaNoCaptcha/i18n/qqq.json b/ReCaptchaNoCaptcha/i18n/qqq.json index 9520bbd74..113f2921f 100644 --- a/ReCaptchaNoCaptcha/i18n/qqq.json +++ b/ReCaptchaNoCaptcha/i18n/qqq.json @@ -12,6 +12,5 @@ "renocaptcha-createaccount-fail": "Error message, when the CAPTCHA isn't solved correctly.\n{{related|ConfirmEdit-createaccount-fail}}", "renocaptcha-create": "Message above the CAPTCHA for create (user creates a new page) action.\n{{related|ConfirmEdit-create}}", "renocaptcha-noscript": "This messages is warning you have javascript disabled so you have to manualy input the text into the textbox.", - "renocaptcha-help": "Explanation of how to solve the CAPTCHA for API clients.", - "renocaptcha-apihelp-param-g-recaptcha-response": "{{doc-apihelp-param|description=the \"g-recaptcha-response\" parameter added by [[mw:Extension:ConfirmEdit]]|noseealso=1}}" + "renocaptcha-help": "Explanation of how to solve the CAPTCHA for API clients." } diff --git a/extension.json b/extension.json index 0877851a1..bd3f59eca 100644 --- a/extension.json +++ b/extension.json @@ -43,7 +43,8 @@ }, "MessagesDirs": { "ConfirmEdit": [ - "i18n" + "i18n", + "i18n/api" ] }, "ExtensionMessagesFiles": { diff --git a/i18n/api/en.json b/i18n/api/en.json new file mode 100644 index 000000000..fed900beb --- /dev/null +++ b/i18n/api/en.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Brad Jorsch", + "Florian Schmidt" + ] + }, + "captcha-apihelp-param-captchaword": "Answer to the CAPTCHA", + "captcha-apihelp-param-captchaid": "CAPTCHA ID from previous request" +} diff --git a/i18n/api/qqq.json b/i18n/api/qqq.json new file mode 100644 index 000000000..a8fa0d18f --- /dev/null +++ b/i18n/api/qqq.json @@ -0,0 +1,10 @@ +{ + "@metadata": { + "authors": [ + "Brad Jorsch", + "Florian Schmidt" + ] + }, + "captcha-apihelp-param-captchaword": "{{doc-apihelp-param|description=the \"captchaword\" parameter added by [[mw:Extension:ConfirmEdit]]|noseealso=1}}\nSee also {{msg-mw|captcha-apihelp-param-captchaid}}", + "captcha-apihelp-param-captchaid": "{{doc-apihelp-param|description=the \"captchaid\" parameter added by [[mw:Extension:ConfirmEdit]]|noseealso=1}}\nSee also {{msg-mw|captcha-apihelp-param-captchaword}}" +} diff --git a/i18n/en.json b/i18n/en.json index 2f8996b6f..ed6099e1e 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -26,8 +26,6 @@ "captcha-addurl-whitelist": " #
\n# Syntax is as follows:\n#   * Everything from a \"#\" character to the end of the line is a comment\n#   * Every non-blank line is a regex fragment which will only match hosts inside URLs\n #
", "right-skipcaptcha": "Perform CAPTCHA-triggering actions without having to go through the CAPTCHA", "action-skipcaptcha": "perform CAPTCHA-triggering actions without having to go through the CAPTCHA", - "captcha-apihelp-param-captchaword": "Answer to the CAPTCHA", - "captcha-apihelp-param-captchaid": "CAPTCHA ID from previous request", "confirmedit-preview-line": "Line number", "confirmedit-preview-content": "Content", "confirmedit-preview-validity": "Validity", diff --git a/i18n/qqq.json b/i18n/qqq.json index 05bb52604..d0d6b68d4 100644 --- a/i18n/qqq.json +++ b/i18n/qqq.json @@ -40,8 +40,6 @@ "captcha-addurl-whitelist": "See also: [[MediaWiki:Spam-blacklist]] and [[MediaWiki:Spam-whitelist]].\n\nLeave all the wiki markup, including the spaces, as is.\nYou can translate the text, including 'Leave this line exactly as it is'.\nThe first line of this messages has one (1) leading space.\n\n\"regex\" stands for \"regular expression\".", "right-skipcaptcha": "{{doc-right|skipcaptcha}}", "action-skipcaptcha": "{{doc-action|skipcaptcha}}", - "captcha-apihelp-param-captchaword": "{{doc-apihelp-param|description=the \"captchaword\" parameter added by [[mw:Extension:ConfirmEdit]]|noseealso=1}}\nSee also {{msg-mw|captcha-apihelp-param-captchaid}}", - "captcha-apihelp-param-captchaid": "{{doc-apihelp-param|description=the \"captchaid\" parameter added by [[mw:Extension:ConfirmEdit]]|noseealso=1}}\nSee also {{msg-mw|captcha-apihelp-param-captchaword}}", "confirmedit-preview-line": "Used as a table heading for the edit preview of [[MediaWiki:Captcha-ip-whitelist]] to indicate the line number (1, 2, 3, ...).", "confirmedit-preview-content": "Used as a table heading for the edit preview of [[MediaWiki:Captcha-ip-whitelist]] to indicate the content of a line.\n{{Identical|Content}}", "confirmedit-preview-validity": "Used as a table heading for the edit preview of [[MediaWiki:Captcha-ip-whitelist]] to indicate the validity of a content of a line (if it's an IP address or not).\n{{Identical|Validity}}",