Adding the declaration of the settings object to openedx.conf to be able to import it from a nicer location
Resolving quality violations
Merging dicts with the settings definition when they exist in the microsite configuration
Using a cache to improve the perfomance of quering any dictionary in the microsite definition
Ignoring the invalid-name pylint warning since the names must be kept thsi way to stay the same as the ones in django.
Removing the default dict argument as per https://docs.python.org/2/tutorial/controlflow.html#default-argument-values
Extracting the implementation of the microsite to a selectable backend.
Leaving the function startup.enable_microsites for backwards compatibilityy
Adding a database backend
Using a cache to improve the perfomance of quering any dictionary in the microsite definition.
Changed the database backend so that it extends the settings file backend and removed all the unnecessary methods.
Using the backend provider for the get_dict function
some tweeks and some initial unit tests
Using getattr as a function insteal of calling the underlying __getattr__ directly
Adding an ModelAdmin object for the microsite model in the django-admin panel
refactor enable_microsites()
consolidate/refactor some shared code
add config to aws.py and add migration files
fix tests
Changes to get the backends to run after the refactor
add archiving capabilities to microsites. Also make a few notes about performance improvements to make
fix tests
Making the query to find if microsites exist in the database faster
add ORG to microsite mapping tables and some performance improvements
allow for Mako templates to be pulled from the database
fix tests
For the database template backend the uri of the template does not use the filesystem relative path
Fixing pylint violations
Added caching of the templates stored in the database
Fixing pylint errors
fix pylint
Clearing the cache on model save
Fixing pylint errors
rebased and added test coverage
rebased cdodge/microsite-improvements branch with master and added test
coverage
added missing migration
fix quality violations
add more test coverage
mattdrayer: Add microsite_configuration to cms.INSTALLED_APPS
added microsite settings to cms/envs/test.py
run session cookie tests only in LMS
fixed broken tests
putting middleware changes back
Preventing the template_backend to be called on requests which have no microsite
changes to address feedback from mjfrey
changed BaseMicrositeBackend to AbstractBaseMicrositeBackend
changes after feedback from mattdrayer
fixed broken tests and quality violations
Allowing the backend to handle the enable_pre_startup routine
Typos and docstrings
Adressing feedback
Fixing python tests
add comment to explain why we need enable_microsites_pre_startup()
On the older firefox version (28), the offset approach fails. This
update is being made as part of an effort to upgrade to firefox 42
incrementally. So we are including logic for Firefox 28 vs 42 that
we can remove after the upgrade.
Changing a field name in the way that we did (updating the Python
variable name and switching it to point to the old DB column) confuses
Django's migration autodetector. No DB changes are actually necessary,
but it thinks that a field has been removed and a new one added. This
means that Django will ask users to generate the migration it thinks
is necessary, which ended up with us dropping data. The fix is to run
the same migration on Django's internal model of the DB state, but not
actually touch the DB.
There's a test to ensure users can't upload too large of a profile picture, so the picture was too small to trigger that behavior, and now fails. This just returns the image to its original size.
CR comments
Whitespace
wip test refactoring
more test refactoring
Re-write download URL too.
Test fixes related to download change, and fix
wip, re-locating tests
update classname
Quality fixes