Thanks to MDL-34936 and unit tests this was discovered like 2 new
places calling to get_fast_modinfo() without the sectioncache
column contents. Potential performance problem, leading to
reseting and recalculation of caches all the time.
As part of this change I added a new condition for user fields: is not equal.
I also copied the strings being used from the filters lang file to the condition
lang file and changed the uses in code.
AMOS BEGIN
CPY [contains,filters],[contains,condition]
CPY [doesnotcontain,filters],[doesnotcontain,condition]
CPY [isequalto,filters],[isequalto,condition]
CPY [startswith,filters],[startswith,condition]
CPY [endswith,filters],[endswith,condition]
CPY [isempty,filters],[isempty,condition]
AMOS END
* Fixed up database installation and upgrade code
* Reverted some whitespace optimisations to minimise conflicts
* Optimised commits made by Mark to reduce complexity and add tracker issue numbers
Credit: original version done by Kirill Astashov of NetSpot (netspot.com.au),
finished and tweaked by sam.
This change adds conditional availability support for sections analagous to
that already available for activities. (Backend, UI, backup/restore.)
In order that this feature does not reduce performance, section cacheing has
also been added using a new course 'sectioncache' field analagous to modinfo.
The new feature integrates with activity availability so that activities
inside sections which are not available are automatically not available
themselves (meaning it works to restrict access).
Change also adds minor feature to date-time selector so you can specify the time it uses as default when the value is 0 (disabled).
Credit: This feature was developed collaboratively by Charles Fulton, Neill Magill, and me.