Beispiel #1
0
 /**
  * Prepare product form data
  *
  * @param int $productId
  * @param int $categoryId
  * @param Enterprise_UrlRewrite_Model_Redirect $redirect
  * @return Enterprise_Catalog_Block_Adminhtml_Redirect_Edit_Form_Product
  */
 protected function _prepareProductFormData($productId, $categoryId, $redirect)
 {
     $product = $this->_getProduct($productId);
     //load request_path
     $product->getUrlModel()->getUrl($product);
     /** @var $helper Enterprise_Catalog_Helper_Data */
     $helper = $this->_factory->getHelper('enterprise_catalog');
     $requestPath = $helper->getProductRequestPath($product->getRequestPath(), $product->getStoreId());
     if (empty($requestPath)) {
         $requestPath = 'product-' . $product->getId();
     }
     $targetPath = 'catalog/product/view/id/' . $product->getId();
     if ($categoryId) {
         $category = $this->_getCategory($categoryId);
         $storeIds = $category->getStoreIds();
         //unset default store
         unset($storeIds[$category->getStoreId()]);
         $category->setStoreId(array_pop($storeIds));
         /** @var $categoryRewrite Enterprise_Catalog_Model_Category */
         $categoryRewrite = Mage::getModel('enterprise_catalog/category');
         $categoryRewrite->loadByCategory($category);
         if ($categoryRewrite->getId()) {
             $requestPath = $categoryRewrite->getRequestPath() . '/' . $requestPath;
         }
         $targetPath .= '/category/' . $categoryId;
     }
     $redirect->setIdentifier($requestPath);
     $redirect->setTargetPath($targetPath);
     return $this;
 }
 /**
  * Prepare category form data
  *
  * @param int $categoryId
  * @param Enterprise_UrlRewrite_Model_Redirect $redirect
  * @return Enterprise_Catalog_Block_Adminhtml_Redirect_Edit_Form_Category
  */
 protected function _prepareCategoryFormData($categoryId, Enterprise_UrlRewrite_Model_Redirect $redirect)
 {
     $category = $this->_getCategory($categoryId);
     //load request_path
     $category->getUrl();
     $targetPath = 'catalog/category/view/id/' . $category->getId();
     if ($category->getRequestPath()) {
         /** @var $helper Enterprise_Catalog_Helper_Data */
         $helper = $this->_factory->getHelper('enterprise_catalog');
         $requestPath = $helper->getCategoryRequestPath($category->getRequestPath(), $category->getStoreId());
     } else {
         $requestPath = $targetPath;
     }
     $redirect->setIdentifier($requestPath);
     $redirect->setTargetPath($targetPath);
     return $this;
 }
 /**
  * Get row url
  *
  * @param Enterprise_UrlRewrite_Model_Redirect $row
  * @return string
  */
 public function getRowUrl($row)
 {
     return $this->getUrl('*/*/edit', array('id' => $row->getId(), 'type' => 'custom'));
 }