当前位置: 首页>>代码示例>>PHP>>正文


PHP Mage_Core_Controller_Front_Action类代码示例

本文整理汇总了PHP中Mage_Core_Controller_Front_Action的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Core_Controller_Front_Action类的具体用法?PHP Mage_Core_Controller_Front_Action怎么用?PHP Mage_Core_Controller_Front_Action使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


在下文中一共展示了Mage_Core_Controller_Front_Action类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: _resuscitateCartItems

 /**
  * Re-añade los productos comprados a carrito nuevamente
  *
  * @param Mage_Sales_Model_Order $order
  * @return $this
  */
 protected function _resuscitateCartItems(Mage_Sales_Model_Order $order, Mage_Core_Controller_Front_Action $action = null)
 {
     foreach ($order->getItemsCollection() as $orderItem) {
         try {
             $this->getCart()->addOrderItem($orderItem);
         } catch (Mage_Core_Exception $e) {
             /** @var Mage_Checkout_Model_Session $session */
             $session = Mage::getSingleton('checkout/session');
             if ($session->getUseNotice(true)) {
                 $session->addNotice($e->getMessage());
             } else {
                 $session->addError($e->getMessage());
             }
             if ($action) {
                 $action->setRedirectWithCookieCheck('checkout/cart');
             }
         } catch (Exception $e) {
             /** @var Mage_Checkout_Model_Session $session */
             $session = Mage::getSingleton('checkout/session');
             $session->addNotice($e->getMessage());
             $session->addException($e, Mage::helper('checkout')->__('Cannot add the item to shopping cart.'));
             if ($action) {
                 $action->setRedirectWithCookieCheck('checkout/cart');
             }
         }
     }
     $this->getCart()->save();
     return $this;
 }
开发者ID:aplazame,项目名称:magento,代码行数:35,代码来源:Cart.php

示例2: renderPage

 /**
  * Renders CMS page
  *
  * Call from controller action
  *
  * @param Mage_Core_Controller_Front_Action $action
  * @param integer $pageId
  * @return boolean
  */
 public function renderPage(Mage_Core_Controller_Front_Action $action, $identifier = null)
 {
     $page = Mage::getModel('blog/post');
     if (!is_null($identifier) && $identifier !== $page->getId()) {
         $page->setStoreId(Mage::app()->getStore()->getId());
         if (!$page->load($identifier)) {
             return false;
         }
     }
     if (!$page->getId()) {
         return false;
     }
     if ($page->getStatus() == 2) {
         return false;
     }
     $page_title = Mage::getSingleton('blog/post')->load($identifier)->getTitle();
     $blog_title = Mage::getStoreConfig('blog/blog/title') . " - ";
     $action->loadLayout();
     if ($storage = Mage::getSingleton('customer/session')) {
         $action->getLayout()->getMessagesBlock()->addMessages($storage->getMessages(true));
     }
     /*
      if (Mage::getStoreConfig('blog/rss/enable'))
      {
      Mage::helper('blog')->addRss($action->getLayout()->getBlock('head'), Mage::getUrl(Mage::getStoreConfig('blog/blog/route')) . "rss");
      }
     */
     $action->getLayout()->getBlock('head')->setTitle($blog_title . $page_title);
     //$action->getLayout()->getBlock('root')->setTemplate(Mage::getStoreConfig('blog/blog/layout'));
     $action->renderLayout();
     return true;
 }
开发者ID:sagmahajan,项目名称:aswan_release,代码行数:41,代码来源:Post.php

示例3: initProductLayout

 /**
  * Inits layout for viewing product page
  *
  * @param Mage_Catalog_Model_Product $product
  * @param Mage_Core_Controller_Front_Action $controller
  *
  * @return Mage_Catalog_Helper_Product_View
  */
 public function initProductLayout($product, $controller)
 {
     $design = Mage::getSingleton('catalog/design');
     $settings = $design->getDesignSettings($product);
     if ($settings->getCustomDesign()) {
         $design->applyCustomDesign($settings->getCustomDesign());
     }
     $update = $controller->getLayout()->getUpdate();
     $update->addHandle('default');
     $controller->addActionLayoutHandles();
     /* START OF CODE FOR CUSTOMIZATION OF PREMIUM PACKAGING */
     /*
     $premium = false;
     
     $catIds = $product->getCategoryIds();
     
     $premium	=	Mage::getModel('packaging/packaging')->bool_isPremiumPackaging($catIds, true);
     
     if($premium) {
     	$update->addHandle('PRODUCT_TYPE_PREMIUM');
     	$update->addHandle('PRODUCT_' . $product->getId());
     } else {
     */
     $update->addHandle('PRODUCT_TYPE_' . $product->getTypeId());
     $update->addHandle('PRODUCT_' . $product->getId());
     /*
     }
     */
     /* END OF CODE FOR CUSTOMIZATION OF PREMIUM PACKAGING */
     $controller->loadLayoutUpdates();
     // Apply custom layout update once layout is loaded
     $layoutUpdates = $settings->getLayoutUpdates();
     if ($layoutUpdates) {
         if (is_array($layoutUpdates)) {
             foreach ($layoutUpdates as $layoutUpdate) {
                 $update->addUpdate($layoutUpdate);
             }
         }
     }
     $controller->generateLayoutXml()->generateLayoutBlocks();
     // Apply custom layout (page) template once the blocks are generated
     if ($settings->getPageLayout()) {
         $controller->getLayout()->helper('page/layout')->applyTemplate($settings->getPageLayout());
     }
     $currentCategory = Mage::registry('current_category');
     $root = $controller->getLayout()->getBlock('root');
     if ($root) {
         $controllerClass = $controller->getFullActionName();
         if ($controllerClass != 'catalog-product-view') {
             $root->addBodyClass('catalog-product-view');
         }
         $root->addBodyClass('product-' . $product->getUrlKey());
         if ($currentCategory instanceof Mage_Catalog_Model_Category) {
             $root->addBodyClass('categorypath-' . $currentCategory->getUrlPath())->addBodyClass('category-' . $currentCategory->getUrlKey());
         }
     }
     return $this;
 }
开发者ID:sagmahajan,项目名称:aswan_release,代码行数:66,代码来源:View.php

示例4: process

 public function process(Mage_Core_Controller_Front_Action $controller)
 {
     $request = $controller->getRequest();
     if ($request->isXmlHttpRequest() || !$request->isGet() || strpos($request->getHeader('accept'), 'text/html') === false) {
         return;
     } else {
         $searchText = $this->getSearchQuery($controller->getRequest());
         $message = Mage::helper('searchindex')->__('The page you requested was not found, but we have searched for relevant content.');
         Mage::getSingleton('core/session')->addNotice($message);
         Mage::getSingleton('core/session')->setData('route404', $message);
         $url = Mage::getUrl('catalogsearch/result', array('_query' => array('q' => $searchText)));
         $controller->getResponse()->clearHeaders()->setRedirect($url)->sendResponse();
     }
 }
开发者ID:AleksNesh,项目名称:pandora,代码行数:14,代码来源:Route.php

示例5: preDispatch

 /**
  * Make sure the customer is authenticated of necessary
  *
  * @return Mage_Core_Controller_Front_Action | void
  */
 public function preDispatch()
 {
     parent::preDispatch();
     if (!$this->getRequest()->isDispatched()) {
         return;
     }
     $authenticationRequired = (bool) Mage::getStoreConfig(Solvingmagento_AffiliateProduct_Model_Product_Type::XML_PATH_AUTHENTICATION);
     if ($authenticationRequired) {
         $customer = Mage::getSingleton('customer/session')->getCustomer();
         if ($customer && $customer->getId()) {
             $validationResult = $customer->validate();
             if (true !== $validationResult && is_array($validationResult)) {
                 foreach ($validationResult as $error) {
                     Mage::getSingleton('core/session')->addError($error);
                 }
                 $this->goBack();
                 $this->setFlag('', self::FLAG_NO_DISPATCH, true);
                 return $this;
             }
             return $this;
         } else {
             Mage::getSingleton('customer/session')->addError($this->helper->__('You must log in to access the partner product'));
             $this->_redirect('customer/account/login');
             $this->setFlag('', self::FLAG_NO_DISPATCH, true);
             return $this;
         }
     }
 }
开发者ID:hafeez3000,项目名称:Solvingmagento_AffiliateProduct,代码行数:33,代码来源:RedirectController.php

示例6: preDispatch

 /**
  * Predispatch: shoud set layout area
  *
  * @return Mage_Core_Controller_Front_Action
  */
 public function preDispatch()
 {
     try {
         // call the parents class method
         parent::preDispatch();
         // resolve the needed parameters from the requested resource name
         $this->_params = Mage::helper('channel')->resolve($this->getRequest()->getRequestString());
         // return the instance itself
         return $this;
     } catch (Faett_Channel_Exceptions_ResourceNotFoundException $rnfe) {
         // log the exception
         Mage::logException($rnfe);
         // register the error message
         Mage::register(Faett_Channel_Block_NotFound::MESSAGE, $this->_getHelper()->__($rnfe->getKey()));
         // forward to the not found page
         $this->_forward('notFound', 'error', 'channel');
     } catch (Exception $e) {
         // log the exception
         Mage::logException($e);
         // register the error message
         Mage::register(Faett_Channel_Block_InternalServerError::MESSAGE, $e->getMessage());
         // forward to the internal server error page
         $this->_forward('internalServerError', 'error', 'channel');
     }
 }
开发者ID:BGCX067,项目名称:faett-channel-svn-to-git,代码行数:30,代码来源:IndexController.php

示例7: preDispatch

 /**
  * Use 'admin' store and prevent the session from starting
  *
  * @return Mage_Api_Controller_Action
  */
 public function preDispatch()
 {
     Mage::app()->setCurrentStore('admin');
     $this->setFlag('', self::FLAG_NO_START_SESSION, 1);
     parent::preDispatch();
     return $this;
 }
开发者ID:nemphys,项目名称:magento2,代码行数:12,代码来源:Action.php

示例8: _prepareLayout

 protected function _prepareLayout()
 {
     if ($headBlock = $this->getLayout()->getBlock('head')) {
         $headBlock->setTitle($title);
     }
     return parent::_prepareLayout();
 }
开发者ID:xiaoguizhidao,项目名称:cupboardglasspipes.ecomitize.com,代码行数:7,代码来源:IndexController.php

示例9: preDispatch

 /**
  * Checking if user is logged in or not
  * If not logged in then redirect to customer login
  */
 public function preDispatch()
 {
     parent::preDispatch();
     if (!$this->customerSession()->authenticate($this)) {
         $this->setFlag('', 'no-dispatch', true);
     }
 }
开发者ID:picode-eu,项目名称:nti_mage,代码行数:11,代码来源:EditController.php

示例10: preDispatch

 public function preDispatch()
 {
     parent::preDispatch();
     if (!Mage::getSingleton('customer/session')->isLoggedIn()) {
         $this->_redirectUrl(Mage::helper('customer')->getAccountUrl());
     }
 }
开发者ID:7ochem,项目名称:magento_extension,代码行数:7,代码来源:TicketsController.php

示例11: preDispatch

 /**
  * Action predispatch
  *
  * Check customer authentication for some actions
  */
 public function preDispatch()
 {
     parent::preDispatch();
     if (!Mage::getSingleton('customer/session')->authenticate($this)) {
         $this->setFlag('', self::FLAG_NO_DISPATCH, true);
     }
 }
开发者ID:okite11,项目名称:frames21,代码行数:12,代码来源:CustomerController.php

示例12: paymentAction

 /**
  * Show orderPlaceRedirect page which contains the Moneybookers iframe.
  */
 public function paymentAction()
 {
     try {
         $session = $this->_getCheckout();
         $order = $this->placeOrder();
         $order->setState(Mage_Sales_Model_Order::STATE_PENDING_PAYMENT, Mage_Sales_Model_Order::STATE_PENDING_PAYMENT, Mage::helper('moneybookers')->__('The customer was redirected to Moneybookers.'));
         $order->save();
         $this->_order = $order;
         $session->setLastRealOrderId($order->getIncrementId());
         $session->setMoneybookersQuoteId($session->getQuoteId());
         $session->setMoneybookersRealOrderId($session->getLastRealOrderId());
         $session->getQuote()->setIsActive(false)->save();
         $session->clear();
         $this->loadLayout();
         //load layout of moneybookers
         //            $update = $this->getLayout()->getUpdate();
         //            $update->addHandle('default');
         //            $this->addActionLayoutHandles();
         //            $update->addHandle('moneybookers_processing_payment');
         //            $this->loadLayoutUpdates();
         //            $this->generateLayoutXml();
         //            $this->generateLayoutBlocks();
         //            $this->_isLayoutLoaded = true;
         //render layout
         $this->renderLayout();
     } catch (Exception $e) {
         die($e->getMessage());
         Mage::logException($e);
         parent::_redirect('checkout/cart');
     }
 }
开发者ID:Thinlt,项目名称:simicart,代码行数:34,代码来源:ProcessingController.php

示例13: loadLayout

 public function loadLayout($handles = null, $generateBlocks = true, $generateXml = true)
 {
     $original_results = parent::loadLayout($handles, $generateBlocks, $generateXml);
     $handles = Mage::getSingleton('core/layout')->getUpdate()->getHandles();
     echo "<strong >Handles Generated For This Request : ", implode(",", $handles), "</strong>";
     return $original_results;
 }
开发者ID:votanlean,项目名称:Magento-Pruebas,代码行数:7,代码来源:PackageController.php

示例14: addActionLayoutHandles

 public function addActionLayoutHandles()
 {
     parent::addActionLayoutHandles();
     $layout = $this->getLayout();
     $layout->getUpdate()->addHandle('checkout_onepage_success');
     return $this;
 }
开发者ID:talkable,项目名称:talkable-platforms,代码行数:7,代码来源:SuccessController.php

示例15: addActionLayoutHandles

 /**
  * Adds an additional layout handle based on view name, since
  * full action handle will always be the same.
  */
 public function addActionLayoutHandles()
 {
     $r = parent::addActionLayoutHandles();
     $update = $this->getLayout()->getUpdate();
     $update->addHandle(strtolower($this->getHandlerActionHandle()));
     return $r;
 }
开发者ID:itmyprofession,项目名称:Pulsestorm,代码行数:11,代码来源:Base.php


注:本文中的Mage_Core_Controller_Front_Action类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。