You are here

public function PaymentMethodController::performOperation in Ubercart 8.4

Performs an operation on the payment method entity.

Parameters

\Drupal\uc_payment\PaymentMethodInterface $uc_payment_method: The payment method entity.

string $op: The operation to perform, usually 'enable' or 'disable'.

Return value

\Symfony\Component\HttpFoundation\RedirectResponse A redirect back to the payment method listing page.

1 string reference to 'PaymentMethodController::performOperation'
uc_payment.routing.yml in payment/uc_payment/uc_payment.routing.yml
payment/uc_payment/uc_payment.routing.yml

File

payment/uc_payment/src/Controller/PaymentMethodController.php, line 39

Class

PaymentMethodController
Route controller for payment methods.

Namespace

Drupal\uc_payment\Controller

Code

public function performOperation(PaymentMethodInterface $uc_payment_method, $op) {
  $uc_payment_method
    ->{$op}()
    ->save();
  if ($op == 'enable') {
    $this
      ->messenger()
      ->addMessage($this
      ->t('The %label payment method has been enabled.', [
      '%label' => $uc_payment_method
        ->label(),
    ]));
  }
  elseif ($op == 'disable') {
    $this
      ->messenger()
      ->addMessage($this
      ->t('The %label payment method has been disabled.', [
      '%label' => $uc_payment_method
        ->label(),
    ]));
  }
  $url = $uc_payment_method
    ->toUrl('collection');
  return $this
    ->redirect($url
    ->getRouteName(), $url
    ->getRouteParameters(), $url
    ->getOptions());
}