本文整理汇总了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类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的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
示例16: addActionLayoutHandles
/**
* Prepare menu and handles
*/
public function addActionLayoutHandles()
{
parent::addActionLayoutHandles();
$update = $this->getLayout()->getUpdate();
$update->addHandle('open_gallery');
$update->addHandle('open_gallery_scripts');
}
开发者ID:shakhawat4g,项目名称:Magento-Gallery-Extension,代码行数:10,代码来源:Abstract.php
示例17: preDispatch
public function preDispatch()
{
$this->setFlag('', self::FLAG_NO_START_SESSION, 1);
// Do not start standart session
parent::preDispatch();
return $this;
}
开发者ID:HelioFreitas,项目名称:magento-pt_br,代码行数:7,代码来源:Action.php
示例18: preDispatch
public function preDispatch()
{
if (!Mage::getStoreConfig('lotusbreath_onestepcheckout/general/enabled')) {
$this->_redirect(Mage::getUrl('checkout/onepage/index'));
}
/**
* Disable some event for optimization
*/
if (!Mage::getStoreConfig('lotusbreath_onestepcheckout/speedoptimizer/disablerssobserver')) {
$eventConfig = Mage::getConfig()->getEventConfig('frontend', 'sales_order_save_after');
if ($eventConfig->observers->notifystock->class == 'rss/observer') {
$eventConfig->observers->notifystock->type = 'disabled';
}
if ($eventConfig->observers->ordernew->class == 'rss/observer') {
$eventConfig->observers->ordernew->type = 'disabled';
}
}
if (!Mage::getStoreConfig('lotusbreath_onestepcheckout/speedoptimizer/disablevisitorlog')) {
$eventConfig = Mage::getConfig()->getEventConfig('frontend', 'controller_action_predispatch');
$eventConfig->observers->log->type = 'disabled';
$eventConfig = Mage::getConfig()->getEventConfig('frontend', 'controller_action_postdispatch');
$eventConfig->observers->log->type = 'disabled';
$eventConfig = Mage::getConfig()->getEventConfig('frontend', 'sales_quote_save_after');
$eventConfig->observers->log->type = 'disabled';
$eventConfig = Mage::getConfig()->getEventConfig('frontend', 'checkout_quote_destroy');
$eventConfig->observers->log->type = 'disabled';
}
parent::preDispatch();
if (!$this->getRequest()->getParam('allow_gift_messages')) {
$this->getRequest()->setParam('giftmessage', false);
}
return $this;
}
开发者ID:axovel,项目名称:easycarcare,代码行数:33,代码来源:Action.php
示例19: array
function __construct(Zend_Controller_Request_Abstract $request, Zend_Controller_Response_Abstract $response, array $invokeArgs = array())
{
parent::__construct($request, $response, $invokeArgs);
$post = $this->getRequest()->getParams();
if (isset($post['action']) && isset($post['submodule'])) {
$json = Mage::helper('core')->jsonDecode($post['values']);
if (isset($json['parent'])) {
$url = Mage::helper('ajaxKit')->clearUrl($json['parent']['url']);
$url_arr = explode('?', $url);
$url = $url_arr[0];
if ('product' == $json['parent']['controller'] || 'category' == $json['parent']['controller']) {
$oRewrite = Mage::getModel('core/url_rewrite')->setStoreId(Mage::app()->getStore()->getId())->loadByRequestPath($url);
if ('product' == $json['parent']['controller']) {
Mage::register('current_product', Mage::getModel('catalog/product')->load((int) $oRewrite->getProductId()));
} else {
Mage::register('current_category', Mage::getModel('catalog/category')->load((int) $oRewrite->getCategoryId()));
}
} elseif ('cms' == $json['parent']['module']) {
if ('index' == $json['parent']['controller']) {
$pageId = Mage::getStoreConfig(Mage_Cms_Helper_Page::XML_PATH_HOME_PAGE);
Mage::getSingleton('cms/page')->load($pageId);
} else {
Mage::getSingleton('cms/page')->load($url, 'identifier');
}
}
Mage::register('meigee_ajax', $json['parent']);
}
}
}
开发者ID:kiutisuperking,项目名称:eatsmartboxdev,代码行数:29,代码来源:IndexController.php
示例20: _redirectReferer
/**
* @param null $defaultUrl
* @return Mage_Core_Controller_Varien_Action
*/
protected function _redirectReferer($defaultUrl = null)
{
if ($store = $this->getRequest()->getParam('store')) {
Mage::app()->setCurrentStore($store);
}
return parent::_redirectReferer($defaultUrl);
}
开发者ID:akits,项目名称:magento_zh_TW,代码行数:11,代码来源:IndexController.php
注:本文中的Mage_Core_Controller_Front_Action类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论