Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-27280

csspostprocess does not accept arrays

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 2.0
    • Fix Version/s: None
    • Component/s: Themes
    • Labels:
      None
    • Environment:
      2.0.2+
    • Affected Branches:
      MOODLE_20_STABLE

      Description

      This issue is related to MDL-25856 - it seems that in that ticket it was decided that a theme creator should call the parent csspostprocess function if they wanted it, rather than Moodle doing it manually. The issue is that csspostprocess doesn't accept an array.

      When creating a child theme that has its own postprocessing based off of a parent that also has postprocessing, only one can be called, not both.

      Here's what happens:
      $THEME->csspostprocess = array('parent_process_css', 'child_process_css');
      will cause Moodle to throw errors about not being able to parse $csspostprocess.

      Expected result:
      Each value in the array would be parsed and the process_css function would be called for each theme and then properly rendered in that order.

      Usage scenario:
      Theme Parent has a single setting that defines the URL for the site logo
      Themes Child1, Child2, and Child3 have a variety of different settings including colors, etc...

      Ideally the admin would be able to change the logo url in the Parent settings page and it would propagate to Child1, Child2, and Child3 automatically.

      As it is, the settings, lib functions, and strings must first be removed from the parent theme, and then replicated in Child1, Child2, and Child3 - then the admin must go to the settings page for Child1, Child2, and Child3 to change the logo url.

      Obviously the more settings that the parent has the more trouble the current model becomes to maintain (e.g. logo url, footer information, font size options, etc...) and the more child themes that are created off of the parent theme cause the amount of extra work to increase exponentially.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Votes:
                  4 Vote for this issue
                  Watchers:
                  11 Start watching this issue

                  Dates

                  • Created:
                    Updated: