Uploaded image for project: 'eZ Publish / Platform'
  1. eZ Publish / Platform
  2. EZP-19163

ExtensionOrdering doesn't work with ActiveAccessExtension

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Medium Medium
    • Resolution: Unresolved
    • Affects Version/s: 2011.10, 2011.11, 2011.12, 2012.1, 4.4.1, 4.5.0, 4.6.0
    • Fix Version/s: None
    • Component/s: Legacy > Extensions, Misc
    • Labels:
      None
    • Environment:

      Operating System: Linux Debian
      PHP Version: 5.3.5
      Database and version: MySQL 5.1
      Browser (and version): any

      Description

      Since eZ Publish Fuji, the "Extension Ordering" mechanism enables extensions to define in which order they should be loaded in regards to other, related, extensions. The function is very usefull to manage the loading order of templates and settings from extensions.

      cf. http://doc.ez.no/eZ-Publish/Technical-manual/4.6/Installation/Extensions/Extension-load-ordering

      But the mechanism doesn't work with ActiveAccessExtension activated within siteaccesses.

      For example :
      I have an multisite eZ Publish instance with :

      • A global extension "backend", activated in settings/override/site.ini.append.php, and having default settings
      • A specific extension for site A, activated in settings/siteaccess/site_a/site.ini.append.php, and overriding some settings
      • Another specitic extension for site B, activated in settings/siteaccess/site_b/site.ini.append.php, and overriding some other settings

      I cannot use ExtensionOrdering and extension.xml files to use extension A (or extension B) settings instead of backend settings.

      Steps to reproduce

      Create an eZ Publish instance, with joined files (extensions + settings).

      Go to http://a.mysite.loc

      => You will see the text "extension A" (TestSettings/Extension from extension A), it's OK

      Now, edit settings :
      settings/override/site.ini.append.php : comment line "ActiveExtensions[]=extension_a"
      settings/siteaccess/site_a/site.ini.append.php : uncomment line "#ActiveAccessExtensions[]=site_a"

      Empty caches and reload the page http://a.mysite.loc

      => You will see the text "backend" (TestSettings/Extension from backend), while we wanted to keep settings from "extension A"

        Activity

        Hide
        Gilles Ballini added a comment -

        Here is a patch that seems to solve the issue... but it could probably be done better...
        issue_19163.patch

        Show
        Gilles Ballini added a comment - Here is a patch that seems to solve the issue... but it could probably be done better... issue_19163.patch

          People

          • Assignee:
            unknown
            Reporter:
            Gilles Ballini
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated: