You are here

public function SelectPaymentMethodConfiguration::execute in Payment 8.2

Displays a list of available payment method plugins.

Return value

string

1 string reference to 'SelectPaymentMethodConfiguration::execute'
payment.routing.yml in ./payment.routing.yml
payment.routing.yml

File

src/Controller/SelectPaymentMethodConfiguration.php, line 60

Class

SelectPaymentMethodConfiguration
Handles the "select a payment method configuration to add" route.

Namespace

Drupal\payment\Controller

Code

public function execute() {
  $definitions = $this->paymentMethodConfigurationManager
    ->getDefinitions();
  unset($definitions['payment_unavailable']);
  $items = [];
  foreach ($definitions as $plugin_id => $definition) {
    $access = $this->paymentMethodConfigurationAccessControlHandler
      ->createAccess($plugin_id);
    if ($access) {
      $items[] = [
        'title' => $definition['label'],
        'description' => $definition['description'],
        'localized_options' => [],
        'url' => new Url('payment.payment_method_configuration.add', [
          'plugin_id' => $plugin_id,
        ]),
      ];
    }
  }
  return [
    '#theme' => 'admin_block_content',
    '#content' => $items,
  ];
}