Albert221 has uploaded a new change for review. ( 
https://gerrit.wikimedia.org/r/394860 )

Change subject: Move links from i18n to software
......................................................................

Move links from i18n to software

Bug: T59181
Change-Id: I46de236687020d1af64571738cce236c1fdaafa6
---
M api/MWOAuthSessionProvider.php
M backend/MWOAuthDataStore.php
M backend/MWOAuthServer.php
M frontend/specialpages/SpecialMWOAuth.php
M i18n/en.json
5 files changed, 81 insertions(+), 20 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/OAuth 
refs/changes/60/394860/1

diff --git a/api/MWOAuthSessionProvider.php b/api/MWOAuthSessionProvider.php
index f5cb4bf..2c709a3 100644
--- a/api/MWOAuthSessionProvider.php
+++ b/api/MWOAuthSessionProvider.php
@@ -98,7 +98,11 @@
                // There exists a local user
                $localUser = MWOAuthUtils::getLocalUserFromCentralId( 
$access->get( 'userId' ) );
                if ( !$localUser || !$localUser->isLoggedIn() ) {
-                       return $this->makeException( 
'mwoauth-invalid-authorization-invalid-user' );
+                       return $this->makeException( 
'mwoauth-invalid-authorization-invalid-user', \Linker::makeExternalLink(
+                           
'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E008',
+                'E008',
+                true
+            ) );
                }
                if ( $localUser->isLocked() ||
                        ( $this->config->get( 'BlockDisablesLogin' ) && 
$localUser->isBlocked() )
diff --git a/backend/MWOAuthDataStore.php b/backend/MWOAuthDataStore.php
index 02fbe00..6fcdc4e 100644
--- a/backend/MWOAuthDataStore.php
+++ b/backend/MWOAuthDataStore.php
@@ -66,7 +66,13 @@
                                throw new MWOAuthException( 
'mwoauthdatastore-request-token-already-used' );
                        }
                        if ( $token === null || !( $returnToken instanceof 
MWOAuthToken ) ) {
-                               throw new MWOAuthException( 
'mwoauthdatastore-request-token-not-found' );
+                               throw new MWOAuthException( 
'mwoauthdatastore-request-token-not-found', [
+                                   \Linker::makeExternalLink(
+                                       
'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E004',
+                        'E004',
+                        true
+                    )
+                ] );
                        }
                } elseif ( $token_type === 'access' ) {
                        $cmra = MWOAuthConsumerAcceptance::newFromToken( 
$this->centralSlave, $token );
diff --git a/backend/MWOAuthServer.php b/backend/MWOAuthServer.php
index 4905e29..e0645f9 100644
--- a/backend/MWOAuthServer.php
+++ b/backend/MWOAuthServer.php
@@ -277,11 +277,21 @@
 
                // Check that user and consumer are in good standing
                if ( $mwUser->isLocked() || $wgBlockDisablesLogin && 
$mwUser->isBlocked() ) {
-                       throw new MWOAuthException( 
'mwoauthserver-insufficient-rights' );
+                       throw new MWOAuthException( 
'mwoauthserver-insufficient-rights', \Linker::makeExternalLink(
+                           
'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E007',
+                'E007',
+                true
+            ) );
                }
                $consumer = $this->data_store->lookup_consumer( $consumerKey );
                if ( !$consumer || $consumer->get( 'deleted' ) ) {
-                       throw new MWOAuthException( 
'mwoauthserver-bad-consumer-key' );
+                       throw new MWOAuthException( 
'mwoauthserver-bad-consumer-key', [
+                           \Linker::makeExternalLink(
+                               
'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E006',
+                    'E006',
+                    true
+                )
+            ] );
                } elseif ( !$consumer->isUsableBy( $mwUser ) ) {
                        $owner = MWOAuthUtils::getCentralUserNameFromId(
                                $consumer->get( 'userId' ),
@@ -289,7 +299,11 @@
                        );
                        throw new MWOAuthException(
                                'mwoauthserver-bad-consumer',
-                               [ $consumer->get( 'name' ), 
MWOAuthUtils::getCentralUserTalk( $owner ) ]
+                               [ $consumer->get( 'name' ), 
MWOAuthUtils::getCentralUserTalk( $owner ), \Linker::makeExternalLink(
+                                   
'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E005',
+                    'E005',
+                    true
+                ) ]
                        );
                } elseif ( $consumer->get( 'ownerOnly' ) ) {
                        throw new MWOAuthException( 
'mwoauthserver-consumer-owner-only', [
@@ -317,7 +331,11 @@
                $centralUserId = MWOAuthUtils::getCentralIdFromLocalUser( 
$mwUser );
                if ( !$centralUserId ) {
                        $userMsg = MWOAuthUtils::getSiteMessage( 
'mwoauthserver-invalid-user' );
-                       throw new MWOAuthException( $userMsg, [ $consumer->get( 
'name' ) ] );
+                       throw new MWOAuthException( $userMsg, [ $consumer->get( 
'name' ), \Linker::makeExternalLink(
+                           
'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E008',
+                'E008',
+                true
+            ) ] );
                }
 
                // Authorization Token
@@ -389,7 +407,11 @@
 
                $centralUserId = MWOAuthUtils::getCentralIdFromLocalUser( 
$mwUser );
                if ( !$centralUserId ) {
-                       $userMsg = MWOAuthUtils::getSiteMessage( 
'mwoauthserver-invalid-user' );
+                       $userMsg = MWOAuthUtils::getSiteMessage( 
'mwoauthserver-invalid-user', \Linker::makeExternalLink(
+                           
'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E008',
+                'E008',
+                true
+            ) );
                        throw new MWOAuthException( $userMsg, [ $consumer->get( 
'name' ) ] );
                }
 
diff --git a/frontend/specialpages/SpecialMWOAuth.php 
b/frontend/specialpages/SpecialMWOAuth.php
index e36708f..a7874be 100644
--- a/frontend/specialpages/SpecialMWOAuth.php
+++ b/frontend/specialpages/SpecialMWOAuth.php
@@ -132,7 +132,14 @@
                                        $verifier = $request->getVal( 
'oauth_verifier', false );
                                        $requestToken = $request->getVal( 
'oauth_token', false );
                                        if ( !$verifier || !$requestToken ) {
-                                               throw new MWOAuthException( 
'mwoauth-bad-request-missing-params' );
+                                               throw new MWOAuthException(
+                                                   
'mwoauth-bad-request-missing-params',
+                            [ \Linker::makeExternalLink(
+                                
'https://www.mediawiki.org/wiki/Special:MyLanguage/Help:OAuth',
+                                'Contact support',
+                                true
+                            ) ]
+                        );
                                        }
                                        $this->getOutput()->addSubtitle( 
$this->msg( 'mwoauth-desc' )->escaped() );
                                        $this->showResponse(
@@ -162,7 +169,14 @@
                                        $access = 
MWOAuthConsumerAcceptance::newFromToken( $dbr, $token->key );
                                        $localUser = 
MWOAuthUtils::getLocalUserFromCentralId( $access->get( 'userId' ) );
                                        if ( !$localUser || 
!$localUser->isLoggedIn() ) {
-                                               throw new MWOAuthException( 
'mwoauth-invalid-authorization-invalid-user' );
+                                               throw new MWOAuthException(
+                                                   
'mwoauth-invalid-authorization-invalid-user',
+                            \Linker::makeExternalLink(
+                                
'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E008',
+                                'E008',
+                                true
+                            )
+                        );
                                        } elseif ( $localUser->isLocked() ||
                                                $wgBlockDisablesLogin && 
$localUser->isBlocked()
                                        ) {
@@ -195,7 +209,13 @@
 
                                        if ( !$cmr ) {
                                                $this->showError(
-                                                       wfMessage( 
'mwoauth-bad-request-invalid-action' ),
+                                                       wfMessage( 
'mwoauth-bad-request-invalid-action',
+                                \Linked::makeExternalLink(
+                                    
'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E002',
+                                    'E002',
+                                    true
+                                )
+                            ),
                                                        $format
                                                );
                                        } else {
@@ -203,7 +223,12 @@
                                                        $cmr->get( 'userId' ), 
$this->getUser() );
                                                $this->showError(
                                                        wfMessage( 
'mwoauth-bad-request-invalid-action-contact',
-                                                               
MWOAuthUtils::getCentralUserTalk( $owner )
+                                                               
MWOAuthUtils::getCentralUserTalk( $owner ),
+                                \Linker::makeExternalLink(
+                                    
'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E003',
+                                    'E003',
+                                    true
+                                )
                                                        ),
                                                        $format
                                                );
@@ -318,7 +343,11 @@
                        $this->getContext()
                );
                if ( !$cmr ) {
-                       throw new MWOAuthException( 
'mwoauthserver-bad-consumer-key' );
+                       throw new MWOAuthException( 
'mwoauthserver-bad-consumer-key', \Linker::makeExternalLink(
+                'https://www.mediawiki.org/wiki/Help:OAuth/Errors#E006',
+                'E006',
+                true
+            ) );
                } elseif ( !$cmr->getDAO()->isUsableBy( $user ) ) {
                        throw new MWOAuthException(
                                'mwoauthserver-bad-consumer',
diff --git a/i18n/en.json b/i18n/en.json
index d8ead7e..e2c284a 100644
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -193,11 +193,11 @@
        "logentry-mwoauthconsumer-create-owner-only": "$1 {{GENDER:$2|created}} 
an owner-only OAuth consumer (consumer key $4)",
        "mwoauthconsumer-consumer-logpage": "OAuth consumer log",
        "mwoauthconsumer-consumer-logpagetext": "Log of approvals, rejections, 
and disabling of registered OAuth consumers.",
-       "mwoauth-bad-request-missing-params": "Sorry, something went wrong 
configuring this connected application. <span 
class=\"plainlinks\">[https://www.mediawiki.org/wiki/Special:MyLanguage/Help:OAuth
 Contact support]</span> to get help fixing it.\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">OAuth missing parameters, 
[https://www.mediawiki.org/wiki/Help:OAuth/Errors#E001 E001]</span>",
-       "mwoauth-bad-request-invalid-action": "Sorry, something went wrong, 
you'll need to contact the application author for help with this.\n\n<span 
class=\"plainlinks mw-mwoautherror-details\">Unknown URL, 
[https://www.mediawiki.org/wiki/Help:OAuth/Errors#E002 E002]</span>",
-       "mwoauth-bad-request-invalid-action-contact": "Sorry, something went 
wrong. You'll need to [$1 contact] the application author for help with 
this.\n\n<span class=\"plainlinks mw-mwoautherror-details\">Unknown URL, 
[https://www.mediawiki.org/wiki/Help:OAuth/Errors#E003 E003]</span>",
+       "mwoauth-bad-request-missing-params": "Sorry, something went wrong 
configuring this connected application. <span class=\"plainlinks\">$1</span> to 
get help fixing it.\n\n<span class=\"plainlinks mw-mwoautherror-details\">OAuth 
missing parameters, [https://www.mediawiki.org/wiki/Help:OAuth/Errors#E001 
E001]</span>",
+       "mwoauth-bad-request-invalid-action": "Sorry, something went wrong, 
you'll need to contact the application author for help with this.\n\n<span 
class=\"plainlinks mw-mwoautherror-details\">Unknown URL, $1</span>",
+       "mwoauth-bad-request-invalid-action-contact": "Sorry, something went 
wrong. You'll need to [$1 contact] the application author for help with 
this.\n\n<span class=\"plainlinks mw-mwoautherror-details\">Unknown URL, 
$2</span>",
        "mwoauthdatastore-access-token-not-found": "No approved grant was found 
for that authorization token.",
-       "mwoauthdatastore-request-token-not-found": "Sorry, something went 
wrong connecting this application.\nGo back and try to connect your account 
again, or contact the application author.\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">OAuth token not found, 
[https://www.mediawiki.org/wiki/Help:OAuth/Errors#E004 E004]</span>",
+       "mwoauthdatastore-request-token-not-found": "Sorry, something went 
wrong connecting this application.\nGo back and try to connect your account 
again, or contact the application author.\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">OAuth token not found, $1</span>",
        "mwoauthdatastore-callback-not-found": "OAuth callback URL not found in 
cache. This is probably an error in how the application makes requests to the 
server.",
        "mwoauthdatastore-request-token-already-used": "This request has 
already been completed and cannot be resubmitted.\nGo back to the application 
and try to connect your account again, or contact the application 
author.\n\n<span class=\"plainlinks mw-mwoautherror-details\">OAuth token 
already used, [https://www.mediawiki.org/wiki/Help:OAuth/Errors#E009 
E009]</span>",
        "mwoauthdatastore-bad-token": "No token was found matching your 
request.",
@@ -205,11 +205,11 @@
        "mwoauthdatastore-bad-verifier": "The verification code provided was 
not valid.",
        "mwoauthdatastore-invalid-token-type": "The requested token type is 
invalid.",
        "mwoauthgrants-general-error": "There was an error in your OAuth 
request.",
-       "mwoauthserver-bad-consumer": "\"$1\" is not approved as a Connected 
App. [$2 Contact] the application author for help.\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">Connected OAuth app not approved, 
[https://www.mediawiki.org/wiki/Help:OAuth/Errors#E005 E005]</span>",
-       "mwoauthserver-bad-consumer-key": "Sorry, something went wrong 
connecting this application.\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">Unknown OAuth key, 
[https://www.mediawiki.org/wiki/Help:OAuth/Errors#E006 E006]</span>",
-       "mwoauthserver-insufficient-rights": "Your account is not allowed to 
use Connected Apps, contact your site administrator to find out why.\n\n<span 
class=\"plainlinks mw-mwoautherror-details\">Insufficient OAuth user rights, 
[https://www.mediawiki.org/wiki/Help:OAuth/Errors#E007 E007]</span>",
+       "mwoauthserver-bad-consumer": "\"$1\" is not approved as a Connected 
App. [$2 Contact] the application author for help.\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">Connected OAuth app not approved, $3</span>",
+       "mwoauthserver-bad-consumer-key": "Sorry, something went wrong 
connecting this application.\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">Unknown OAuth key, $1</span>",
+       "mwoauthserver-insufficient-rights": "Your account is not allowed to 
use Connected Apps, contact your site administrator to find out why.\n\n<span 
class=\"plainlinks mw-mwoautherror-details\">Insufficient OAuth user rights, 
$1</span>",
        "mwoauthserver-invalid-request-token": "Invalid token in your request.",
-       "mwoauthserver-invalid-user": "To use Connected Apps on this site, you 
must have an account across all projects. When you have an account on all 
projects, you can try to connect \"$1\" again.\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">Unified login needed, 
[https://www.mediawiki.org/wiki/Help:OAuth/Errors#E008 E008]</span>",
+       "mwoauthserver-invalid-user": "To use Connected Apps on this site, you 
must have an account across all projects. When you have an account on all 
projects, you can try to connect \"$1\" again.\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">Unified login needed, $2</span>",
        "mwoauthserver-consumer-no-secret": "Sorry, something went wrong 
connecting this application.\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">Consumer has no secret key, 
[https://www.mediawiki.org/wiki/Help:OAuth/Errors#E009 E009]</span>",
        "mwoauthserver-consumer-owner-only": "\"$1\" is an owner-only Connected 
App. To fetch the access token, see [[$2]].\n\n<span class=\"plainlinks 
mw-mwoautherror-details\">Consumer is owner-only, 
[https://www.mediawiki.org/wiki/Help:OAuth/Errors#E010 E010]</span>",
        "mwoauth-invalid-authorization-title": "OAuth authorization error",

-- 
To view, visit https://gerrit.wikimedia.org/r/394860
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I46de236687020d1af64571738cce236c1fdaafa6
Gerrit-PatchSet: 1
Gerrit-Project: mediawiki/extensions/OAuth
Gerrit-Branch: master
Gerrit-Owner: Albert221 <w.albert...@gmail.com>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to