skodak [Tue, 2 Oct 2007 16:20:45 +0000 (16:20 +0000)]
MDL-11555 temporary patch for too long index on mysql - in mysql the limit is 333 unicode chars
move the gradebook cleanup to the end of upgrade.php - please keep it there
martinlanghoff [Tue, 2 Oct 2007 08:46:27 +0000 (08:46 +0000)]
accesslib: dirty context handling now uses cache_flags
get_dirty_contexts() and mark_context_dirty() now use cache_flags
infrastructure. Remove deprecated cleanup_dirty_contexts() - this is
now handled by gc_cache_flags() in a more generic way.
martinlanghoff [Tue, 2 Oct 2007 08:39:44 +0000 (08:39 +0000)]
moodlelib: Introducing the cache_flags functions
These are functions for handling the volatile entries in the
cache_flags table.
get_cache_flags() - get array of current flags
set_cache_flag() - set a single flag
unset_cache_flag() - unset a single flag
gc_cache_flags() - garbage-collect expired flags
martinlanghoff [Tue, 2 Oct 2007 08:34:10 +0000 (08:34 +0000)]
dmllib: more consistent err handling for execute_sql() and others
Silent errors in execute_sql() have been causing us lots of grief.
Turns out that if you have dblogerror set, it _will_ write it to the
logs.
DMLlib wasn't consistent. Most "modern" codepaths were calling both
debugging() and the dblogerror idiom. So we make all calls to
$db->Execute() consistent.
(Some exceptions remain, mostly for hardcoded SQL, such as the SET
statements when we connect...)
gbateson [Tue, 2 Oct 2007 07:46:49 +0000 (07:46 +0000)]
added 4 new functions for Moodle 1.9 gradebook: "hotpot_get_user_grades", "hotpot_update_grades", "hotpot_grade_item_update" and "hotpot_grade_item_delete"
use new function "hotpot_stripslashes()" instead of PHP's "stripslashes()" to remove slashes after preg_replace with "e" modifier, because when MSSQL Server is installed, PHP's "stripslashes()" does not remove slashes, even if the Moodle database is not MSSQL
MDL-10383 added new subarray into $SESSION->activegroup which store active group in groupings for users with accessallgroups permission - defaults to 0 on first use; this should solve the problem when user has accessallgroups only in one activity
MDL-11495 grade letter setting improvements:
* in_null for decimals defaults checks
* store letter settings only in database - no cfg settings
* separate configuration page for letters only - pluginselector+admin tree
* new capability to manage grade letters - similar to scales and outcomes
* added grade_letters db index
* grade letters related minor bugfixing
MDL-11456 the .grade-report-grader table {} style was cascading down to the popups (which use tables, alas...), so I created a number of css classes which now control color, font etc for caption and feedback cells of the popup.
MDL-11451 grade publishing security/privacy improved - new capabilities needed for publishing, by default allowed only for admins; added warning to publishing option
Tweak the styles for <pre> tags in help files. These are mostly used for code samples, and they have a grey background and are shown in a different font, so the indent I am getting rid of is not necessarly to make the structure of the document clearn, and usually just means that the code sample does not fit. Merged from MOODLE_18_STABLE.
MDL-8682: Pressing enter when answering a short answer question can submit the wrong one. To fix this, I have disabled the enter key unless the keyboard focus is on a submit button (or inside a text box or HTML editor).
MDL-9451: Quiz answers can be lost if user navigates before page reloads. I am not totally sure I have fixed this, but I hope so. I moved the printing of the hidden form field with the list of questions on the page to the end of the form, so no answers will be processed unless the whole form loaded. Note that you could still lose data, but only if the page takes a really long time to load and you answer the first question and click submit before the whole quiz is loaded.
MDL-11463: The quiz uses two different timers, which is silly. I have removed the javascript that was ocasionally used to put a timer in the browser's title bar. Now we only use the one in the page for all cases.
Because MDL-8682 also needed javascript, I renamed timer.js to quiz.js so it could be a library of all the quiz's JavaScript, and started including it properly with require_js.
Comment out an if (ajaxenabled()) check that was stopping any javascript included with require_js before print_header from being included, (but not js included afterwareds). See
http://moodle.org/mod/forum/discuss.php?d=81050 for discussion.
MDL-11398 - Random questions sometimes ended up with names different from the cateogry they were actually picking from. Also, the same random questoin could be used in more than one quiz, in which case editing that question would change two quizzes unexpectedly. The fix is:
* Don't let the user set the name for random questions.
* Instead force the name to be "Random (catname)" (localised) whever the question is created or saved.
* When a category is renamed, rename all the random questions in it.
* Remove the restriction that Jamie seems to have added in 1.9 that was preventing the category of random questions from being edited.
change CONTEXT_MODULE to CONTEXT_COURSE in order to fix "Invalid context creation for level 50 instance" error on "mod/hotpot/index.php" caused by get_context_instance(CONTEXT_MODULE, $course->id) in "mod/hotpot/lib.php"