Ejemplo n.º 1
0
 protected function _toHtml()
 {
     try {
         $email = Mage::getSingleton('customer/session')->getCustomer()->getEmail();
         if (!$email) {
             return '';
         }
         $helper = new Expressly_Expressly_Helper_Client();
         $merchant = $helper->getMerchant();
         $event = new BannerEvent($merchant, $email);
         try {
             $helper->getDispatcher()->dispatch(BannerSubscriber::BANNER_REQUEST, $event);
             if (!$event->isSuccessful()) {
                 throw new GenericException(Expressly_Expressly_Helper_Client::errorFormatter($event));
             }
         } catch (GenericException $e) {
             $helper->getLogger()->error($e);
             return '';
         }
         return BannerHelper::toHtml($event);
     } catch (Exception $ignore) {
         // never break the shop
         return '';
     }
 }
Ejemplo n.º 2
0
 public function __construct(\Zend_Controller_Request_Abstract $request, \Zend_Controller_Response_Abstract $response, array $invokeArgs = array())
 {
     $helper = new \Expressly_Expressly_Helper_Client();
     $this->app = $helper->getApp();
     $this->merchantProvider = $this->app['merchant.provider'];
     $this->resolver = $this->app['route.resolver'];
     $this->dispatcher = $this->app['dispatcher'];
     $this->logger = $this->app['logger'];
     parent::__construct($request, $response, $invokeArgs);
 }
Ejemplo n.º 3
0
 public function registerUpdateMerchant($observer)
 {
     $helper = new Expressly_Expressly_Helper_Client();
     $provider = $helper->getMerchantProvider();
     $merchant = $provider->getMerchant();
     $event = new PasswordedEvent($merchant);
     try {
         $provider->setMerchant($merchant);
         $helper->getDispatcher()->dispatch(MerchantSubscriber::MERCHANT_REGISTER, $event);
         if (!$event->isSuccessful()) {
             throw new InvalidAPIKeyException();
         }
     } catch (\Exception $e) {
         $helper->getLogger()->error(ExceptionFormatter::format($e));
         $response = array('error' => -1, 'message' => $helper->__('Your values could not be transmitted to the server. Please try resubmitting, or contacting info@buyexpressly.com'));
         \Mage::app()->getResponse()->setBody(Mage::helper('core')->jsonEncode($response));
     }
 }