SubscriptionGateway
- Type
- Abstract Class
- Namespace
- craft\commerce\base
- Inherits
- craft\commerce\base\SubscriptionGateway » craft\commerce\base\Gateway » craft\base\SavableComponent (opens new window) » craft\base\Component (opens new window) » craft\base\Model (opens new window) » yii\base\Model (opens new window) » yii\base\Component (opens new window) » yii\base\BaseObject (opens new window)
- Implements
- ArrayAccess (opens new window), IteratorAggregate (opens new window), craft\base\ComponentInterface (opens new window), craft\base\SavableComponentInterface (opens new window), craft\commerce\base\GatewayInterface, craft\commerce\base\SubscriptionGatewayInterface, yii\base\Arrayable (opens new window), yii\base\Configurable (opens new window), yii\base\StaticInstanceInterface (opens new window)
- Uses traits
- craft\base\ClonefixTrait (opens new window), craft\base\SavableComponentTrait (opens new window), craft\commerce\base\GatewayTrait, yii\base\ArrayableTrait (opens new window), yii\base\StaticInstanceTrait (opens new window)
- Extended by
- craft\commerce\gateways\Dummy
- Since
- 2.0
Class Subscription Gateway
View source (opens new window)
# Public Properties
# cancelSubscriptionFormModel
- Type
- craft\commerce\models\subscriptions\CancelSubscriptionForm
- Access
- Read-only
View source (opens new window)
# planModel
- Type
- craft\commerce\base\Plan
- Access
- Read-only
View source (opens new window)
# planSettingsHtml
- Type
- string (opens new window), null (opens new window)
- Access
- Read-only
View source (opens new window)
# subscriptionFormModel
- Type
- craft\commerce\models\subscriptions\SubscriptionForm
- Access
- Read-only
View source (opens new window)
# switchPlansFormModel
- Type
- craft\commerce\models\subscriptions\SwitchPlansForm
- Access
- Read-only
View source (opens new window)
# Public Methods
Method | Description |
---|---|
__call() (opens new window) | Calls the named method which is not a class method. |
__clone() (opens new window) | |
__construct() (opens new window) | Constructor. |
__get() (opens new window) | Returns the value of an object property. |
__isset() (opens new window) | Checks if a property is set, i.e. defined and not null. |
__set() (opens new window) | Sets value of an object property. |
__toString() | Returns the name of this payment method. |
__unset() (opens new window) | Sets an object property to null. |
activeAttributes() (opens new window) | Returns the attribute names that are subject to validation in the current scenario. |
addError() (opens new window) | Adds a new error to the specified attribute. |
addErrors() (opens new window) | Adds a list of errors. |
addModelErrors() (opens new window) | Adds errors from another model, with a given attribute name prefix. |
afterDelete() (opens new window) | Performs actions after a component is deleted. |
afterSave() (opens new window) | Performs actions after a component is saved. |
afterValidate() (opens new window) | This method is invoked after validation ends. |
attachBehavior() (opens new window) | Attaches a behavior to this component. |
attachBehaviors() (opens new window) | Attaches a list of behaviors to the component. |
attributeHints() (opens new window) | Returns the attribute hints. |
attributeLabels() (opens new window) | Returns the attribute labels. |
attributes() (opens new window) | Returns the list of attribute names. |
authorize() | Makes an authorize request. |
availableForUseWithOrder() | Returns true if gateway supports payments for the supplied Order. |
beforeApplyDelete() (opens new window) | Performs actions before a component delete is applied to the database. |
beforeDelete() (opens new window) | Performs actions before a component is deleted. |
beforeSave() (opens new window) | Performs actions before a component is saved. |
beforeValidate() (opens new window) | This method is invoked before validation starts. |
behaviors() (opens new window) | Returns a list of behaviors that this component should behave as. |
canGetProperty() (opens new window) | Returns a value indicating whether a property can be read. |
canSetProperty() (opens new window) | Returns a value indicating whether a property can be set. |
cancelSubscription() | Cancels a subscription. |
capture() | Makes a capture request. |
className() (opens new window) | Returns the fully qualified name of this class. |
clearErrors() (opens new window) | Removes errors for all attributes or a single attribute. |
completeAuthorize() | Complete the authorization for offsite payments. |
completePurchase() | Complete the purchase for offsite payments. |
cpPaymentsEnabled() | Returns whether this gateway allows payments in control panel. |
createPaymentSource() | Creates a payment source from source data and user id. |
createValidators() (opens new window) | Creates validator objects based on the validation rules specified in rules() (opens new window). |
datetimeAttributes() (opens new window) | Returns the names of any attributes that should hold DateTime (opens new window) values. |
deletePaymentSource() | Deletes a payment source on the gateway by its token. |
detachBehavior() (opens new window) | Detaches a behavior from the component. |
detachBehaviors() (opens new window) | Detaches all behaviors from the component. |
displayName() (opens new window) | Returns the display name of this class. |
ensureBehaviors() (opens new window) | Makes sure that the behaviors declared in behaviors() (opens new window) are attached to this component. |
extraFields() (opens new window) | Returns the list of fields that can be expanded further and returned by toArray() (opens new window). |
fields() (opens new window) | Returns the list of fields that should be returned by default by toArray() (opens new window) when no specific fields are specified. |
formName() (opens new window) | Returns the form name that this model class should use. |
generateAttributeLabel() (opens new window) | Generates a user friendly attribute label based on the give attribute name. |
getActiveValidators() (opens new window) | Returns the validators applicable to the current scenario (opens new window). |
getAttributeHint() (opens new window) | Returns the text hint for the specified attribute. |
getAttributeLabel() (opens new window) | Returns the text label for the specified attribute. |
getAttributes() (opens new window) | Returns attribute values. |
getBehavior() (opens new window) | Returns the named behavior object. |
getBehaviors() (opens new window) | Returns all behaviors attached to this component. |
getBillingIssueDescription() | Return a description of the billing issue (if any) with this subscription. |
getBillingIssueResolveFormHtml() | Return the form HTML for resolving the billing issue (if any) with this subscription. |
getCancelSubscriptionFormHtml() | Returns the cancel subscription form HTML |
getCancelSubscriptionFormModel() | Returns the cancel subscription form model |
getCpEditUrl() | |
getError() (opens new window) | Returns the first error of the specified attribute. |
getErrorSummary() (opens new window) | Returns the errors for all attributes as a one-dimensional array. |
getErrors() (opens new window) | Returns the errors for all attributes or a single attribute. |
getFirstError() (opens new window) | Returns the first error of the specified attribute. |
getFirstErrors() (opens new window) | Returns the first error of every attribute in the model. |
getHasBillingIssues() | Returns whether this subscription has billing issues. |
getIsNew() (opens new window) | Returns whether the component is new (unsaved). |
getIterator() (opens new window) | Returns an iterator for traversing the attributes in the model. |
getNextPaymentAmount() | Returns the next payment amount for a subscription, taking into account all discounts. |
getPaymentConfirmationFormHtml() | Returns the html to use when paying with a stored payment source. |
getPaymentFormHtml() | Returns payment Form HTML |
getPaymentFormModel() | Returns payment form model to use in payment forms. |
getPaymentTypeOptions() | Returns the payment type options. |
getPlanModel() | Returns the subscription plan model. |
getPlanSettingsHtml() | Returns the subscription plan settings HTML |
getScenario() (opens new window) | Returns the scenario that this model is used in. |
getSettings() (opens new window) | Returns an array of the component’s settings. |
getSettingsHtml() (opens new window) | Returns the component’s settings HTML. |
getSubscriptionFormModel() | Returns the subscription form model |
getSubscriptionPayments() | Returns a list of subscription payments for a given subscription. |
getSubscriptionPlanByReference() | Returns a subscription plan by its reference |
getSubscriptionPlans() | Returns all subscription plans as array containing hashes with reference and name as keys. |
getSwitchPlansFormHtml() | Returns the html form to use when switching between two plans |
getSwitchPlansFormModel() | Returns the form model used for switching plans. |
getTransactionHashFromWebhook() | Retrieves the transaction hash from the webhook data. This could be a query string param or part of the response data. |
getValidators() (opens new window) | Returns all the validators declared in rules() (opens new window). |
getWebhookUrl() | Returns the webhook url for this gateway. |
hasErrors() (opens new window) | Returns a value indicating whether there is any validation error. |
hasEventHandlers() (opens new window) | Returns a value indicating whether there is any handler attached to the named event. |
hasMethod() (opens new window) | Returns a value indicating whether a method is defined. |
hasProperty() (opens new window) | Returns a value indicating whether a property is defined. |
init() (opens new window) | Initializes the object. |
instance() (opens new window) | Returns static class instance, which can be used to obtain meta information. |
isAttributeActive() (opens new window) | Returns a value indicating whether the attribute is active in the current scenario. |
isAttributeRequired() (opens new window) | Returns a value indicating whether the attribute is required. |
isAttributeSafe() (opens new window) | Returns a value indicating whether the attribute is safe for massive assignments. |
isSelectable() (opens new window) | Returns whether the component should be selectable in component Type selects. |
load() (opens new window) | Populates the model with input data. |
loadMultiple() (opens new window) | Populates a set of models with the data from end user. |
off() (opens new window) | Detaches an existing event handler from this component. |
offsetExists() (opens new window) | Returns whether there is an element at the specified offset. |
offsetGet() (opens new window) | Returns the element at the specified offset. |
offsetSet() (opens new window) | Sets the element at the specified offset. |
offsetUnset() (opens new window) | Sets the element value at the specified offset to null. |
on() (opens new window) | Attaches an event handler to an event. |
onUnsafeAttribute() (opens new window) | This method is invoked when an unsafe attribute is being massively assigned. |
processWebHook() | Processes a webhook and return a response |
purchase() | Makes a purchase request. |
reactivateSubscription() | Reactivates a subscription. |
refreshPaymentHistory() | Refresh the subscription payment history for a given subscription. |
refund() | Makes an refund request. |
rules() | Returns the validation rules for attributes. |
safeAttributes() (opens new window) | Returns the attribute names that are safe to be massively assigned in the current scenario. |
scenarios() (opens new window) | Returns a list of scenarios and the corresponding active attributes. |
setAttributes() (opens new window) | Sets the attribute values in a massive way. |
setScenario() (opens new window) | Sets the scenario for the model. |
settingsAttributes() (opens new window) | Returns the list of settings attribute names. |
subscribe() | Subscribe user to a plan. |
supportsAuthorize() | Returns true if gateway supports authorize requests. |
supportsCapture() | Returns true if gateway supports capture requests. |
supportsCompleteAuthorize() | Returns true if gateway supports completing authorize requests |
supportsCompletePurchase() | Returns true if gateway supports completing purchase requests |
supportsPartialRefund() | Returns true if gateway supports partial refund requests. |
supportsPaymentSources() | Returns true if gateway supports payment sources |
supportsPlanSwitch() | Returns whether this gateway supports switching plans. |
supportsPurchase() | Returns true if gateway supports purchase requests. |
supportsReactivation() | Returns whether this gateway supports reactivating subscriptions. |
supportsRefund() | Returns true if gateway supports refund requests. |
supportsWebhooks() | Returns true if gateway supports webhooks. |
switchSubscriptionPlan() | Switch a subscription to a different subscription plan. |
toArray() (opens new window) | Converts the model into an array. |
trigger() (opens new window) | Triggers an event. |
validate() (opens new window) | Validates the component. |
validateMultiple() (opens new window) | Validates multiple models. |
# getCancelSubscriptionFormHtml()
Returns the cancel subscription form HTML
View source (opens new window)
Arguments
$subscription
(craft\commerce\elements\Subscription) – The subscription to cancel
Returns
# getCancelSubscriptionFormModel()
Returns the cancel subscription form model
View source (opens new window)
Returns
craft\commerce\models\subscriptions\CancelSubscriptionForm
# getPlanModel()
Returns the subscription plan model.
View source (opens new window)
Returns
# getPlanSettingsHtml()
Returns the subscription plan settings HTML
View source (opens new window)
Arguments
$params
(array (opens new window))
Returns
string (opens new window), null (opens new window)
# getSubscriptionFormModel()
Returns the subscription form model
View source (opens new window)
Returns
craft\commerce\models\subscriptions\SubscriptionForm
# getSwitchPlansFormHtml()
Returns the html form to use when switching between two plans
View source (opens new window)
Arguments
$originalPlan
(craft\commerce\base\PlanInterface)$targetPlan
(craft\commerce\base\PlanInterface)
Returns
# getSwitchPlansFormModel()
Returns the form model used for switching plans.
View source (opens new window)
Returns
craft\commerce\models\subscriptions\SwitchPlansForm
# reactivateSubscription()
Reactivates a subscription.
View source (opens new window)
Arguments
$subscription
(craft\commerce\elements\Subscription) – The canceled subscription to reactivate
Returns
craft\commerce\base\SubscriptionResponseInterface
Throws
# refreshPaymentHistory()
Refresh the subscription payment history for a given subscription.
View source (opens new window)
Arguments
$subscription
(craft\commerce\elements\Subscription)
# Protected Methods
Method | Description |
---|---|
defineRules() (opens new window) | Returns the validation rules for attributes. |
extractFieldsFor() (opens new window) | Extract nested fields from a fields collection for a given root field Nested fields are separated with dots (.). e.g: "item.id" The previous example would extract "id". |
extractRootFields() (opens new window) | Extracts the root field names from nested fields. |
resolveFields() (opens new window) | Determines which fields can be returned by toArray() (opens new window). |
# Constants
Constant | Description |
---|---|
SCENARIO_DEFAULT | The name of the default scenario. |