Skip to content

Instantly share code, notes, and snippets.

View ger86's full-sized avatar
๐Ÿ 
Working from home

Gerardo Fernรกndez Moreno ger86

๐Ÿ 
Working from home
View GitHub Profile
<?php
namespace App\Service\Api;
use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\HttpFoundation\Session\SessionInterface;
use GuzzleHttp\Client;
use GuzzleHttp\Cookie\CookieJar;
use GuzzleHttp\Exception\RequestException as GuzzleRequestException;
use App\Model\Exception\RequestException;
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use App\Model\DTO\StripeProcessSubscriptionDTO;
use App\Service\StripeProcessSubscription;
<?php
namespace App\Service
use App\Model\DTO\StripeProcessSubscriptionDTO;
use App\Repository\StripePlanRepository;
use App\Service\StripeCreateCustomer;
use App\Service\StripeCreateSubscription;
final class StripeProcessSubscription {
<?php
namespace App\Service;
use Stripe\Stripe;
use Stripe\Subscription;
final class StripeCreateSubscription {
/**
<?php
namespace App\Service;
use Stripe\Stripe;
use Stripe\Customer;
final class StripeCreateCustomer {
/**
@ger86
ger86 / stripe_choose_subscription.html.twig
Last active March 7, 2019 10:43
stripe_choose_subscription.html.twig
{% extends 'base.html.twig' %}
{% block body %}
{% for stripePlan in stripePlans %}
<div>
<form action="{{ path('stripe_subscription_process') }}" method="POST">
<script
src="https://checkout.stripe.com/checkout.js" class="stripe-button"
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use App\Repository\StripePlanRepository;
class ChooseSubscriptionController extends AbstractController {
stripe_choose_subscription:
path: /u/stripe/choose-subscription
controller: App\Controller\ChooseSubscriptionController
stripe_process_subscription:
path: /u/stripe/process-subscription
controller: App\Controller\ProcessSubscriptionController
<?php
namespace App\Service;
final class StripeUtils {
/**
* Converts an amount in format 20.123 to string 2012
*
* @param float $amount
<?php
namespace App\Model\DTO;
class StripeCreatePlanDTO {
private $currency;
private $interval;
private $amount;
private $productId;