PHP 7.4.33
Preview: Subscription.php Size: 4.06 KB
/home/godevadmin/www/admin/braintree/final/braintree_php-master/lib/Braintree/Subscription.php

<?php
namespace Braintree;

/**
 * Braintree Subscription module
 *
 * <b>== More information ==</b>
 *
 * For more detailed information on Subscriptions, see {@link http://www.braintreepayments.com/gateway/subscription-api http://www.braintreepaymentsolutions.com/gateway/subscription-api}
 *
 * PHP Version 5
 *
 * @package   Braintree
 * @copyright 2015 Braintree, a division of PayPal, Inc.
 */
class Subscription extends Base
{
    const ACTIVE = 'Active';
    const CANCELED = 'Canceled';
    const EXPIRED = 'Expired';
    const PAST_DUE = 'Past Due';
    const PENDING = 'Pending';

    // Subscription Sources
    const API           = 'api';
    const CONTROL_PANEL = 'control_panel';
    const RECURRING     = 'recurring';

    /**
     * @ignore
     */
    public static function factory($attributes)
    {
        $instance = new self();
        $instance->_initialize($attributes);

        return $instance;
    }

    /**
     * @ignore
     */
    protected function _initialize($attributes)
    {
        $this->_attributes = $attributes;

        $addOnArray = [];
        if (isset($attributes['addOns'])) {
            foreach ($attributes['addOns'] AS $addOn) {
                $addOnArray[] = AddOn::factory($addOn);
            }
        }
        $this->_attributes['addOns'] = $addOnArray;

        $discountArray = [];
        if (isset($attributes['discounts'])) {
            foreach ($attributes['discounts'] AS $discount) {
                $discountArray[] = Discount::factory($discount);
            }
        }
        $this->_attributes['discounts'] = $discountArray;

        if (isset($attributes['descriptor'])) {
            $this->_set('descriptor', new Descriptor($attributes['descriptor']));
        }

        $statusHistory = [];
        if (isset($attributes['statusHistory'])) {
            foreach ($attributes['statusHistory'] AS $history) {
                $statusHistory[] = new Subscription\StatusDetails($history);
            }
        }
        $this->_attributes['statusHistory'] = $statusHistory;

        $transactionArray = [];
        if (isset($attributes['transactions'])) {
            foreach ($attributes['transactions'] AS $transaction) {
                $transactionArray[] = Transaction::factory($transaction);
            }
        }
        $this->_attributes['transactions'] = $transactionArray;
    }

    /**
     * returns a string representation of the customer
     * @return string
     */
    public function  __toString()
    {
        $excludedAttributes = ['statusHistory'];

        $displayAttributes = [];
        foreach($this->_attributes as $key => $val) {
            if (!in_array($key, $excludedAttributes)) {
                $displayAttributes[$key] = $val;
            }
        }

        return __CLASS__ . '[' .
                Util::attributesToString($displayAttributes) .']';
    }


    // static methods redirecting to gateway

    public static function create($attributes)
    {
        return Configuration::gateway()->subscription()->create($attributes);
    }

    public static function find($id)
    {
        return Configuration::gateway()->subscription()->find($id);
    }

    public static function search($query)
    {
        return Configuration::gateway()->subscription()->search($query);
    }

    public static function fetch($query, $ids)
    {
        return Configuration::gateway()->subscription()->fetch($query, $ids);
    }

    public static function update($subscriptionId, $attributes)
    {
        return Configuration::gateway()->subscription()->update($subscriptionId, $attributes);
    }

    public static function retryCharge($subscriptionId, $amount = null)
    {
        return Configuration::gateway()->subscription()->retryCharge($subscriptionId, $amount);
    }

    public static function cancel($subscriptionId)
    {
        return Configuration::gateway()->subscription()->cancel($subscriptionId);
    }
}
class_alias('Braintree\Subscription', 'Braintree_Subscription');

Directory Contents

Dirs: 9 × Files: 89

Name Size Perms Modified Actions
Dispute DIR
- drwxrwxr-x 2023-11-07 19:59:46
Edit Download
Error DIR
- drwxrwxr-x 2023-11-07 19:59:46
Edit Download
Exception DIR
- drwxrwxr-x 2023-11-07 19:59:46
Edit Download
- drwxrwxr-x 2023-11-07 19:59:46
Edit Download
Result DIR
- drwxrwxr-x 2023-11-07 19:59:46
Edit Download
- drwxrwxr-x 2023-11-07 19:59:46
Edit Download
Test DIR
- drwxrwxr-x 2023-11-07 19:59:46
Edit Download
- drwxrwxr-x 2023-11-07 19:59:46
Edit Download
Xml DIR
- drwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.12 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.42 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
579 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1005 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
4.10 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
9.22 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.38 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.65 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.79 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.69 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.17 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
3.38 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.88 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
3.46 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
15.30 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
4.33 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
9.73 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
15.39 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.34 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.32 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.52 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
11.98 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
19.88 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.64 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
134 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.69 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.45 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
752 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
462 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
775 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.59 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
259 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.78 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
303 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
696 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
3.65 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
6.49 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.90 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
431 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
432 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
988 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.17 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
5.80 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.34 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
553 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
946 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.01 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
839 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
4.00 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
818 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.61 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
691 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
430 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1009 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
564 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.12 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
11.11 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.42 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.70 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.81 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
5.34 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.33 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
854 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
822 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
3.54 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
655 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.11 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.88 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
486 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
4.06 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
7.20 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.60 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.46 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
269 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
690 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
19.16 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
17.70 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
7.79 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
3.13 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
9.12 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
1.71 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.57 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
3.05 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
14.96 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
2.01 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
688 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
5.46 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
13.65 KB lrwxrwxr-x 2023-11-07 19:59:46
Edit Download
760 B lrwxrwxr-x 2023-11-07 19:59:46
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).