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"
MDL-11419 - groups: interface enhancements + new features:
* Display the grouping a course module belongs to on the course page - for course managers only.
* When adding users to groups, display the groups a user already belongs to.
* Added an overview report that shows groupings, groups and members for a course.
* Added a dialogue to automatically create groups and assign members based on either the number of desired groups or the number of desired users per group.