vendor/paymentsuite/paymentsuite/src/PaymentSuite/RedsysBundle/DependencyInjection/Configuration.php line 39

Open in your IDE?
  1. <?php
  2. /*
  3.  * This file is part of the PaymentSuite package.
  4.  *
  5.  * Copyright (c) 2013-2016 Marc Morera
  6.  *
  7.  * For the full copyright and license information, please view the LICENSE
  8.  * file that was distributed with this source code.
  9.  *
  10.  * Feel free to edit as you please, and have fun.
  11.  *
  12.  * @author Marc Morera <yuhu@mmoreram.com>
  13.  */
  14. namespace PaymentSuite\RedsysBundle\DependencyInjection;
  15. use Symfony\Component\Config\Definition\Builder\TreeBuilder;
  16. use PaymentSuite\PaymentCoreBundle\DependencyInjection\Abstracts\AbstractPaymentSuiteConfiguration;
  17. /**
  18.  * This is the class that validates and merges configuration from your app/config files.
  19.  *
  20.  * To learn more see {@link http://symfony.com/doc/current/cookbook/bundles/extension.html#cookbook-bundles-extension-config-class}
  21.  */
  22. class Configuration extends AbstractPaymentSuiteConfiguration
  23. {
  24.     const GATEWAY_TERMINAL '001';
  25.     const GATEWAY_URL 'https://sis.redsys.es/sis/realizarPago';
  26.     /**
  27.      * {@inheritdoc}
  28.      */
  29.     public function getConfigTreeBuilder()
  30.     {
  31.         $treeBuilder = new TreeBuilder();
  32.         $rootNode $treeBuilder->root('redsys');
  33.         $rootNode
  34.             ->children()
  35.                 ->scalarNode('merchant_code')
  36.                     ->isRequired()
  37.                     ->cannotBeEmpty()
  38.                 ->end()
  39.                 ->scalarNode('secret_key')
  40.                     ->isRequired()
  41.                     ->cannotBeEmpty()
  42.                 ->end()
  43.                 ->scalarNode('terminal')
  44.                     ->defaultValue(self::GATEWAY_TERMINAL)
  45.                     ->cannotBeEmpty()
  46.                 ->end()
  47.                 ->scalarNode('url')
  48.                     ->defaultValue(self::GATEWAY_URL)
  49.                 ->end()
  50.                 ->append($this->addRouteConfiguration('payment_success'))
  51.                 ->append($this->addRouteConfiguration('payment_failure'))
  52.             ->end();
  53.         $this->addSettingsProviderConfiguration($rootNode);
  54.         return $treeBuilder;
  55.     }
  56.     /**
  57.      * {@inheritdoc}
  58.      */
  59.     protected function setDefaultSettings(array $config): array
  60.     {
  61.         $config['merchant_code'] = '999888777';
  62.         $config['secret_key'] = 'dummy-key';
  63.         $config['terminal'] = self::GATEWAY_TERMINAL;
  64.         return $config;
  65.     }
  66. }