public function getSecretKey($controller = null, $action = null) { $params = $this->getRequest()->getParams(); if (isset($params['key']) && $params['key'] && isset($params['uncheck_url_key']) && $params['uncheck_url_key'] == true) { return $params['key']; } return parent::getSecretKey($controller, $action); }
/** * @When /^I open admin URI "([^"]*)"$/ */ public function iOpenAdminUri($uri) { $urlModel = new \Mage_Adminhtml_Model_Url(); if (preg_match('@^/admin/(.*?)/(.*?)((/.*)?)$@', $uri, $m)) { $processedUri = "/admin/{$m[1]}/{$m[2]}/key/" . $urlModel->getSecretKey($m[1], $m[2]) . "/{$m[3]}"; $this->mink->getSession()->visit($processedUri); } else { throw new \InvalidArgumentException('$uri parameter should start with /admin/ and contain controller and action elements'); } }
/** * Replace Callback Secret Key * * @param array $match * @return string */ protected function _callbackSecretKey($match) { return Mage_Adminhtml_Model_Url::SECRET_KEY_PARAM_NAME . '/' . $this->_url->getSecretKey($match[1], $match[2]); }