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


PHP Mage_Core_Controller_Request_Http::getActionName方法代码示例

本文整理汇总了PHP中Mage_Core_Controller_Request_Http::getActionName方法的典型用法代码示例。如果您正苦于以下问题:PHP Mage_Core_Controller_Request_Http::getActionName方法的具体用法?PHP Mage_Core_Controller_Request_Http::getActionName怎么用?PHP Mage_Core_Controller_Request_Http::getActionName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Mage_Core_Controller_Request_Http的用法示例。


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

示例1: restrictCmsPageAfterLogin

 /**
  * observer will only be called at
  *  controller_action_postdispatch_customer_account_loginPost
  * because the logged in customer object is not available in the pre dispatch!
  *
  * @param Varien_Event_Observer $observer
  */
 public function restrictCmsPageAfterLogin(Varien_Event_Observer $observer)
 {
     $this->_initProperties($observer);
     /* we keep these two var just to be sure it is called correctly :-| */
     $isMageCustomerAccountController = $this->_controller instanceof Mage_Customer_AccountController;
     $isCustomerLoginPost = $this->_request->getActionName() === 'loginPost';
     if ($isMageCustomerAccountController && $isCustomerLoginPost && $this->_hasSessionRedirectUrl()) {
         $this->_pageIdentifier = $this->_getSessionRedirectUrl();
         $url = TRUE === Mage::helper('schumacherfm_cmsrestriction')->isCustomerAllowed($this->_getPageModelInstance()) ? $this->_pageIdentifier : Mage::helper('schumacherfm_cmsrestriction')->getAccessDeniedUrl();
         $this->_unsSessionRedirectUrl();
         $this->_handleRedirect($url);
     }
 }
开发者ID:giuseppemorelli,项目名称:Magento-CmsRestriction,代码行数:20,代码来源:Observer.php

示例2: validateCustomerAttributeActions

 /**
  * Validate customer attribute actions
  *
  * @param Mage_Adminhtml_Controller_Action $controller
  * @return bool
  */
 public function validateCustomerAttributeActions($controller)
 {
     $actionName = strtolower($this->_request->getActionName());
     $attributeId = $this->_request->getParam('attribute_id');
     $websiteId = $this->_request->getParam('website');
     if (in_array($actionName, array('new', 'delete')) || in_array($actionName, array('edit', 'save')) && !$attributeId || $websiteId && !$this->_role->hasWebsiteAccess($websiteId, true)) {
         $this->_forward();
         return false;
     }
     return true;
 }
开发者ID:beejhuff,项目名称:magento-1.13.0.2,代码行数:17,代码来源:Controllers.php

示例3: validateCmsHierarchyAction

 /**
  * Block editing of Hierarchy if GWS permissions are applicable
  *
  * @param Mage_Adminhtml_Controller_Action $controller
  * @return bool|void
  */
 public function validateCmsHierarchyAction($controller)
 {
     if (!$this->_role->getIsAll()) {
         $requestAction = $this->_request->getActionName();
         if ($requestAction == 'delete' || $requestAction == 'copy') {
             $scopesParam = $this->_request->getParam('scopes');
             $scopesParamIsArray = true;
             if (!is_array($scopesParam)) {
                 $scopesParam = array($scopesParam);
                 $scopesParamIsArray = false;
             }
             $validatedScopes = array();
             foreach (array_unique($scopesParam) as $value) {
                 if (0 === strpos($value, Enterprise_Cms_Helper_Hierarchy::SCOPE_PREFIX_WEBSITE)) {
                     $scopeId = (int) str_replace(Enterprise_Cms_Helper_Hierarchy::SCOPE_PREFIX_WEBSITE, '', $value);
                     if ($this->_role->hasExclusiveAccess((array) $scopeId)) {
                         $validatedScopes[] = $value;
                     }
                 } elseif (0 === strpos($value, Enterprise_Cms_Helper_Hierarchy::SCOPE_PREFIX_STORE)) {
                     $scopeId = (int) str_replace(Enterprise_Cms_Helper_Hierarchy::SCOPE_PREFIX_STORE, '', $value);
                     if ($this->_role->hasExclusiveStoreAccess((array) $scopeId)) {
                         $validatedScopes[] = $value;
                     }
                 }
             }
             if (count($validatedScopes) > 0) {
                 if ($requestAction == 'delete' && !$scopesParamIsArray && count($validatedScopes) == 1 && isset($validatedScopes[0])) {
                     $validatedScopes = $validatedScopes[0];
                 }
                 $this->_request->setParam('scopes', $validatedScopes);
             } else {
                 $this->_forward();
                 return false;
             }
         } else {
             $websiteCode = $controller->getRequest()->getParam('website');
             $website = Mage::app()->getWebsite($websiteCode);
             $websiteId = $website->getId();
             if (!$this->_role->hasExclusiveAccess((array) $websiteId)) {
                 $storeCode = $controller->getRequest()->getParam('store');
                 $store = Mage::app()->getStore($storeCode);
                 $storeId = $store->getId();
                 if (!$this->_role->hasExclusiveStoreAccess((array) $storeId)) {
                     $this->_forward();
                     return false;
                 }
             }
         }
     }
     return true;
 }
开发者ID:barneydesmond,项目名称:propitious-octo-tribble,代码行数:57,代码来源:Controllers.php

示例4: _forward

 /**
  * Forward current request
  *
  * @param string $action
  * @param string $module
  * @param string $controller
  * @return void
  */
 protected function _forward($action = 'denied', $module = null, $controller = null)
 {
     if ($this->_request->getActionName() === $action && (null === $module || $this->_request->getModuleName() === $module) && (null === $controller || $this->_request->getControllerName() === $controller)) {
         return;
     }
     $this->_request->initForward();
     if ($module) {
         $this->_request->setModuleName($module);
     }
     if ($controller) {
         $this->_request->setControllerName($controller);
     }
     $this->_request->setActionName($action)->setDispatched(false);
 }
开发者ID:QiuLihua83,项目名称:magento-ee,代码行数:22,代码来源:Observer.php

示例5: isAllowed

 /**
  * Checks whether route/controller action is allowed to be reached depending on initializer state
  *
  * @param Mage_Core_Controller_Request_Http $request
  * @return bool
  */
 public function isAllowed(Mage_Core_Controller_Request_Http $request)
 {
     if ($this->isDataCollected()) {
         return true;
     }
     if (count($this->_restrictions) == 1) {
         $initializerAclNode = Mage::getConfig()->getNode('default/xcom/initializer_acl');
         if ($initializerAclNode) {
             $this->_restrictions += $initializerAclNode->asArray();
         }
     }
     $parts = array('module' => str_replace('_adminhtml', '', strtolower($request->getControllerModule())), 'controller' => strtolower($request->getControllerName()), 'action' => strtolower($request->getActionName()), 'urn' => trim(strtolower($request->getRequestString()), '/'));
     $moduleParts = explode('_', $parts['module']);
     $parts['namespace'] = $moduleParts[0];
     $this->_currentMatch = array('scopeWeight' => 0, 'directionWeight' => 2, 'urn' => '');
     foreach ($this->_restrictions as $issuer => $rules) {
         if ($issuer != '*') {
             if (!Mage::getResourceModel('xcom_initializer/job')->hasJobsLeft($issuer)) {
                 continue;
             }
         }
         foreach (array('allowed', 'denied') as $direction) {
             if (empty($rules[$direction])) {
                 continue;
             }
             foreach ($rules[$direction] as $scope => $values) {
                 if (!is_array($values)) {
                     Mage::log(printf('Invalid configuration for scope node %s', $scope));
                     continue;
                 }
                 foreach ($values as $value) {
                     $value = strtolower(is_array($value) ? current($value) : $value);
                     $hasMatched = false;
                     if (empty($value)) {
                         Mage::log(printf('Empty node inside scope %s', $scope));
                         continue;
                     }
                     switch (strtolower($scope)) {
                         case 'namespace':
                             if ('denied' == $direction) {
                                 $hasMatched = $value == $parts['namespace'];
                             } else {
                                 Mage::log('<namespace> node allowed in <denied> section only');
                             }
                             break;
                         case 'action':
                         case 'controller':
                             $pattern = '(?P<module>.+)/(?P<controller>.+)';
                             $scopes = array('module', 'controller');
                             if ('action' == $scope) {
                                 $pattern .= '::(?P<action>.+)';
                                 $scopes[] = 'action';
                             }
                             if (preg_match('#' . $pattern . '#', $value, $matches)) {
                                 // Split value into module and controller (and action, if it's 'action' rule)
                                 $hasMatched = true;
                                 foreach ($scopes as $_scope) {
                                     if (!in_array($matches[$_scope], array('*', $parts[$_scope]))) {
                                         // Value part doesn't match corresponding part of current request or '*'
                                         $hasMatched = false;
                                         break;
                                     }
                                 }
                             } else {
                                 Mage::log(printf('Invalid action/controller definition: %s. Allowed pattern: namespace_module/controller::action', $value));
                             }
                             break;
                         case 'module':
                             $hasMatched = $value == $parts['module'];
                             break;
                         case 'urn':
                             $value = trim($value, '/');
                             $hasMatched = 0 === strpos($parts['urn'], $value);
                             break;
                         default:
                             Mage::log(printf('Unknown rule scope: %s', $scope));
                     }
                     if ($hasMatched) {
                         $this->_matched($scope, $direction, 'urn' == $scope ? $value : '');
                     }
                 }
             }
         }
     }
     return $this->_isAllowed();
 }
开发者ID:ridhoq,项目名称:mxpi-twitter,代码行数:92,代码来源:Initializer.php

示例6: _checkAdminController

 /**
  * Check is controller action is allowed w/o authorization
  *
  * @param Mage_Core_Controller_Request_Http $request
  * @param Mage_XmlConnect_Controller_AdminAction $controllerAction
  * @return bool|null
  */
 protected function _checkAdminController($request, $controllerAction)
 {
     if ($controllerAction instanceof Mage_XmlConnect_Controller_AdminAction) {
         foreach ($controllerAction->getAllowedControllerActions() as $controller => $allowedActions) {
             if ($request->getControllerName() == $controller && in_array(strtolower($request->getActionName()), $allowedActions)) {
                 return true;
             }
         }
         return false;
     }
 }
开发者ID:QiuLihua83,项目名称:magento-enterprise-1.13.1.0,代码行数:18,代码来源:Observer.php

示例7: isExportRequest

 /**
  * Return whether request corresponds to an export request from our module for handled grid
  * 
  * @param Mage_Core_Controller_Request_Http $request Request object
  * @param string $gridType Grid block type
  * @return bool
  */
 public function isExportRequest($request, $gridType)
 {
     $action = $request->getRouteName() . '/' . $request->getControllerName() . '/' . $request->getActionName();
     foreach ($this->_getExportTypes($gridType) as $type) {
         if ($type['url'] == $action) {
             return true;
         }
     }
     return false;
 }
开发者ID:becchius,项目名称:fiordivaniglia,代码行数:17,代码来源:Abstract.php

示例8: getHandler

 /**
  * Get the empty handles handler for any given request
  *
  * @param Mage_Core_Controller_Request_Http $request
  * @return string
  */
 public function getHandler(Mage_Core_Controller_Request_Http $request)
 {
     $requestParts = array($request->getModuleName(), $request->getControllerName(), $request->getActionName());
     return 'emptyhandles/handler_' . implode('_', $requestParts);
 }
开发者ID:jronatay,项目名称:ultimo-magento-jron,代码行数:11,代码来源:Data.php

示例9: matchRoute

 public function matchRoute(Mage_Core_Controller_Request_Http $request, $route)
 {
     $path = explode('/', $route);
     for ($i = 0; $i < 3; $i++) {
         if (!isset($path[$i])) {
             $path[$i] = 'index';
         } else {
             if ($path[$i][0] == '(') {
                 $path[$i] = explode('|', trim($path[$i], '()'));
             }
         }
     }
     return $this->_compareComponents($path, array($request->getRouteName(), $request->getControllerName(), $request->getActionName()));
 }
开发者ID:guohuadeng,项目名称:stampApp,代码行数:14,代码来源:Fpc.php

示例10: getFullActionName

 public function getFullActionName(Mage_Core_Controller_Request_Http $request)
 {
     return $request->getModuleName() . '_' . $request->getControllerName() . '_' . $request->getActionName();
 }
开发者ID:limingzhou,项目名称:Lesti_Fpc2,代码行数:4,代码来源:Request.php

示例11: isMatchedRequestRoute

 /**
  * @param Mage_Core_Controller_Request_Http $request
  * @param $route
  * @return bool
  */
 public function isMatchedRequestRoute($request, $route)
 {
     $this->debug('Testing route : ' . $route . ' with ' . $request->getControllerModule() . '/' . $request->getControllerName() . '/' . $request->getActionName());
     $route = trim($route);
     $route_parts = explode('/', $route);
     if (isset($route_parts[0])) {
         $module = $route_parts[0];
         $module_name = strtolower($request->getControllerModule());
         if (strtolower($module) == strtolower($module_name)) {
             if (isset($route_parts[1])) {
                 $controller = $route_parts[1];
                 $controller_name = strtolower($request->getControllerName());
                 if (strtolower($controller) == strtolower($controller_name)) {
                     if (isset($route_parts[2])) {
                         $action = $route_parts[2];
                         $action_name = strtolower($request->getActionName());
                         if (strtolower($action) == strtolower($action_name)) {
                             return true;
                         }
                     } else {
                         return true;
                     }
                 }
             } else {
                 return true;
             }
         }
     }
     return false;
 }
开发者ID:Eximagen,项目名称:pfizer,代码行数:35,代码来源:Data.php

示例12: _matchActionName

 /**
  * Match controller name
  *
  * @param Mage_Core_Controller_Request_Http $request
  * @param string $param
  * @return string
  */
 protected function _matchActionName(Mage_Core_Controller_Request_Http $request, $param)
 {
     if (empty($action)) {
         if ($request->getActionName()) {
             $action = $request->getActionName();
         } else {
             $action = !empty($param) ? $param : $this->getFront()->getDefault('action');
         }
     } else {
         $action = $param;
     }
     return $action;
 }
开发者ID:,项目名称:,代码行数:20,代码来源:


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