Ejemplo n.º 1
0
 /**
  * Redirect to startup page after logging in if request contains any params (except security key)
  *
  * @param Mage_Admin_Model_User $user
  * @param Zend_Controller_Request_Http $request
  * @param string|null $alternativeUrl
  * @return null|string
  */
 public function getRedirectUrl(Mage_Admin_Model_User $user, Zend_Controller_Request_Http $request = null, $alternativeUrl = null)
 {
     if (empty($request)) {
         return;
     }
     $countRequiredParams = $this->_urlModel->useSecretKey() && $request->getParam(Mage_Adminhtml_Model_Url::SECRET_KEY_PARAM_NAME) ? 1 : 0;
     $countGetParams = count($request->getUserParams()) + count($request->getQuery());
     return $countGetParams > $countRequiredParams ? $this->_urlModel->getUrl($user->getStartupPageUrl()) : $alternativeUrl;
 }
Ejemplo n.º 2
0
 /**
  * @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');
     }
 }
Ejemplo n.º 3
0
 protected function setUp()
 {
     $mediaUploader = $this->getMockBuilder('Mage_Adminhtml_Block_Media_Uploader')->disableOriginalConstructor()->setMethods(array('getDataMaxSizeInBytes'))->getMock();
     $this->_url = $this->getMockBuilder('Mage_Adminhtml_Model_Url')->disableOriginalConstructor()->setMethods(array('getUrl'))->getMock();
     $this->_mediaConfig = $this->getMockBuilder('Mage_Catalog_Model_Product_Media_Config')->disableOriginalConstructor()->setMethods(array('getMediaUrl', 'getTmpMediaUrl'))->getMock();
     $this->_design = $this->getMockBuilder('Mage_Core_Model_Design_Package')->disableOriginalConstructor()->setMethods(array('getViewFileUrl'))->getMock();
     $this->_helperData = $this->getMockBuilder('Mage_Core_Helper_Data')->disableOriginalConstructor()->setMethods(array('escapeHtml', 'jsonEncode'))->getMock();
     $form = $this->getMockBuilder('Varien_Data_Form')->disableOriginalConstructor()->getMock();
     $attributes = array('name' => 'image', 'label' => "Base Image", 'mediaUploader' => $mediaUploader, 'url' => $this->_url, 'mediaConfig' => $this->_mediaConfig, 'design' => $this->_design, 'helperData' => $this->_helperData);
     $mediaUploader->expects($this->once())->method('getDataMaxSizeInBytes')->will($this->returnValue('999'));
     $this->_model = new Mage_Adminhtml_Block_Catalog_Product_Helper_Form_BaseImage($attributes);
     $this->_model->setForm($form);
     $this->_model->setHtmlId('image');
     $this->_url->expects($this->once())->method('getUrl')->will($this->returnValue('http://example.com/pub/images/catalog_product_gallery/upload/'));
     $this->_helperData->expects($this->any())->method('jsonEncode')->will($this->returnArgument(0));
 }
Ejemplo n.º 4
0
 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);
 }
Ejemplo n.º 5
0
 public function getUrl($routePath = null, $routeParams = null)
 {
     // Get the original URLs from the registry
     $original_urls = Mage::registry('original_urls');
     // If this value is empty, it is not yet initialized
     if (empty($original_urls)) {
         return parent::getUrl($routePath, $routeParams);
     }
     // Fetch the result from this method
     $rt = parent::getUrl($routePath, $routeParams);
     // Replace the current URL with the original URL
     $store = Mage::app()->getStore();
     if ($store->getConfig('web/secure/use_in_adminhtml') == 1 && isset($original_urls['web/secure/base_url'])) {
         $rt = str_replace($store->getConfig('web/secure/base_url'), $original_urls['web/secure/base_url'], $rt);
     } elseif (isset($original_urls['web/unsecure/base_url'])) {
         $rt = str_replace($store->getConfig('web/unsecure/base_url'), $original_urls['web/unsecure/base_url'], $rt);
     }
     return $rt;
 }
Ejemplo n.º 6
0
 /**
  * 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]);
 }
 /**
  * Get the startup page URL for the current user set in the session.
  * @return string
  */
 protected function _getStartpageUri()
 {
     /** @var string */
     $startpageUri = $this->getUser()->getStartupPageUrl();
     return $this->url->getUrl($startpageUri);
 }