Major tasks undertaken in this patch:
* New format_text argument, overflowdiv.
* New page layout Report.
* Review of all format_text calls.
* Added support for the report layout to all themes.
* Changed forum post display from tables to divs.
There was a problem with properties $to, $ReplyTo and $error_count that
are now private. $error_count is accessible via public IsError() method.
For the other two, we needed them just because of post-processing charset
conversion. So I just made sure that the charset is converted before
the recipent and reply-to names are added to the PHPMailer.
Also, I do not instantiate Typo3 during every email if it is not needed
and I pass the character set to it in lower case now as stated in
textlib documentation.
The method used to be set as private in PHPdocs @access property in the
versions for PHP4. But apparenty upstream considers the function public.
Also, if the function did not declare visibility explicitly, it was
considered public anyway.
It was unnecessary on modern browsers, since they let thought a pop-up if you just clicked on a link, so this check was just causing an annoying and misleading alert.
Since the popupchecker was only used here, and since it was implemented in a way that does not work on all browsers, I just deleted the function. If anyone ever finds that they acutally need this functionality, they can re-implement it in a way that works.
The unerlying problem seemed to be too many uses of pass-by-reference in listlib, where it was not necessary.
In investigating this code, I ended up doing a fair bit of cleaning up. Apologies that it leads to an unclear changeset.
Credit goes to Mauno Korpelainen for the tip on how to sort out this IE
behaviour. Also, I moved compressed dialog.js to the revision directory to prevent
browser caching issues.
That bit of JavaScript from mod/quiz/attempt.php is needed in question preview too, so refactor a bit.
I was disappointed to find that the
$PAGE->requires->js_module('core_question_engine');
line was needed in quiz_get_js_module, but it seems to be.
Also change non-Moodle-y string "End test..." to "Finish attempt..."
It was always casting the result to an object, even when it was an empty array. I changed it to return null in this case. So that if (get_config('a_plugin')) { /* Do something relying on the pugin having config */ ) works.
I forgot to unset the $CFG->emoticon from the memory so the upgrade
process still had the old emoticons format loaded in the memory which
led to coding exception.
To reproduce it, I just added a smiley via the popup and inserted some
character directly afterwards. While the smiley img was saved, the text
was not 8-o (it even did not appear in the HTML source view of the
editor before the save).