Server IP : 192.158.238.246 / Your IP : 18.117.246.69 Web Server : LiteSpeed System : Linux uniform.iwebfusion.net 4.18.0-553.27.1.lve.1.el8.x86_64 #1 SMP Wed Nov 20 15:58:00 UTC 2024 x86_64 User : jenniferflocom ( 1321) PHP Version : 8.1.32 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/7779/task/7779/cwd/plugins/give/src/Framework/FieldsAPI/ValueObjects/ |
Upload File : |
<?php namespace Give\Framework\FieldsAPI\ValueObjects; /** * The scope of the field for use in persistence. The two built-in scopes are donation and donor, but the scope may be * any custom string. Using a custom scope allows for an add-on to either not store the field, or store it in a custom * location. * * @since 2.32.0 */ class PersistenceScope { public const DONATION = 'donation'; public const SUBSCRIPTION = 'subscription'; public const DONOR = 'donor'; public const CALLBACK = 'callback'; /** * @var string */ private $scope; /** * @since 2.32.0 */ public static function donation(): self { return new self(self::DONATION); } /** * @since 2.32.0 */ public static function donor(): self { return new self(self::DONOR); } /** * @since 3.0.0 */ public static function subscription(): self { return new self(self::SUBSCRIPTION); } /** * @since 2.32.0 */ public static function callback(): self { return new self(self::CALLBACK); } /** * @since 2.32.0 */ public function __construct(string $scope) { $this->scope = $scope; } /** * @since 2.32.0 */ public function isDonation(): bool { return $this->scope === self::DONATION; } /** * @since 3.0.0 */ public function isSubscription(): bool { return $this->scope === self::SUBSCRIPTION; } /** * @since 2.32.0 */ public function isDonor(): bool { return $this->scope === self::DONOR; } /** * @since 2.32.0 */ public function isCallback(): bool { return $this->scope === self::CALLBACK; } /** * @since 2.32.0 * * @param self|string $scope */ public function is($scope): bool { if ($scope instanceof self) { $scope = $scope->scope; } return $this->scope === $scope; } /** * @since 2.32.0 */ public function __toString() { return $this->scope; } }