MediaWiki master
AccidentalRecreationConstraint.php
Go to the documentation of this file.
1<?php
22
23use StatusValue;
24
33
34 private bool $deletedSinceLastEdit;
35 private bool $allowRecreation;
36
41 public function __construct(
42 bool $deletedSinceLastEdit,
43 bool $allowRecreation
44 ) {
45 $this->deletedSinceLastEdit = $deletedSinceLastEdit;
46 $this->allowRecreation = $allowRecreation;
47 }
48
49 public function checkConstraint(): string {
50 if ( $this->deletedSinceLastEdit && !$this->allowRecreation ) {
51 return self::CONSTRAINT_FAILED;
52 }
53 return self::CONSTRAINT_PASSED;
54 }
55
56 public function getLegacyStatus(): StatusValue {
57 $statusValue = StatusValue::newGood();
58 if ( $this->deletedSinceLastEdit && !$this->allowRecreation ) {
59 $statusValue->setResult( false, self::AS_ARTICLE_WAS_DELETED );
60 }
61 return $statusValue;
62 }
63
64}
if(!defined('MW_SETUP_CALLBACK'))
Definition WebStart.php:81
Make sure user doesn't accidentally recreate a page deleted after they started editing.
__construct(bool $deletedSinceLastEdit, bool $allowRecreation)
Generic operation result class Has warning/error list, boolean status and arbitrary value.
setResult( $ok, $value=null)
Change operation result.
Interface for all constraints that can prevent edits.