xref: /plugin/combo/ComboStrap/LowQualityPageOverwrite.php (revision c3437056399326d621a01da73b649707fbb0ae69)
1*c3437056SNickeau<?php
2*c3437056SNickeau
3*c3437056SNickeau
4*c3437056SNickeaunamespace ComboStrap;
5*c3437056SNickeau
6*c3437056SNickeau/**
7*c3437056SNickeau * Class LowQualityPageIndicator
8*c3437056SNickeau * @package ComboStrap
9*c3437056SNickeau * Tells if the page can be of low quality or not
10*c3437056SNickeau * By default, it can
11*c3437056SNickeau */
12*c3437056SNickeauclass LowQualityPageOverwrite extends MetadataBoolean
13*c3437056SNickeau{
14*c3437056SNickeau
15*c3437056SNickeau    /**
16*c3437056SNickeau     * An indicator in the meta
17*c3437056SNickeau     * that set a boolean to true or false
18*c3437056SNickeau     * to tell if a page may be of low quality
19*c3437056SNickeau     */
20*c3437056SNickeau    public const PROPERTY_NAME = 'low_quality_page';
21*c3437056SNickeau    public const CAN_BE_LOW_QUALITY_PAGE_DEFAULT = true;
22*c3437056SNickeau
23*c3437056SNickeau    public static function createForPage(Page $page)
24*c3437056SNickeau    {
25*c3437056SNickeau        return (new LowQualityPageOverwrite())
26*c3437056SNickeau            ->setResource($page);
27*c3437056SNickeau    }
28*c3437056SNickeau
29*c3437056SNickeau    public function getTab(): string
30*c3437056SNickeau    {
31*c3437056SNickeau        return MetaManagerForm::TAB_QUALITY_VALUE;
32*c3437056SNickeau    }
33*c3437056SNickeau
34*c3437056SNickeau    public function getDescription(): string
35*c3437056SNickeau    {
36*c3437056SNickeau        return "If checked, this page will never be a low quality page";
37*c3437056SNickeau    }
38*c3437056SNickeau
39*c3437056SNickeau    public function getLabel(): string
40*c3437056SNickeau    {
41*c3437056SNickeau        return "Prevent this page to become a low quality page";
42*c3437056SNickeau    }
43*c3437056SNickeau
44*c3437056SNickeau    public static function getName(): string
45*c3437056SNickeau    {
46*c3437056SNickeau        return self::PROPERTY_NAME;
47*c3437056SNickeau    }
48*c3437056SNickeau
49*c3437056SNickeau    public function getPersistenceType(): string
50*c3437056SNickeau    {
51*c3437056SNickeau        return Metadata::PERSISTENT_METADATA;
52*c3437056SNickeau    }
53*c3437056SNickeau
54*c3437056SNickeau    public function getMutable(): bool
55*c3437056SNickeau    {
56*c3437056SNickeau        return true;
57*c3437056SNickeau    }
58*c3437056SNickeau
59*c3437056SNickeau    public function getDefaultValue(): bool
60*c3437056SNickeau    {
61*c3437056SNickeau        /**
62*c3437056SNickeau         * A page can be of low quality by default
63*c3437056SNickeau         */
64*c3437056SNickeau        return self::CAN_BE_LOW_QUALITY_PAGE_DEFAULT;
65*c3437056SNickeau    }
66*c3437056SNickeau
67*c3437056SNickeau    public function getCanonical(): string
68*c3437056SNickeau    {
69*c3437056SNickeau        return "low_quality_page";
70*c3437056SNickeau    }
71*c3437056SNickeau
72*c3437056SNickeau
73*c3437056SNickeau}
74