Uploaded image for project: 'CiviCRM'
  1. CiviCRM
  2. CRM-18792

Allow extensions to define CSS themes

    Details

    • Versioning Impact:
      Patch (backwards-compatible bug fixes)
    • Documentation Required?:
      Developer Doc
    • Sprint:
      4.7.10 Developery stuff
    • Funding Source:
      Needs Funding

      Description

      = Context =

      We are looking to improve CiviCRM's UI along two fronts – changing both the visual language (with a more modern appearance) and the CSS conventions (with a more standardized, Bootstrap-based markup – enabling easier integration and training). During the interim period (while the new visuals/conventions mature), we need to ensure that:

      • (a) some sites (with limited needs/screens/use-cases) can go live
      • (b) the existing look and feel doesn't get compromised, and
      • (c) existing extensions/customizations continue to work.

      = Architecture =

      There will be two visual languages (themes), Greenwich (the current look-and-feel) and Shoreditch (the new look-and-feel). These themes are defined by way of hook_civicrm_themes.

      Any theme should define two main CSS files, "css/civicrm.css" (which provides styling for the current markup using the crm-* coding convention) and "css/bootstrap.css" (which provides styling for new markup using the http://getbootstrap.com/ coding conventions).

      Any request to add a CSS file will be passed through the theming layer. If the theme does not provide the file (via hook or naming-convention), then it will be loaded the same as today.

        Attachments

          Activity

            People

            • Assignee:
              timotten Tim Otten
              Reporter:
              timotten Tim Otten
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: