While searching for existing files if directory
separator is not correct then original files
and directories will be deleted. So use DIRECTORY_SEPARATOR.
Specifically on paste - we don't need all the random style attributes
from content on the clipboard. When you copy from a webpage - the browser
inlines all the styles from the page so that the pasted content will look
like the place it was copied from. But this is never what you want - you
want the content on paste, but with no special styling.
* Add the possibility to make it works as before (with categrory name or idnumber).
* Add possibility to specify nested categories by name or idnumber.
* Fix error in core_course_courselib_testcase::test_course_created_event because dependency with imsenterprise
* Feature 1: Allow nested categories when creating courses.
* Feature 2: Allow updates to course Full Name and Short Name.
* Feature 3: Allow setting authentication type for users.
* Feature 4: Allow updates to users.
Also added tests and updated course update routines so it doesn't
muck with DB directly.
uniqid() may returns the same id for faster machines (seen on iis)
so use html_writer::random_id(), to ensure id is different and
navigation don't break
Upstream: https://github.com/ADOdb/ADOdb/pull/259
Prevent segfault with ocipo driver on php7.
The OCIFetchinto function is causing segfaults on php7 - probably because the fields array
is not initialised or it is optimised out. This fixes just changes to use the safer function
oci_fetch_array instead.
While this ony seems to affect MySQL, better put the filter/conditions
on every query so the temporary view/table does not need to handle
thousands of potentially unrelated records.
These are our bugs actually - the oci docs are very clear that bound
params should be in-scope when oci_execute is called - and due to pass by value etc,
this was not true for our driver.
There is another bug that needed fixing - OCI barfs if null values are bound - this
can be avoided by setting them to '' which oci treats as null.
And finally - all our lob/clob/blob hacks were also binding to local "out-of-scope" vars.