Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
n/a
0 / 0
n/a
0 / 0
CRAP
n/a
0 / 0
AutoModeratorConfigSchema
n/a
0 / 0
n/a
0 / 0
0
n/a
0 / 0
1<?php
2
3namespace AutoModerator\Config\Validation;
4
5use MediaWiki\Extension\CommunityConfiguration\Schema\JsonSchema;
6use MediaWiki\Extension\CommunityConfiguration\Schemas\MediaWiki\MediaWikiDefinitions;
7
8// phpcs:disable Generic.NamingConventions.UpperCaseConstantName.ClassConstantNotUpperCase
9class AutoModeratorConfigSchema extends JsonSchema {
10    public const VERSION = '1.0.0';
11
12    public const AutoModeratorEnableRevisionCheck = [
13        self::TYPE => self::TYPE_BOOLEAN,
14        self::DEFAULT => false,
15    ];
16
17    public const AutoModeratorCautionLevel = [
18        self::TYPE => self::TYPE_STRING,
19        self::REQUIRED => false,
20        self::DEFAULT => "very-cautious",
21        self::ENUM => [ 'very-cautious', 'cautious', 'somewhat-cautious', 'less-cautious' ]
22    ];
23
24    public const AutoModeratorUseEditFlagMinor = [
25        self::TYPE => self::TYPE_BOOLEAN,
26        self::DEFAULT => false
27    ];
28
29    public const AutoModeratorEnableBotFlag = [
30        self::TYPE => self::TYPE_BOOLEAN,
31        self::DEFAULT => false
32    ];
33
34    public const AutoModeratorRevertTalkPageMessageEnabled = [
35        self::TYPE => self::TYPE_BOOLEAN,
36        self::DEFAULT => false
37    ];
38
39    public const AutoModeratorRevertTalkPageMessageRegisteredUsersOnly = [
40        self::TYPE => self::TYPE_BOOLEAN,
41        self::DEFAULT => false
42    ];
43
44    public const AutoModeratorHelpPageLink = [
45        self::REQUIRED => false,
46        self::REF => [ 'class' => MediaWikiDefinitions::class, 'field' => 'PageTitle' ],
47        self::DEFAULT => "",
48    ];
49
50    public const AutoModeratorEnableUserRevertsPerPage = [
51        self::REQUIRED => true,
52        self::TYPE => self::TYPE_BOOLEAN,
53        self::DEFAULT => false
54    ];
55
56    public const AutoModeratorUserRevertsPerPage = [
57        self::REQUIRED => false,
58        self::TYPE => self::TYPE_STRING,
59        self::DEFAULT => '',
60    ];
61
62    public const AutoModeratorSkipUserRights = [
63        self::TYPE => self::TYPE_ARRAY,
64        self::REQUIRED => false,
65        self::DEFAULT => [ 'bot', 'autopatrol' ],
66        self::ITEMS => [
67            self::TYPE => self::TYPE_STRING
68        ],
69    ];
70
71    public const AutoModeratorFalsePositivePageTitle = [
72        self::REF => [ 'class' => MediaWikiDefinitions::class, 'field' => 'PageTitle' ],
73        self::DEFAULT => "",
74    ];
75}