Search code examples
magentowysiwygmagento-1.8

Magento 1.8.1: media directory bug if using symlink


I am having trouble with my Magento install, in the CMS when I go to insert an image with the wysiwig editor the folder keeps opening repeatedly.

The folder structure should be:

- infortis
    - brands
    - fortis
    - ultimo

But what I get is:

-infortis
    -infortis
        -infortis
            -infortis
                -infortis

And this just keeps repeating.

Magento Version 1.8.1. Any help appreciated.


Solution

  • I have found that the following edits makes it work as expected, and works with non-symlinked (dev) resources as well:

    In the same class as mentiond Mage_Cms_Helper_Wysiwyg_Images, apply these patches:

    # This patch file was generated by NetBeans IDE
    # It uses platform neutral UTF-8 encoding and \n newlines.
    --- <html>Images.php (<b>Today 4:14:50 PM</b>)</html>
    +++ <html><b>Current File</b></html>
    @@ -223,7 +223,7 @@
         public function getCurrentUrl()
         {
             if (!$this->_currentUrl) {
    -            $path = str_replace(Mage::getConfig()->getOptions()->getMediaDir(), '', $this->getCurrentPath());
    +            $path = str_replace(realpath(Mage::getConfig()->getOptions()->getMediaDir()), '', $this->getCurrentPath());
                 $path = trim($path, DS);
                 $this->_currentUrl = Mage::app()->getStore($this->_storeId)->getBaseUrl('media') .
                                      $this->convertPathToUrl($path) . '/';
    
    
    
    # This patch file was generated by NetBeans IDE
    # It uses platform neutral UTF-8 encoding and \n newlines.
    --- <html>Images.php (<b>f47f0ff</b>)</html>
    +++ <html><b>Current File</b></html>
    @@ -68,7 +68,7 @@
          */
         public function getStorageRoot()
         {
    -        return Mage::getConfig()->getOptions()->getMediaDir() . DS . Mage_Cms_Model_Wysiwyg_Config::IMAGE_DIRECTORY
    +        return realpath(Mage::getConfig()->getOptions()->getMediaDir()) . DS . Mage_Cms_Model_Wysiwyg_Config::IMAGE_DIRECTORY
                 . DS;
         }