feat(02-purchase-event-prepayment): move purchase event to przelewy24 pre-payment page
Phase 2 complete: - buildPurchaseDataLayer() called in przelewy24() controller, payload passed to template - dataLayer.push added to templates/tickets/przelewy24.php (fires at order commitment) - dataLayer.push removed from templates/tickets/order-confirm.php - Captures 100% of orders regardless of user returning from payment gateway Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -650,11 +650,14 @@ class Tickets
|
||||
$przelewy24_hash = md5(time());
|
||||
$mdb->update('orders', ['payment_hash' => $przelewy24_hash], ['id' => $order['id']]);
|
||||
|
||||
$purchaseDataLayer = self::buildPurchaseDataLayer($order);
|
||||
|
||||
return \Tpl::view('tickets/przelewy24', [
|
||||
'settings' => $settings,
|
||||
'hash' => \S::get('order'),
|
||||
'order' => $order,
|
||||
'przelewy24_hash' => $przelewy24_hash
|
||||
'przelewy24_hash' => $przelewy24_hash,
|
||||
'purchase_data_layer' => $purchaseDataLayer
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -847,14 +850,12 @@ class Tickets
|
||||
$order = \factory\Tickets::get_order_details_by_hash(\S::get('order'));
|
||||
$order_successful = false;
|
||||
$order_fail = false;
|
||||
$purchaseDataLayer = null;
|
||||
|
||||
if ( $order && !empty($order['payment_status']) && empty($order['informed_user']) )
|
||||
{
|
||||
if ($order['payment_status'])
|
||||
{
|
||||
$order_successful = true;
|
||||
$purchaseDataLayer = self::buildPurchaseDataLayer($order);
|
||||
$mailSent = self::sendPaidOrderSummaryEmail($order);
|
||||
if ($mailSent) {
|
||||
$mdb->update('orders', ['informed_user' => 1], ['id' => $order['id']]);
|
||||
@@ -871,7 +872,7 @@ class Tickets
|
||||
'order' => $order,
|
||||
'order_successful' => $order_successful,
|
||||
'order_fail' => $order_fail,
|
||||
'purchase_data_layer' => $purchaseDataLayer
|
||||
'purchase_data_layer' => null
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user