MDL-28261 Javascript: Check for a working connection in SCORM activities
MDL-34353 Javascript: Allow chooser dialogues to fall back to non-JS version

In order for a chooser dialogue to be able to fall back to it's non-JS
equivalent, we need to use a different set of styles.

This change makes the chooser dialogue preparation function add a new class
to the body which is utilised in the CSS to accomplish this. When the class
is not present, the dialogue content is displayed inline.
MDL-44719 libraries: Invalid call to ajaxenabled()

A bad conflict resolution in 7eaca5a810123746cdc69bf04dc7dc32a13533bc
wiped this function from the deprecatedlib file. This patch
restores it.

But as we should not call any deprecated function in core we
also remove the its usage.
MDL-32729 Question: Switch to the YUI3 chooser dialogue

This uses the core chooserdialogue and associated style changes to make an
easily generated chooser with question descriptions.
MDL-32729 Question: Convert remaining Questionbank code to YUI3
MDL-43284 Theme: Clean theme errors with padding in Question Bank fixed
MDL-44720 modinfo: make it easier to use cm_info instead of get_coursemodule_from_id

by adding function cm_info::get_course_module_record()
MDL-44824 add missing subplugin type names
MDL-44824 add missing subplugin type names
MDL-44824 add missing subplugin type names
MDL-44762 editor_atto: Closing dropdowns when item is clicked
MDL-43398 Wiki: Choose... options cause SQL errors or seen inappropriate.
MDL-43398 wiki: remove extra Choose... option from select
MDL-44772 editor_atto: Initial height of editor matches textarea's

We set a min-height and a height in JavaScript to force the editor
to start at a certain height, but then it can be expanded thanks
to the CSS property resize. Though as IE does not support the resize
property we ignore we do not set a height so that the editor expands
as we type.
MDL-44834 editor_atto: Delegate change event to one editor
MDL-42816 auth_manual: Add password expiry for manual auth method
MDL-24408 extra_answer_fields : get answers even if they miss extra data

Extra answer data may be optional, saving DB space - i.e. not every row in
question_answers will have respective row in extra answers table. Current
implementation of question_type::get_question_options() won't return such
answers at all. This commit fix that, changing join type for db query.

Also fixed coding style violation in the variable name in get_question_options.
MDL-24408 extra_answer_fields: loading data to the question editing form

Now question_edit_form can load extra answer fields. If a question
type need to do something more complex for particular field, it
can overload added functions without duplicating other code.
MDL-24408 extra_answer_fields: save_question_answers function

question_type::save_question_answers function added, supporting
saving answers and extra answer fields. It can be called from
save_question_options function for the questions, using
question_answers table. Special functions created for overloading
so that every question could tune it to it's own form.

Shortanswer qtype save_question_options() converted as a proof of
concept and for testing purposes.
MDL-24408 extra_question_fields: separate answer data creation code

Now any question using extra_question_fields can overload make_answer
(just as make_hint), instead of overloading whole initialise_question_answers.