/** * Check the ESI flag and set the ESI header if needed * * Events: http_response_send_before * * @param Varien_Object $eventObject * @return null */ public function setFlagHeaders($eventObject) { $response = $eventObject->getResponse(); if (Mage::helper('turpentine/esi')->shouldResponseUseEsi()) { $response->setHeader('X-Turpentine-Esi', Mage::registry('turpentine_esi_flag') ? '1' : '0'); Mage::helper('turpentine/debug')->logDebug('Set ESI flag header to: %s', Mage::registry('turpentine_esi_flag') ? '1' : '0'); } }
/** * Replace the form key placeholder with the ESI include fragment * * @param Varien_Object $eventObject * @return null */ public function replaceFormKeyPlaceholder($eventObject) { if (Mage::registry('replace_form_key')) { $esiHelper = Mage::helper('turpentine/esi'); $response = $eventObject->getResponse(); $responseBody = $response->getBody(); $responseBody = str_replace('{{form_key_esi_placeholder}}', $esiHelper->buildEsiIncludeFragment($esiHelper->getFormKeyEsiUrl()), $responseBody); $response->setBody($responseBody); } }
/** * Should we save this method in the database? * * @param \Varien_Object $payment * @param $paymentPost * * @return mixed */ public function shouldSaveMethod($payment, $paymentPost) { $object = new Varien_Object(); $object->setResponse($this->isVaultEnabled() && isset($paymentPost['save_card']) && $paymentPost['save_card'] == 1); // Specific event for this method Mage::dispatchEvent('gene_braintree_creditcard_should_save_method', array('object' => $object, 'payment' => $payment)); // General event if we want to enforce saving of all payment methods Mage::dispatchEvent('gene_braintree_save_method', array('object' => $object, 'payment' => $payment)); return $object->getResponse(); }