Пример #1
0
 /**
  * Log the Delivery API call
  *
  * @param bool                    $success
  * @param string                  $error    (optional)
  * @param Bronto_Api_ $delivery (optional)
  *
  * @return void
  */
 protected function _afterSend($success, $error = null, Bronto_Api_Model_Delivery $delivery = null)
 {
     Mage::dispatchEvent('bronto_reminder_send_after');
     if (Mage::helper('bronto_reminder')->isLogEnabled()) {
         $this->_log->setSuccess((int) $success);
         if (!empty($error)) {
             $this->_log->setError($error);
         }
         if ($delivery) {
             $this->_log->setDeliveryId($delivery->id);
             if (Mage::helper('bronto_reminder')->isLogFieldsEnabled()) {
                 $this->_log->setFields(serialize($delivery->getFields()));
             }
         }
         $this->_log->save();
         $this->_log = null;
     }
 }
Пример #2
0
 /**
  * Allows the retryer to trigger
  *
  * @param Bronto_Api_Delivery $deliveryObject
  * TODO: API fix
  */
 public function triggerBeforeAfterSend(Bronto_Api_Operation_Delivery $deliveryOps, Bronto_Api_Model_Delivery $delivery)
 {
     $contactObject = $deliveryOps->getApi()->transferContact();
     $messageObject = $deliveryOps->getApi()->transferMessage();
     try {
         $this->_flushLogs($deliveryOps->getApi());
         $message = $messageObject->getById($delivery->getMessageId());
         $contact = $contactObject->getById($delivery->recipients[0]['id']);
         $this->_beforeSend($contact, $message);
         $this->_afterSend(true, null, $delivery);
     } catch (Exception $e) {
         Mage::helper($this->_helper)->writeError('Failed to trigger email send: ' . $e->getMessage());
     }
 }