Open edX Theming Plugin
Project description
Features
This plugin provides a stable place from where to create and launch your openedx theme.
Compatibility Notes
Open edX Release |
Version |
---|---|
Juniper |
>= 1.0 < 2.0 |
Koa |
>= 2.0 < 3.0 |
Lilac |
>= 2.0 |
Maple |
>= 3.0 |
Nutmeg |
>= 4.0 |
Olive |
>= 5.0 |
Palm |
>= 6.0 |
NOTE: From Lilac version Django 2.2 is not supported, you should use Django 3.2 and eox-tenant >=4.0.
The following changes to the plugin settings are necessary. If the release you are looking for is not listed, then the accumulation of changes from previous releases is enough.
Juniper
EOX_THEMING_BASE_FINDER_BACKEND = 'eox_theming.edxapp_wrapper.backends.j_finders'
EOX_THEMING_BASE_LOADER_BACKEND = 'eox_theming.edxapp_wrapper.backends.j_loaders'
EOX_THEMING_SITE_THEME_BACKEND = 'eox_theming.edxapp_wrapper.backends.j_models'
EOX_THEMING_CONFIGURATION_HELPER_BACKEND = 'eox_theming.edxapp_wrapper.backends.j_configuration_helpers'
EOX_THEMING_THEMING_HELPER_BACKEND = 'eox_theming.edxapp_wrapper.backends.j_theming_helpers'
EOX_THEMING_STORAGE_BACKEND = 'eox_theming.edxapp_wrapper.backends.j_storage'
STATICFILES_STORAGE = 'eox_theming.theming.storage.EoxProductionStorage'
EOX_THEMING_EDXMAKO_BACKEND = 'eox_theming.edxapp_wrapper.backends.j_mako'
Koa (optional)**
EOX_THEMING_STORAGE_BACKEND = 'eox_theming.edxapp_wrapper.backends.l_storage'
EOX_THEMING_EDXMAKO_BACKEND = 'eox_theming.edxapp_wrapper.backends.l_mako'
Lilac - Maple - Nutmeg - Olive - Palm
EOX_THEMING_STORAGE_BACKEND = 'eox_theming.edxapp_wrapper.backends.l_storage'
EOX_THEMING_EDXMAKO_BACKEND = 'eox_theming.edxapp_wrapper.backends.l_mako'
Those settings can be changed in eox_theming/settings/common.py or, for example, in ansible configurations.
NOTE: the current common.py works with Open edX lilac version.
Installation
Open edX devstack
Clone this repo in the src folder of your devstack.
Open a new Lms/Devstack shell.
Install the plugin as follows: pip install -e /path/to/your/src/folder
Restart lms/cms services.
Tutor
Install the plugin with OPENEDX_EXTRA_PIP_REQUIREMENTS, this should be added in the config.yml.
Restart lms/cms services.
Usage
Include a usage description for your plugin.
Settings
To start using eox-theming, we must make the settings shown in the tenant settings (if we don’t have one created, create it and configure it), add some available settings to the tenant:
{"THEME_OPTIONS":{"theme":{"grandparent":"test-3","name":"test-1","parent":"test-2"}}}
For this, you must also make sure you have eox-tenant installed in your environment, and to configure it we must locate the common.py file and set the USE_EOX_TENANT variable to True
Include the follow configuration in devstack.py:
"""
Production Django settings for eox_theming project.
"""
from __future__ import unicode_literals
def plugin_settings(settings):
"""
Set of plugin settings used by the Open Edx platform.
More info: https://github.com/edx/edx-platform/blob/master/openedx/core/djangoapps/plugins/README.rst
"""
settings.STATICFILES_FINDERS = [
'eox_theming.theming.finders.EoxThemeFilesFinder',
] + settings.STATICFILES_FINDERS
settings.STATICFILES_STORAGE = 'eox_theming.theming.storage.EoxDevelopmentStorage'
from lms.envs.common import _make_mako_template_dirs # pylint: disable=import-error
settings.ENABLE_COMPREHENSIVE_THEMING = True
settings.COMPREHENSIVE_THEME_DIRS = [
'/edx/src/themes/ednx-test-themes/edx-platform/',
]
settings.TEMPLATES[1]["DIRS"] = _make_mako_template_dirs
settings.derive_settings("lms.envs.devstack")
Note that in COMPREHENSIVE_THEME_DIRS it must contain a list of directories where the folders of the themes to be tested are located.
Contributing
Contributions are welcome! See our CONTRIBUTING file for more information - it also contains guidelines for how to maintain high code quality, which will make your contribution more likely to be accepted.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for eox_theming-6.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 43cd01afea138e5849d8a454a6da75a1f22bb250a8fbff70e01895e7b904f183 |
|
MD5 | 28db3d55b86eaa42213e94db5debfcf8 |
|
BLAKE2b-256 | 3ffdd83cd1d9699d5bdc4db053cfec2bcc3f909a5f2a0c375720f2ab2d5a99ea |