Source of file CSPBackendTrait.php
Size: 3,172 Bytes - Last Modified: 2021-12-24T06:47:22+00:00
/var/www/docs.ssmods.com/process/src/src/Traits/CSPBackendTrait.php
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163 | <?php namespace Firesphere\CSPHeaders\Traits; use Firesphere\CSPHeaders\Builders\CSSBuilder; use Firesphere\CSPHeaders\Builders\JSBuilder; use Firesphere\CSPHeaders\View\CSPBackend; /** * Trait CSPBackendTrait contains all variables, static and dynamic, and their respective getters and setters * This is to keep the CSPBackend class itself more readable * @package Firesphere\CSPHeaders\Traits */ trait CSPBackendTrait { /** * @var bool */ protected static $jsSRI; /** * CSS defaults to false. * It's causing a lot of trouble with CDN's usually * @var bool */ protected static $cssSRI; /** * JS to be inserted in to the head * @var array */ protected static $headJS = []; /** * CSS to be inserted in to the head * @var array */ protected static $headCSS = []; /** * @var bool */ protected static $useNonce = false; /** * @var CSSBuilder */ protected $cssBuilder; /** * @var JSBuilder */ protected $jsBuilder; /** * @return bool */ public static function isJsSRI(): bool { return CSPBackend::config()->get('jsSRI') || self::$jsSRI; } /** * @param bool $jsSRI */ public static function setJsSRI(bool $jsSRI): void { self::$jsSRI = $jsSRI; } /** * @return bool */ public static function isCssSRI(): bool { return CSPBackend::config()->get('cssSRI') || self::$cssSRI; } /** * @param bool $cssSRI */ public static function setCssSRI(bool $cssSRI): void { self::$cssSRI = $cssSRI; } /** * @return array */ public static function getHeadCSS(): array { return self::$headCSS; } /** * @param array $headCSS */ public static function setHeadCSS(array $headCSS): void { self::$headCSS = $headCSS; } /** * @return array */ public static function getHeadJS(): array { return self::$headJS; } /** * @param array $headJS */ public static function setHeadJS(array $headJS): void { self::$headJS = $headJS; } /** * @return bool */ public static function isUsesNonce(): bool { return CSPBackend::config()->get('useNonce') || self::$useNonce; } /** * @param bool static::isUseNonce() */ public static function setUsesNonce(bool $useNonce): void { self::$useNonce = $useNonce; } /** * @return JSBuilder */ public function getJsBuilder(): JSBuilder { return $this->jsBuilder; } /** * @param JSBuilder $jsBuilder */ public function setJsBuilder(JSBuilder $jsBuilder): void { $this->jsBuilder = $jsBuilder; } /** * @return CSSBuilder */ public function getCssBuilder(): CSSBuilder { return $this->cssBuilder; } /** * @param CSSBuilder $cssBuilder */ public function setCssBuilder(CSSBuilder $cssBuilder): void { $this->cssBuilder = $cssBuilder; } } |