xref: /plugin/combo/ComboStrap/LowQualityPage.php (revision 04fd306c7c155fa133ebb3669986875d65988276)
137748cd8SNickeau<?php
237748cd8SNickeau/**
337748cd8SNickeau * Copyright (c) 2021. ComboStrap, Inc. and its affiliates. All Rights Reserved.
437748cd8SNickeau *
537748cd8SNickeau * This source code is licensed under the GPL license found in the
637748cd8SNickeau * COPYING  file in the root directory of this source tree.
737748cd8SNickeau *
837748cd8SNickeau * @license  GPL 3 (https://www.gnu.org/licenses/gpl-3.0.en.html)
937748cd8SNickeau * @author   ComboStrap <support@combostrap.com>
1037748cd8SNickeau *
1137748cd8SNickeau */
1237748cd8SNickeau
1337748cd8SNickeaunamespace ComboStrap;
1437748cd8SNickeau
1537748cd8SNickeau
1637748cd8SNickeaurequire_once('PluginUtility.php');
1737748cd8SNickeau
1837748cd8SNickeau/**
1937748cd8SNickeau * Class LowQualityPage
2037748cd8SNickeau * @package ComboStrap
2137748cd8SNickeau *
2237748cd8SNickeau */
2337748cd8SNickeauclass LowQualityPage
2437748cd8SNickeau{
2537748cd8SNickeau
2637748cd8SNickeau    const LOW_QUALITY_PROTECTION_ACRONYM = "LQPP"; // low quality page protection
2737748cd8SNickeau    const CONF_LOW_QUALITY_PAGE_PROTECTION_ENABLE = "lowQualityPageProtectionEnable";
2837748cd8SNickeau
2937748cd8SNickeau    /**
3037748cd8SNickeau     *
3137748cd8SNickeau     */
3237748cd8SNickeau    const CONF_LOW_QUALITY_PAGE_PROTECTION_MODE = "lowQualityPageProtectionMode";
3337748cd8SNickeau
3437748cd8SNickeau    const CONF_LOW_QUALITY_PAGE_LINK_TYPE = "lowQualityPageLinkType";
35*04fd306cSNickeau    const CLASS_SUFFIX = "low-quality-page";
36c3437056SNickeau    public const LOW_QUALITY_PAGE_CANONICAL = "low_quality_page";
37c3437056SNickeau    public const LQPP_CANONICAL = "lqpp";
3837748cd8SNickeau
3937748cd8SNickeau    public static function getLowQualityProtectionMode()
4037748cd8SNickeau    {
41*04fd306cSNickeau        if (SiteConfig::getConfValue(LowQualityPage::CONF_LOW_QUALITY_PAGE_PROTECTION_ENABLE, true)) {
42*04fd306cSNickeau            return SiteConfig::getConfValue(LowQualityPage::CONF_LOW_QUALITY_PAGE_PROTECTION_MODE, PageProtection::CONF_VALUE_ACL);
4337748cd8SNickeau        } else {
4437748cd8SNickeau            return false;
4537748cd8SNickeau        }
4637748cd8SNickeau    }
4737748cd8SNickeau
4837748cd8SNickeau    /**
4937748cd8SNickeau     * The protection does not occur on the HTML
5037748cd8SNickeau     * because the created page is valid for a anonymous or logged-in user
5137748cd8SNickeau     * @return mixed|null
5237748cd8SNickeau     */
5337748cd8SNickeau    public static function isProtectionEnabled()
5437748cd8SNickeau    {
5537748cd8SNickeau
56*04fd306cSNickeau        return SiteConfig::getConfValue(LowQualityPage::CONF_LOW_QUALITY_PAGE_PROTECTION_ENABLE, true);
5737748cd8SNickeau
5837748cd8SNickeau    }
5937748cd8SNickeau
6037748cd8SNickeau    public static function getLowQualityLinkType()
6137748cd8SNickeau    {
6237748cd8SNickeau
63*04fd306cSNickeau        return SiteConfig::getConfValue(LowQualityPage::CONF_LOW_QUALITY_PAGE_LINK_TYPE, PageProtection::PAGE_PROTECTION_LINK_NORMAL);
6437748cd8SNickeau
6537748cd8SNickeau    }
6637748cd8SNickeau
6737748cd8SNickeau}
68