jamiesensei [Thu, 28 Dec 2006 16:12:22 +0000 (16:12 +0000)]
removed all 'Revert' buttons from forms and removed it altogether from add_action_buttons method since it was decided it didn't contribute to usability.
martinlanghoff [Wed, 27 Dec 2006 22:47:51 +0000 (22:47 +0000)]
$MCACHE - rework memcached support - some rework on eaccelerator
We now have a wrapper memcached support class to handle
initial connection setup, provide the common denominator
calls, plus getforfill() and friends.
The eaccelerator class now returns false to match memcached. The
downside of this is that we cannot store booleans as a false value
is indistinguishable from a false that indicates error or 'key not
found'.
martinlanghoff [Wed, 27 Dec 2006 22:45:13 +0000 (22:45 +0000)]
init_memcached(): only use pconnect if configured to do so
Make pconnections optional - only use pconnect if $CFG->memcachedpconn is
set. In current versions of the memcache client in PECL (v2.0.1),
memcache_pconnect() is buggy and will segfault if reusing a pconnection
to a server that has gone away or restarted.
And hope for a more stable client library in PECL ;-)
martinlanghoff [Wed, 27 Dec 2006 22:44:39 +0000 (22:44 +0000)]
Introducing $MCACHE - Memory-based cache
$MCACHE is initially based on core API that is shared between memcached and
turckmmcache/eaccelerator. The core operations are add(), set() and delete()
This initial implementation uses the PECL-based PHP client. Would be trivial
to add support for a PHP-based client.
The $MCACHE facility can be used for DB cache, text filters cache, and possibly
for sessions.
martinlanghoff [Wed, 27 Dec 2006 22:40:38 +0000 (22:40 +0000)]
rcache_* calls - flesh out logic and use $MCACHE if available
- move from $CFG->enablerecordcache <count> to $CFG->rcache <type>
- if $CFG->rcache === 'internal' use the cache array
otherwise, attempt to use $MCACHE
- implement and use rcache_getforfill() to catch thundering herds
- the cache lifetime is hardcoded to 2s until we understand better the
possible race conditions against updates that are not happening via
update_record() / delete_record()
martinlanghoff [Wed, 27 Dec 2006 22:39:32 +0000 (22:39 +0000)]
dmllib: introducing the rcache_* functions for record cache handling
Abstracted Sam's initial work with $record_cache into a series of functions
that abstract things _just enough_ that we can use an internal
in-memory-array implementation or something that is shared across
processes, like memcached or the turckmmcache/eaccelerator caches.
Also
- added hit/miss stats tracking and reporting
- removed max entries limiting as it was buggy - var names mismatches
and not counting unset()s
martinlanghoff [Tue, 26 Dec 2006 22:48:36 +0000 (22:48 +0000)]
raise_memory_limit() earlier -- resolves OOM on 64-bit platforms
On 64-bit platforms the in-memory footprint of our libraries is quite a bit
larger than usual, and we hit the 8MB default memory limit before we call
raise_memory_limit(). This patch moves raise_memory_limit() and
get_realsize() to setuplib so we can call them earlier, and moves the
call to _before_ we include the libraries.
On AMD64, for MOODLE_17_STABLE the footprint is about 9.5MB. Diet time? :-)
stronk7 [Mon, 25 Dec 2006 19:51:17 +0000 (19:51 +0000)]
Now excel can be generated under iso-8859-1 (safer) based on the
$CFG->excelisofiles (true/false) value. It allows iso-8859-1
compatible sites to use better Excel generation. MDL-7993.
tjhunt [Fri, 22 Dec 2006 15:39:40 +0000 (15:39 +0000)]
MDL-8003 - part - Use formslib for question editing forms
This commit does two things:
1. Gives question types he opion to use formslib for their editing forms, instead of the old mechanism.
2. Converts the truefalse question type to formslib.
skodak [Thu, 21 Dec 2006 10:58:18 +0000 (10:58 +0000)]
MDL-7996 Add ods export support - added ods to course logs with other minor fixes, implemented date support and added missing stub functions for better excel class compatibility
jamiesensei [Tue, 19 Dec 2006 07:03:08 +0000 (07:03 +0000)]
* Added setAdvanced functionality see http://docs.moodle.org/en/Development:lib/formslib.php_setAdvanced
* Added MoodleQuickForm method closeHeaderBefore($elementName); http://docs.moodle.org/en/Development:lib/formslib.php_Form_Definition#Use_Fieldsets_to_group_Form_Elements
* Added moodleform method add_action_buttons(); see http://docs.moodle.org/en/Development:lib/formslib.php_Form_Definition#add_action_buttons.28.24cancel_.3D_true.2C_.24revert_.3D_true.2C_.24submitlabel.3Dnull.29.3B
* is_cancelled method added to moodleform http://docs.moodle.org/en/Development:lib/formslib.php_Usage#Basic_Usage_in_A_Normal_Page
* added hidden labels to elements within groups such as the date_selector select boxes and other elements in 'groups'
* quiz/mod.html migrated to formslib
* glossary/edit.html migrated to formslib
* extended registerNoSubmitButton() functionality to automatically add js to onclick to bypass client side js input validation.
* added no_submit_button_pressed() function that can be used in a similar way to is_cancelled() as a test in the main script to see if some button in the page has been pressed that is a submit button that is used for some dynamic functionality within the form and not to submit the data for the whole form.
* added new condition for disabledIf which allows to disable another form element if no options are selected from within a select element.
* added default 'action' for moodleform - strip_querystring(qualified_me()) http://docs.moodle.org/en/Development:lib/formslib.php_Usage#Basic_Usage_in_A_Normal_Page