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

Improve user preferences

    XMLWordPrintable

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Won't Do
    • 2.8
    • None
    • Libraries

    Description

      There are several issues regarding user preferences presently including the following:

      • Adding a user preferences page.
      • Adding caching to user preferences.
      • Better management and separation of user preferences.

      For project week I decided to look at the user preferences API and how it could be improved.

      I came up with a solution the extended the current existing API and introduced a means by which to define user preferences in code.
      Defined user preferences would:

      • Manage the defaults and validation of the user preferences to ensure safe interaction throughout the code base.
      • Manage the options available for preferences with options to ensure they were consistent.
      • Provide a means by which to collect user preferences and display them in a way that allows them to be edited.

      My changes include:

      • Extending the API to allow user preferences to be defined. This includes making use of the preference component in namespaces.
      • Extend the database structure to include the component a user preference is associated with, this allows for us to avoid conflicts and make full use of the preference namespace.
      • Implement a user preferences page and form to allow the preferences to be viewed and edited in an organised way.
      • Convert several preferences as a proof of concept.

      Attachments

        Issue Links

          Activity

            People

              samhemelryk Sam Hemelryk
              samhemelryk Sam Hemelryk
              David Woloszyn, Huong Nguyen, Jake Dallimore, Meirza, Michael Hawkins, Raquel Ortega, Safat Shahin, Stevani Andolo
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: