示例#1
0
 public function hookToOrderSaveEvent()
 {
     $order = new Mage_Sales_Model_Order();
     $incrementId = Mage::getSingleton('checkout/session')->getLastRealOrderId();
     $order->loadByIncrementId($incrementId);
     //Fetch the data from select box and throw it here
     $_heared4us_data = null;
     $_heared4us_data = Mage::getSingleton('core/session')->getInchooHeared4us();
     //Save fhc id to order obcject
     $order->setData(self::ORDER_ATTRIBUTE_FHC_ID, $_heared4us_data);
     $order->setData("affiliate_sale_type", $_heared4us_data);
     $order->save();
     $write = Mage::getSingleton('core/resource')->getConnection('core_write');
     $sql = "UPDATE sales_flat_order_grid SET affiliate_sale_type = {$_heared4us_data} WHERE entity_id = '{$order->getEntityId()}'";
     $write->query($sql);
     if ($_heared4us_data != 3) {
         $entity = $order->getEntityId();
         $customer_id = $order->getCustomerId();
         $expired = Mage::getModel('affiliate/affiliateexpired')->load($customer_id)->getData();
         $historic = '[{"order":"' . $entity . '"}]';
         $today = date("Y-m-d 23:59:59");
         $expired_date = new DateTime($today);
         $interval = new DateInterval('P1M');
         $expired_date->add($interval);
         $final = $expired_date->format('Y-m-d h:i:s');
         $write = Mage::getSingleton('core/resource')->getConnection('core_write');
         if ($expired) {
             $sql = "UPDATE mw_affiliate_expired SET historic='{$historic}',  expired_package = '{$final}' WHERE customer_id = '{$customer_id}'";
         } else {
             $sql = "INSERT INTO mw_affiliate_expired VALUES({$customer_id}, '{$final}', NULL, '{$historic}')";
         }
         $write->query($sql);
     }
 }
 public function collect(Mage_Sales_Model_Order $order)
 {
     $order->setData('zitec_dpd_cashondelivery_surcharge', 0);
     $order->setData('base_zitec_dpd_cashondelivery_surcharge', 0);
     $amount = $order->getOrder()->getData('zitec_dpd_cashondelivery_surcharge');
     $order->setData('zitec_dpd_cashondelivery_surcharge', $amount);
     $amount = $order->getOrder()->getData('base_zitec_dpd_cashondelivery_surcharge');
     $order->setData('base_zitec_dpd_cashondelivery_surcharge', $amount);
     $order->setGrandTotal($order->getGrandTotal() + $order->getData('zitec_dpd_cashondelivery_surcharge'));
     $order->setBaseGrandTotal($order->getBaseGrandTotal() + $order->getData('base_zitec_dpd_cashondelivery_surcharge'));
     return $this;
 }
示例#3
0
 public function saveDeliveryForOrder(Mage_Sales_Model_Order $order)
 {
     if ($deliveryData = Mage::app()->getRequest()->getPost('adj')) {
         if (is_array($deliveryData)) {
             // fix for delivery time
             if (Mage::getStoreConfig('checkout/adjdeliverydate/show_time') and !empty($deliveryData['delivery_date']) and !empty($deliveryData['delivery_time'])) {
                 $deliveryData['delivery_date'] .= ' ' . implode(':', $deliveryData['delivery_time']);
                 unset($deliveryData['delivery_time']);
             }
             $deliveryData['delivery_date'] = Mage::helper('adjdeliverydate')->convertDate($deliveryData['delivery_date']);
             foreach ($deliveryData as $name => $value) {
                 $order->setData($name, $value);
                 $order->setData($name . '_is_formated', true);
             }
             $order->save();
         }
     }
 }
示例#4
0
 /**
  * @param Mage_Sales_Model_Order $order
  */
 protected function _enqueueOrder($order)
 {
     $order->setData('do_export_to_alvine', 1);
     $order->getResource()->saveAttribute($order, 'do_export_to_alvine');
     // Add Customer Source to Order if Exist
     if (array_key_exists('sxx_partner', $_COOKIE) && $_COOKIE['sxx_partner'] != "") {
         $partner = $_COOKIE['sxx_partner'];
         $order->setCustomerSource($partner);
         $order->getResource()->saveAttribute($order, "customer_source");
     }
 }
示例#5
0
 public function submitOrder($force = false)
 {
     if (!$this->_order) {
         return false;
     }
     /** @var Payin7_Payments_Helper_Data $phelper */
     $phelper = Mage::helper('payin7payments');
     $logger = $phelper->getLogger();
     $logger->logInfo('Will submit payment to Payin7, ID: ' . $this->_order->getId());
     $already_sent = $this->getPayin7IsOrderSent();
     // check if already submitted
     if ($already_sent && !$force) {
         $logger->logWarn('Payment already submitted - not doing anything');
         return $this->getPayin7OrderIdentifier();
     }
     $payment = $this->_order->getPayment();
     $payment_method = $payment->getMethod();
     $payment_method_remote_code = $phelper->getPaymentMethodRemoteCode($payment_method);
     if (!$payment_method_remote_code) {
         return false;
     }
     // begin submitting
     $data = array('order_id' => $this->_order->getId(), 'payment_method' => $payment_method_remote_code, 'device_type' => $this->_device_type, 'ordered_by_ip_address' => $this->_ordered_by_ip_address, 'source' => $this->_source, 'order' => json_encode($this->_prepareOrderData()), 'items' => json_encode($this->_prepareOrderItems()), 'addresses' => json_encode($this->_prepareOrderAddresses()), 'customer' => json_encode($this->_prepareCustomerData()), 'sysinfo' => json_encode($this->_sysinfo));
     $logger->logInfo(($already_sent ? 'RE-' : null) . 'Submitting order to Payin7: ' . print_r(array('order_id' => $this->_order->getId(), 'payment_method' => $payment_method_remote_code), true));
     /** @var Payin7_Payments_Model_Remote_Client $client */
     $client = Mage::getModel('payin7payments/remote_client');
     $response = $client->postOrder($data);
     if (!$response['payin7_order_id']) {
         return false;
     }
     // update the order
     $this->_order->setData('payin7_order_identifier', $response['payin7_order_id']);
     $this->_order->setData('payin7_order_sent', true);
     $this->_order->setData('payin7_order_accepted', (bool) $response['is_accepted']);
     $this->_order->setData('payin7_access_token', $response['access_token']);
     $logger->logInfo('Payment ' . ($already_sent ? 're' : null) . 'submitted to Payin7, ID: ' . $this->_order->getId() . ', data: ' . print_r($response, true));
     if (!$already_sent) {
         $message = Mage::helper('payin7payments')->__('Order submitted to Payin7');
         $payment->addTransaction(Mage_Sales_Model_Order_Payment_Transaction::TYPE_ORDER, null, false, $message);
     }
     return $this->getPayin7OrderIdentifier();
 }
示例#6
0
 public function saveOrderPrescriptionExemption(Varien_Event_Observer $observer)
 {
     $exemption = Mage::getSingleton("core/session")->getPrescriptionExemptionCheck();
     if ($exemption > 0) {
         $exemptions = Mage::getResourceModel('prescriptioncheckout/prescription_collection');
         foreach ($exemptions as $ex) {
             if ($ex->getID() == $exemption) {
                 $exemptionText = '<b>' . $ex->getTitle() . '</b>: ' . $ex->getDescriptions();
             }
         }
         $orderIds = $observer->getData('order_ids');
         foreach ($orderIds as $orderId) {
             $order = new Mage_Sales_Model_Order();
             $order->load($orderId);
             $order->setData('prescription_exemption', $exemptionText);
             $order->save();
         }
         Mage::getSingleton('core/session')->getPrescriptionExemptionCheck('');
     }
 }
示例#7
0
 /**
  * WTF DOES THIS NEED TO BE PRIVATE?? ASK THE XTENTO DEVELOPERS
  *
  * @param Mage_Sales_Model_Order    $order
  * @param string                    $newOrderStatus
  */
 protected function _setOrderState(Mage_Sales_Model_Order $order, $newOrderStatus)
 {
     if (Mage::getStoreConfig('gridactions/general/force_status_change')) {
         return;
     }
     if (Mage::helper('xtcore/utils')->mageVersionCompare(Mage::getVersion(), '1.5.0.0', '>=')) {
         if (!isset($this->_orderStates)) {
             $this->_orderStates = Mage::getModel('sales/order_config')->getStates();
         }
         foreach ($this->_orderStates as $state => $label) {
             foreach (Mage::getModel('sales/order_config')->getStateStatuses($state, false) as $status) {
                 if ($status == $newOrderStatus) {
                     $order->setData('state', $state);
                     return;
                 }
             }
         }
     }
 }
 public function rollback(Mage_Sales_Model_Order $order)
 {
     $order->setData($this->getDataKey(), $this->getFrom());
     return $this;
 }
 /**
  * @param Mage_Sales_Model_Order $order
  * @return boolean
  */
 public function _useFixedCurrency($order)
 {
     try {
         $useFixedCurrency = Mage::getStoreConfig(self::CONFIG_PATH_CURRENCY_CHECKOUT_USE_FIXED_CURRENCY);
         if (!$useFixedCurrency) {
             return false;
         }
         $fixedCurrencyCode = Mage::getStoreConfig(self::CONFIG_PATH_CURRENCY_CHECKOUT_FIXED_CURRENCY);
         $baseCurrencyCode = Mage::app()->getStore()->getBaseCurrencyCode();
         $baseCurrency = Mage::getModel('directory/currency')->load($baseCurrencyCode);
         $fixedCurrency = Mage::getModel('directory/currency')->load($fixedCurrencyCode);
         $imagecc_preserved_information = array('order_fields' => array(), 'item_fields' => array());
         $_coreHelper = Mage::helper('core');
         Mage::helper('imagecc')->log("Using fixed currency " . $order->getIncrementId());
         foreach ($this->_orderFields as $field) {
             $field2 = preg_replace('(^base_)', '', $field);
             $new_v = $order->getData($field);
             $new_v = $baseCurrency->convert($new_v, $fixedCurrency);
             $new_v2 = $new_v;
             /**
              * preserve information before change it
              */
             if ($field != $field2) {
                 $imagecc_preserved_information['order_fields'][] = array('field' => $field, 'original_value' => $order->getData($field), 'new_value' => $new_v);
                 $imagecc_preserved_information['order_fields'][] = array('field' => $field2, 'original_value' => $order->getData($field2), 'new_value' => $new_v2);
             }
             $order->setData($field, $new_v);
             $order->setData($field2, $new_v2);
             Mage::helper('imagecc')->log("{$field2} {$field} {$new_v}");
         }
         foreach ($order->getAllItems() as $item) {
             $arr = $this->_itemFields;
             $quoteItemId = $item->getData('quote_item_id');
             $imagecc_preserved_information['item_fields'][$quoteItemId] = array();
             foreach ($arr as $k) {
                 //$v = $item->getData($k);
                 //$new_v = $_coreHelper->currency($v, false, false);
                 $field2 = preg_replace('(^base_)', '', $k);
                 $new_v = $item->getData($k);
                 $new_v = $baseCurrency->convert($new_v, $fixedCurrency);
                 $new_v2 = $item->getData($field2);
                 $new_v2 = $new_v;
                 /**
                  * preserve information before change it
                  */
                 if ($k != $field2) {
                     $imagecc_preserved_information['item_fields'][$quoteItemId][] = array('field' => $k, 'original_value' => $item->getData($k), 'new_value' => $new_v);
                     $imagecc_preserved_information['item_fields'][$quoteItemId][] = array('field' => $field2, 'original_value' => $item->getData($field2), 'new_value' => $new_v2);
                 }
                 $item->setData($k, $new_v);
                 $item->setData($field2, $new_v2);
                 Mage::helper('imagecc')->log("{$field2} {$k} {$new_v}");
             }
             //$item->save();
         }
         $store_currency = $fixedCurrencyCode;
         /**
          * preserve information before change it
          */
         $imagecc_preserved_information['order_fields']['order_currency_code'] = array('original_value' => $order->getData('order_currency_code'), 'field' => 'order_currency_code', 'new_value' => $store_currency);
         $imagecc_preserved_information['order_fields']['global_currency_code'] = array('original_value' => $order->getData('global_currency_code'), 'field' => 'global_currency_code', 'new_value' => $store_currency);
         $imagecc_preserved_information['order_fields']['base_currency_code'] = array('original_value' => $order->getData('base_currency_code'), 'field' => 'base_currency_code', 'new_value' => $store_currency);
         $imagecc_preserved_information['order_fields']['store_currency_code'] = array('original_value' => $order->getData('store_currency_code'), 'field' => 'store_currency_code', 'new_value' => $store_currency);
         $order->setData('order_currency_code', $store_currency)->setData('global_currency_code', $store_currency)->setData('base_currency_code', $store_currency)->setData('store_currency_code', $store_currency)->setData('imagecc_preserved_information', json_encode($imagecc_preserved_information));
         return true;
     } catch (Exception $e) {
         Mage::helper('imagecc')->log("error during fixed currency " . $e->getMessage());
     }
     return false;
 }
示例#10
0
 /**
  * @param Mage_Sales_Model_Order $order
  */
 protected function updateOrder(Mage_Sales_Model_Order $order)
 {
     if ($this->getPaymentMethod() instanceof Payone_Core_Model_Payment_Method_Creditcard) {
         $order->setData('payone_payment_method_type', $this->getPayment()->getData('cc_type'));
     } elseif ($this->getPaymentMethod() instanceof Payone_Core_Model_Payment_Method_OnlineBankTransfer) {
         $order->setData('payone_payment_method_type', $this->getPayment()->getData('payone_onlinebanktransfer_type'));
     } elseif ($this->getPaymentMethod() instanceof Payone_Core_Model_Payment_Method_Financing) {
         $order->setData('payone_payment_method_type', $this->getPayment()->getData('payone_financing_type'));
     } elseif ($this->getPaymentMethod() instanceof Payone_Core_Model_Payment_Method_SafeInvoice) {
         $order->setData('payone_payment_method_type', $this->getPayment()->getData('payone_safe_invoice_type'));
     }
 }
示例#11
0
 /**
  * Given a model and id load the information from the database into this model
  *
  * @param Mage_Sales_Model_Order|Mage_Sales_Model_Quote $oObject
  * @param Sitewards_DeliveryDate_Model_Quote|Sitewards_DeliveryDate_Model_Order $oModel
  */
 protected function addInformationToObject($oObject, $oModel)
 {
     $aData = $oModel->getByObject($oObject->getId());
     foreach ($aData as $sKey => $sValue) {
         $oObject->setData($sKey, $sValue);
     }
 }
 public function firstStep($payDataComercio, $payDataOperacion)
 {
     $order = new Mage_Sales_Model_Order();
     $order->loadByIncrementId($payDataOperacion['OPERATIONID']);
     try {
         require_once Mage::getBaseDir('lib') . '/metododepago2/TodoPago.php';
         $http_header = $this->get_http_header();
         $wsdl = $this->get_wsdls();
         $end_point = $this->get_end_point();
         $todopago_connector = new TodoPago($http_header, $wsdl, $end_point);
         Mage::log("Modulo de pago - TodoPago ==> payDataComercio --> " . json_encode($payDataComercio));
         Mage::log("Modulo de pago - TodoPago ==> payDataOperacion --> " . json_encode($payDataOperacion));
         $first_step = $todopago_connector->sendAuthorizeRequest($payDataComercio, $payDataOperacion);
         Mage::log("Modulo de pago - TodoPago ==> respuesta de sendAuthorizeRequest -->" . json_encode($first_step));
         $order->setData('todopagoclave', $first_step['RequestKey']);
         $order->save();
         $todopagotable = new Todopago_Modulodepago2_Model_Todopagotable();
         $todopagotable->setOrderId($payDataOperacion['OPERATIONID']);
         $todopagotable->setRequestKey($first_step['RequestKey']);
         $todopagotable->setSendauthorizeanswerStatus(Mage::getModel('core/date')->date('Y-m-d H:i:s') . " - " . $first_step["StatusCode"] . " - " . $first_step['StatusMessage']);
         $todopagotable->save();
         if ($first_step["StatusCode"] == -1) {
             if (Mage::getStoreConfig('payment/modulodepago2/modo_test_prod') == "test") {
                 $order->setStatus('test_todopago_processing');
                 $order->addStatusHistoryComment("Todo Pago (TEST): " . $first_step['StatusMessage']);
             } else {
                 $order->setStatus(Mage::getStoreConfig('payment/todopago_avanzada/order_status'));
                 $order->addStatusHistoryComment("Todo Pago: " . $first_step['StatusMessage']);
             }
             $order->save();
             Mage::log("Modulo de pago - TodoPago ==> redirige a: " . $first_step['URL_Request']);
             $this->_redirectUrl($first_step['URL_Request']);
         } else {
             if (Mage::getStoreConfig('payment/modulodepago2/modo_test_prod') == "test") {
                 $order->setStatus('test_todopago_canceled');
                 $order->addStatusHistoryComment("Todo Pago (TEST): " . $first_step['StatusMessage']);
             } else {
                 $order->setStatus(Mage::getStoreConfig('payment/todopago_avanzada/estado_denegada'));
                 $order->addStatusHistoryComment("Todo Pago: " . $first_step['StatusMessage']);
             }
             $order->save();
             Mage::log("Modulo de pago - TodoPago ==> redirige a: checkout/onepage/failure");
             Mage_Core_Controller_Varien_Action::_redirect('checkout/onepage/failure', array('_secure' => true));
         }
     } catch (Exception $e) {
         Mage::log("Modulo de pago - TodoPago ==> Exception: " . $e);
         if (Mage::getStoreConfig('payment/modulodepago2/modo_test_prod') == "test") {
             $order->setStatus('test_todopago_canceled');
             $order->addStatusHistoryComment("Todo Pago (TEST)(Exception): " . $e);
         } else {
             $order->setStatus(Mage::getStoreConfig('payment/todopago_avanzada/estado_denegada'));
             $order->addStatusHistoryComment("Todo Pago (Exception): " . $e);
         }
         $order->save();
         Mage::log("Modulo de pago - TodoPago ==> redirige a: checkout/onepage/failure");
         Mage_Core_Controller_Varien_Action::_redirect('checkout/onepage/failure', array('_secure' => true));
     }
 }
 /**
  * Saves the Order, to complete the full life-cycle of the Order
  * Order status will now show as Complete
  *
  * @param $order Mage_Sales_Model_Order
  */
 protected function _saveOrder(\Mage_Sales_Model_Order $order)
 {
     $order->setData('state', \Mage_Sales_Model_Order::STATE_COMPLETE);
     $order->setData('status', \Mage_Sales_Model_Order::STATE_COMPLETE);
     $order->save();
     return $this;
 }
示例#14
0
 /** Saves the Order, to complete the full life-cycle of the Order
  * Order status will now show as Complete
  * @param $order Mage_Sales_Model_Order
  */
 protected function _saveOrder(Mage_Sales_Model_Order $order)
 {
     $totalQtyOrdered = (double) $order->getTotalQtyOrdered();
     $qtyShipped = '';
     foreach ($order->getAllItems() as $_eachItem) {
         $qtyShipped += (double) $_eachItem->getQtyShipped();
     }
     if ($qtyShipped < $totalQtyOrdered) {
         $order->setData('state', Mage_Sales_Model_Order::STATE_PROCESSING);
         $order->setData('status', Mage_Sales_Model_Order::STATE_PROCESSING);
     } else {
         $order->setData('state', Mage_Sales_Model_Order::STATE_COMPLETE);
         $order->setData('status', Mage_Sales_Model_Order::STATE_COMPLETE);
     }
     $order->save();
     return $this;
 }
示例#15
0
 /**
  * @param Mage_Sales_Model_Order $order
  * @param array $randomData
  */
 protected function _anonymizeOrder($order, $randomData)
 {
     /** @var $order Mage_Sales_Model_Order */
     foreach ($this->_getOrderMapping() as $orderKey => $randomDataKey) {
         if (!$order->getData($orderKey)) {
             continue;
         }
         if (strlen($randomDataKey)) {
             $order->setData($orderKey, $randomData[$randomDataKey]);
         } else {
             $order->setData($orderKey, '');
         }
     }
     $order->getResource()->save($order);
     $this->_anonymizedOrderIds[] = $order->getId();
     /* @var $quote Mage_Sales_Model_Quote */
     $quote = Mage::getModel('sales/quote')->load($order->getQuoteId());
     if ($quote->getId()) {
         $this->_anonymizeQuote($quote, $randomData);
     }
 }
 public function firstStep($payDataComercio, $payDataOperacion)
 {
     /*COMENTO LAS PARTES DONDE SE UTILIZAN LOS ESTADOS CREADOS POR EL MODULO*/
     Mage::log("init: " . __METHOD__);
     $order = new Mage_Sales_Model_Order();
     $order->loadByIncrementId($payDataOperacion['OPERATIONID']);
     try {
         Mage::log(__METHOD__ . "<-- try - OPERATIONID: " . $payDataOperacion['OPERATIONID']);
         $todopago_connector = Mage::helper('modulodepago2/connector')->getConnector();
         Mage::log("Modulo de pago - TodoPago ==> payDataComercio --> " . json_encode($payDataComercio));
         Mage::log("Modulo de pago - TodoPago ==> payDataOperacion --> " . json_encode($payDataOperacion));
         $first_step = $todopago_connector->sendAuthorizeRequest($payDataComercio, $payDataOperacion);
         if ($first_step["StatusCode"] == 702) {
             Mage::log("Modulo de pago - TodoPago ==> respuesta de sendAuthorizeRequest --> reintento SAR");
             $first_step = $todopago_connector->sendAuthorizeRequest($payDataComercio, $payDataOperacion);
         }
         Mage::log("Modulo de pago - TodoPago ==> respuesta de sendAuthorizeRequest -->" . json_encode($first_step));
         $todopagotable = new Todopago_Modulodepago2_Model_Todopagotable();
         $todopagotable->setOrderId($payDataOperacion['OPERATIONID']);
         $todopagotable->setSendauthorizeanswerStatus(Mage::getModel('core/date')->date('Y-m-d H:i:s') . " - " . $first_step["StatusCode"] . " - " . $first_step['StatusMessage']);
         if ($first_step["StatusCode"] == -1) {
             Mage::log("StatusCode = -1 - OPERATIONID" . $payDataOperacion['OPERATIONID']);
             $todopagotable->setRequestKey($first_step['RequestKey']);
             $todopagotable->save();
             $order->setData('todopagoclave', $first_step['RequestKey']);
             $status = Mage::getStoreConfig('payment/modulodepago2/order_status');
             if (empty($status)) {
                 $status = Mage::getStoreConfig('payment/todopago_avanzada/order_status');
             }
             $state = $this->_get_new_order_state($status);
             if (Mage::getStoreConfig('payment/modulodepago2/modo_test_prod') == "test") {
                 $message = "Todo Pago (TEST): " . $first_step['StatusMessage'];
             } else {
                 $message = "Todo Pago: " . $first_step['StatusMessage'];
             }
             $order->setState($state, $status, $message);
             $order->save();
             Mage::log("Modulo de pago - TodoPago ==> redirige a: " . $first_step['URL_Request']);
             if (Mage::getStoreConfig('payment/modulodepago2/hibrido') == 1) {
                 if ($this->getRequest()->get('checkout') == "Mage_Checkout") {
                     $url = Mage::getUrl('modulodepago2/formulariocustom/index', array('_secure' => true, 'order' => $order->getIncrementId(), 'requestKey' => $first_step['PublicRequestKey']));
                     echo '{"url":"' . $url . '"}';
                     return;
                 } else {
                     $url = Mage::getUrl('modulodepago2/formulariocustom/insite', array('_secure' => true, 'order' => $order->getIncrementId(), 'requestKey' => $first_step['PublicRequestKey']));
                     $this->_redirectUrl($url);
                     return;
                 }
             }
             $this->_redirectUrl($first_step['URL_Request']);
         } else {
             Mage::log("StatusCode != -1 - OPERATIONID" . $payDataOperacion['OPERATIONID']);
             $status = Mage::getStoreConfig('payment/modulodepago2/estado_denegada');
             if (empty($status)) {
                 $status = Mage::getStoreConfig('payment/todopago_avanzada/estado_denegada');
             }
             $state = $this->_get_new_order_state($status);
             if (Mage::getStoreConfig('payment/modulodepago2/modo_test_prod') == "test") {
                 $message = "Todo Pago (TEST): " . $first_step['StatusMessage'];
             } else {
                 $message = "Todo Pago: " . $first_step['StatusMessage'];
             }
             $order->cancel();
             Mage::log("Orden cancelada");
             $order->setState($state, $status, $message);
             $order->save();
             Mage::log("Modulo de pago - TodoPago ==> redirige a: checkout/onepage/failure");
             Mage_Core_Controller_Varien_Action::_redirect('checkout/onepage/failure', array('_secure' => true));
         }
     } catch (Exception $e) {
         Mage::log("catch : " . __METHOD__);
         Mage::log("Modulo de pago - TodoPago - OPERATIONID: " . $payDataOperacion['OPERATIONID'] . "==> (Exception)" . json_encode($e));
         $status = Mage::getStoreConfig('payment/modulodepago2/estado_denegada');
         if (empty($status)) {
             $status = Mage::getStoreConfig('payment/todopago_avanzada/estado_denegada');
         }
         $state = $this->_get_new_order_state($status);
         if (Mage::getStoreConfig('payment/modulodepago2/modo_test_prod') == "test") {
             $message = "Todo Pago (TEST)(Exception): " . $e;
         } else {
             $message = "Modulo de pago - TodoPago ==> (Exception)" . $e;
         }
         $order->cancel();
         Mage::log("Orden cancelada");
         $order->setState($state, $status, $message);
         $order->save();
         Mage::log("Modulo de pago - TodoPago ==> redirige a: checkout/onepage/failure");
         Mage_Core_Controller_Varien_Action::_redirect('checkout/onepage/failure', array('_secure' => true));
     }
 }