PluginProbe ʕ •ᴥ•ʔ
GiveWP – Donation Plugin and Fundraising Platform / trunk
GiveWP – Donation Plugin and Fundraising Platform vtrunk
4.16.7.1 4.16.7 4.16.6.1 4.16.6 4.16.5.1 4.16.5 4.16.4 4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 2.32.0 2.33.0 2.33.1 2.33.2 2.33.3 2.33.4 2.33.5 2.4.0 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.4.7 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.9.0 2.9.1 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.10.0 3.11.0 3.12.0 3.12.1 3.12.2 3.12.3 3.13.0 3.14.0 3.14.1 3.14.2 3.15.0 3.15.1 3.16.0 3.16.1 3.16.2 3.16.3 3.16.4 3.16.5 3.17.0 3.17.1 3.17.2 3.18.0 3.19.0 3.19.1 3.19.2 3.19.3 3.19.4 3.2.0 3.2.1 3.2.2 3.20.0 3.21.0 3.21.1 3.22.0 3.22.1 3.22.2 3.3.0 3.3.1 3.4.0 3.4.1 3.4.2 3.5.0 3.5.1 3.6.0 3.6.1 3.6.2 3.7.0 3.8.0 3.9.0 4.0.0 4.1.0 4.1.1 4.10.0 4.10.1 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.14.5 4.14.6 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.1 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 trunk 1.9.0 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.2 2.11.3 2.12.0 2.12.1 2.12.2 2.12.3 2.13.0 2.13.1 2.13.2 2.13.3 2.13.4 2.14.0 2.15.0 2.16.0 2.16.1 2.17.0 2.17.1 2.17.3 2.18.0 2.18.1 2.19.1 2.19.2 2.19.3 2.19.4 2.19.5 2.19.6 2.19.7 2.19.8 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.20.0 2.20.1 2.20.2 2.21.0 2.21.1 2.21.2 2.21.3 2.21.4 2.22.0 2.22.1 2.22.2 2.22.3 2.23.0 2.23.1 2.23.2 2.24.0 2.24.1 2.24.2 2.25.0 2.25.1 2.25.2 2.25.3 2.26.0 2.27.0 2.27.1 2.27.2 2.27.3 2.28.0 2.29.0 2.29.1 2.29.2
give / src / Framework / PaymentGateways / SubscriptionModule.php
give / src / Framework / PaymentGateways Last commit date
Actions 2 months ago CommandHandlers 2 years ago Commands 2 years ago Contracts 1 year ago Controllers 2 years ago DataTransferObjects 3 years ago Exceptions 4 years ago Log 4 years ago Routes 3 years ago Traits 2 years ago Webhooks 2 months ago DonationSummary.php 3 years ago PaymentGateway.php 11 months ago PaymentGatewayRegister.php 3 years ago ServiceProvider.php 2 months ago SubscriptionModule.php 1 year ago
SubscriptionModule.php
76 lines
1 <?php
2
3 namespace Give\Framework\PaymentGateways;
4
5 use Give\Framework\PaymentGateways\Contracts\Subscription\SubscriptionAmountEditable;
6 use Give\Framework\PaymentGateways\Contracts\Subscription\SubscriptionDashboardLinkable;
7 use Give\Framework\PaymentGateways\Contracts\Subscription\SubscriptionPausable;
8 use Give\Framework\PaymentGateways\Contracts\Subscription\SubscriptionPaymentMethodEditable;
9 use Give\Framework\PaymentGateways\Contracts\Subscription\SubscriptionResumable;
10 use Give\Framework\PaymentGateways\Contracts\Subscription\SubscriptionTransactionsSynchronizable;
11 use Give\Framework\PaymentGateways\Contracts\SubscriptionModuleInterface;
12 use Give\Framework\PaymentGateways\Traits\HasRouteMethods;
13
14 /**
15 * @since 2.20.0
16 *
17 * @template G
18 */
19 abstract class SubscriptionModule implements SubscriptionModuleInterface
20 {
21 use HasRouteMethods;
22
23 /**
24 * @var G
25 */
26 protected $gateway;
27
28 /**
29 * @param G $gateway
30 */
31 public function setGateway(PaymentGateway $gateway)
32 {
33 $this->gateway = $gateway;
34 }
35
36 /**
37 * @since 3.17.0
38 */
39 public function canPauseSubscription(): bool
40 {
41 return $this instanceof SubscriptionPausable;
42 }
43
44 /**
45 * @inheritDoc
46 */
47 public function canSyncSubscriptionWithPaymentGateway(): bool
48 {
49 return $this instanceof SubscriptionTransactionsSynchronizable;
50 }
51
52 /**
53 * @inheritDoc
54 */
55 public function canUpdateSubscriptionAmount(): bool
56 {
57 return $this instanceof SubscriptionAmountEditable;
58 }
59
60 /**
61 * @inheritDoc
62 */
63 public function canUpdateSubscriptionPaymentMethod(): bool
64 {
65 return $this instanceof SubscriptionPaymentMethodEditable;
66 }
67
68 /**
69 * @since 2.21.2
70 */
71 public function hasGatewayDashboardSubscriptionUrl(): bool
72 {
73 return $this instanceof SubscriptionDashboardLinkable;
74 }
75 }
76