class PaymentReferenceElement in Payment 8.2
Provides a form for testing the payment_reference element.
Hierarchy
- class \Drupal\payment_reference_test\PaymentReferenceElement implements FormInterface
Expanded class hierarchy of PaymentReferenceElement
1 string reference to 'PaymentReferenceElement'
- payment_reference_test.routing.yml in modules/
payment_reference_test/ payment_reference_test.routing.yml - modules/payment_reference_test/payment_reference_test.routing.yml
File
- modules/
payment_reference_test/ src/ PaymentReferenceElement.php, line 14
Namespace
Drupal\payment_reference_testView source
class PaymentReferenceElement implements FormInterface {
/**
* {@inheritdoc}
*/
public function getFormId() {
return 'payment_reference_test_payment_reference_element';
}
/**
* {@inheritdoc}
*/
public function buildForm(array $form, FormStateInterface $form_state) {
$key = 'payment_reference_element_prototype_payment';
if ($form_state
->has($key)) {
/** @var \Drupal\payment\Entity\PaymentInterface $prototype_payment */
$prototype_payment = $form_state
->get($key);
$payment_type = $prototype_payment
->getPaymentType();
}
else {
$entity_type_id = 'user';
$bundle = 'user';
$field_name = 'foobarbaz';
/** @var \Drupal\payment\Entity\PaymentInterface $prototype_payment */
$prototype_payment = Payment::create(array(
'bundle' => 'payment_reference',
));
$prototype_payment
->setCurrencyCode('EUR')
->setOwnerId(2)
->setLineItems(Generate::createPaymentLineItems());
/** @var \Drupal\payment_reference\Plugin\Payment\Type\PaymentReference $payment_type */
$payment_type = $prototype_payment
->getPaymentType();
$payment_type
->setEntityTypeId($entity_type_id);
$payment_type
->setBundle($bundle);
$payment_type
->setFieldName($field_name);
$form_state
->set($key, $prototype_payment);
}
$form['payment_reference'] = array(
'#plugin_selector_id' => 'payment_select_list',
'#prototype_payment' => $prototype_payment,
'#queue_category_id' => $payment_type
->getEntityTypeId() . '.' . $payment_type
->getBundle() . '.' . $payment_type
->getFieldName(),
'#queue_owner_id' => 2,
'#required' => TRUE,
'#title' => 'FooBarBaz',
'#type' => 'payment_reference',
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Submit'),
);
return $form;
}
/**
* {@inheritdoc}
*/
public function validateForm(array &$form, FormStateInterface $form_state) {
}
/**
* {@inheritdoc}
*/
public function submitForm(array &$form, FormStateInterface $form_state) {
$payment_id = $form['payment_reference']['#value'];
$acquisition_code = PaymentReference::queue()
->claimPayment($payment_id);
if ($acquisition_code && PaymentReference::queue()
->acquirePayment($payment_id, $acquisition_code)) {
\Drupal::state()
->set('payment_reference_test_payment_reference_element', $payment_id);
}
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
PaymentReferenceElement:: |
public | function |
Form constructor. Overrides FormInterface:: |
|
PaymentReferenceElement:: |
public | function |
Returns a unique string identifying the form. Overrides FormInterface:: |
|
PaymentReferenceElement:: |
public | function |
Form submission handler. Overrides FormInterface:: |
|
PaymentReferenceElement:: |
public | function |
Form validation handler. Overrides FormInterface:: |