Translate extension for MediaWiki
 
Loading...
Searching...
No Matches
PageMoveLogger.php
1<?php
2declare( strict_types = 1 );
3
4namespace MediaWiki\Extension\Translate\MessageGroupProcessing;
5
6use ManualLogEntry;
7use Status;
8use Title;
9use User;
10
20 private $logType;
22 private $baseSourceTitle;
23
24 public function __construct( Title $baseSourceTitle, string $logType ) {
25 $this->baseSourceTitle = $baseSourceTitle;
26 $this->logType = $logType;
27 }
28
29 public function logSuccess( User $performer, Title $target ): void {
30 $entry = new ManualLogEntry( $this->logType, 'moveok' );
31 $entry->setPerformer( $performer );
32 $entry->setTarget( $this->baseSourceTitle );
33 $entry->setParameters( [ 'target' => $target->getPrefixedText() ] );
34 $logid = $entry->insert();
35 $entry->publish( $logid );
36 }
37
38 public function logError( User $performer, Title $source, Title $target, Status $error ): void {
39 $entry = new ManualLogEntry( $this->logType, 'movenok' );
40 $entry->setPerformer( $performer );
41 $entry->setTarget( $source );
42 $entry->setParameters( [
43 'target' => $target->getPrefixedText(),
44 'error' => $error->getErrorsArray(),
45 ] );
46 $logid = $entry->insert();
47 $entry->publish( $logid );
48 }
49}
Helper class for logging translatable bundle moves.