arch-8.x-1.x-dev/modules/checkout/arch_checkout.module
modules/checkout/arch_checkout.module
<?php
/**
* @file
* ARCH Checkout module file.
*/
use Drupal\Core\Template\Attribute;
/**
* Implements hook_theme().
*/
function arch_checkout_theme() {
return [
'arch_checkout_complete' => [
'variables' => [
'order' => NULL,
'message' => NULL,
'message_extra' => NULL,
'checkout_complete_info' => NULL,
],
],
];
}
/**
* Preprocess arch checkout summary theme.
*
* @param array $variables
* Variables array.
*/
function template_preprocess_arch_checkout_complete(array &$variables) {
/** @var \Drupal\arch_order\Entity\OrderInterface $order */
$order =& $variables['order'];
$variables['attributes'] = new Attribute($variables['attributes']);
$variables['attributes']->addClass('checkout-complete-message');
$variables['#cache']['max-age'] = 0;
$variables['#cache']['contexts'][] = 'user';
$variables['#cache']['contexts'][] = 'session';
$variables['#cache']['tags'] = $order->getCacheTags();
}
/**
* Implements hook_preprocess_HOOK() for HTML document templates.
*/
function arch_checkout_preprocess_html(&$variables) {
if (\Drupal::routeMatch()->getRouteName() === 'arch_checkout.complete') {
$variables['attributes']['class'][] = 'path-checkout-complete';
}
}
