summaryrefslogtreecommitdiff
path: root/www/wiki/extensions/Translate/api/ApiTranslationReview.php
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/extensions/Translate/api/ApiTranslationReview.php')
-rw-r--r--www/wiki/extensions/Translate/api/ApiTranslationReview.php56
1 files changed, 27 insertions, 29 deletions
diff --git a/www/wiki/extensions/Translate/api/ApiTranslationReview.php b/www/wiki/extensions/Translate/api/ApiTranslationReview.php
index 78e07f21..d8fb8045 100644
--- a/www/wiki/extensions/Translate/api/ApiTranslationReview.php
+++ b/www/wiki/extensions/Translate/api/ApiTranslationReview.php
@@ -3,7 +3,7 @@
* API module for marking translations as reviewed
* @file
* @author Niklas Laxström
- * @license GPL-2.0+
+ * @license GPL-2.0-or-later
*/
/**
@@ -15,15 +15,13 @@ class ApiTranslationReview extends ApiBase {
protected static $right = 'translate-messagereview';
public function execute() {
- if ( !$this->getUser()->isAllowed( self::$right ) ) {
- $this->dieUsage( 'Permission denied', 'permissiondenied' );
- }
+ $this->checkUserRightsAny( self::$right );
$params = $this->extractRequestParams();
$revision = Revision::newFromId( $params['revision'] );
if ( !$revision ) {
- $this->dieUsage( 'Invalid revision', 'invalidrevision' );
+ $this->dieWithError( [ 'apierror-nosuchrevid', $params['revision'] ], 'invalidrevision' );
}
$error = self::getReviewBlockers( $this->getUser(), $revision );
@@ -32,34 +30,34 @@ class ApiTranslationReview extends ApiBase {
// Everything is okay
break;
case 'permissiondenied':
- $this->dieUsage( 'Permission denied', $error );
+ $this->dieWithError( 'apierror-permissiondenied-generic', 'permissiondenied' );
break; // Unreachable, but throws off code analyzer.
case 'blocked':
- $this->dieUsage( 'You have been blocked', $error );
+ $this->dieBlocked( $this->getUser()->getBlock() );
break; // Unreachable, but throws off code analyzer.
case 'unknownmessage':
- $this->dieUsage( 'Unknown message', $error );
+ $this->dieWithError( 'apierror-translate-unknownmessage', $error );
break; // Unreachable, but throws off code analyzer.
case 'owntranslation':
- $this->dieUsage( 'Cannot review own translations', $error );
+ $this->dieWithError( 'apierror-translate-owntranslation', $error );
break; // Unreachable, but throws off code analyzer.
case 'fuzzymessage':
- $this->dieUsage( 'Cannot review fuzzy translations', $error );
+ $this->dieWithError( 'apierror-translate-fuzzymessage', $error );
break; // Unreachable, but throws off code analyzer.
default:
- $this->dieUsage( 'Unknown error', $error );
+ $this->dieWithError( [ 'apierror-unknownerror', $error ], $error );
}
$ok = self::doReview( $this->getUser(), $revision );
if ( !$ok ) {
- $this->setWarning( 'Already marked as reviewed by you' );
+ $this->addWarning( 'apiwarn-translate-alreadyreviewedbyyou' );
}
- $output = array( 'review' => array(
+ $output = [ 'review' => [
'title' => $revision->getTitle()->getPrefixedText(),
'pageid' => $revision->getPage(),
'revision' => $revision->getId()
- ) );
+ ] ];
$this->getResult()->addValue( null, $this->getModuleName(), $output );
}
@@ -69,17 +67,17 @@ class ApiTranslationReview extends ApiBase {
* @param User $user
* @param Revision $revision
* @param null|string $comment
- * @return Bool, whether the action was recorded.
+ * @return bool whether the action was recorded.
*/
public static function doReview( User $user, Revision $revision, $comment = null ) {
$dbw = wfGetDB( DB_MASTER );
$table = 'translate_reviews';
- $row = array(
+ $row = [
'trr_user' => $user->getId(),
'trr_page' => $revision->getPage(),
'trr_revision' => $revision->getId(),
- );
- $options = array( 'IGNORE' );
+ ];
+ $options = [ 'IGNORE' ];
$dbw->insert( $table, $row, __METHOD__, $options );
if ( !$dbw->affectedRows() ) {
@@ -92,15 +90,15 @@ class ApiTranslationReview extends ApiBase {
$entry->setPerformer( $user );
$entry->setTarget( $title );
$entry->setComment( $comment );
- $entry->setParameters( array(
+ $entry->setParameters( [
'4::revision' => $revision->getId(),
- ) );
+ ] );
$logid = $entry->insert();
$entry->publish( $logid );
$handle = new MessageHandle( $title );
- Hooks::run( 'TranslateEventTranslationReview', array( $handle ) );
+ Hooks::run( 'TranslateEventTranslationReview', [ $handle ] );
return true;
}
@@ -147,22 +145,22 @@ class ApiTranslationReview extends ApiBase {
}
public function getAllowedParams() {
- return array(
- 'revision' => array(
+ return [
+ 'revision' => [
ApiBase::PARAM_TYPE => 'integer',
ApiBase::PARAM_REQUIRED => true,
- ),
- 'token' => array(
+ ],
+ 'token' => [
ApiBase::PARAM_TYPE => 'string',
ApiBase::PARAM_REQUIRED => true,
- ),
- );
+ ],
+ ];
}
protected function getExamplesMessages() {
- return array(
+ return [
'action=translationreview&revision=1&token=foo'
=> 'apihelp-translationreview-example-1',
- );
+ ];
}
}