Andrew Nicols 8f37e6ecff MDL-75289 mod_data: Make JS more resilient
This change makes the JS in for preset management more resilient.

Previously, if the button was not on the page then an error was thrown.

Instead this code changes the listener to listen to the document and
filters the clicked element based on the same selector. This is a much
safer approach as it will not error if the selector was not found on the
page.

In this case the behat test introduced elsewhere in this issue is
testing a scenario where the Save as preset button is not present
because there are no fields to store as a preset.
2022-11-03 10:02:23 +08:00
..

ACTIVITY MODULES
----------------

These are main modules in Moodle, allowing various activities.


Each of these modules contains a number of expected components:

  mod_form.php: a form to setup/update a module instance

  version.php: defines some meta-info and provides upgrading code

  pix/icon.gif: a 16x16 icon for the module

  db/install.xml: an SQL dump of all the required db tables and data

  index.php: a page to list all instances in a course

  view.php: a page to view a particular instance

  lib.php: any/all functions defined by the module should be in here.
         constants should be defined using MODULENAME_xxxxxx
         functions should be defined using modulename_xxxxxx

         There are a number of standard functions:

         modulename_add_instance()
         modulename_update_instance()
         modulename_delete_instance()

         modulename_user_complete()
         modulename_user_outline()

         modulename_cron()

         modulename_print_recent_activity()


If you are a developer and interested in developing new Modules see:

   Moodle Documentation:  http://moodle.org/doc
   Moodle Community:      http://moodle.org/community