Per our component communication principles, the use of event observers in core is banned and should not be used.
See https://moodledev.io/general/development/policies/component-communication#event-observers
Additional rules for event observers:
Events are not allowed to be observed by core or a core subsystem (there are some currently wrong observers in core that should be removed).
This issue is to capture and convert all of those to appropriate hooks and callbacks.
find . -name events.php | xargs grep callback
|
./blocks/recent_activity/db/events.php: 'callback' => 'block_recent_activity_observer::store',
|
./blocks/recent_activity/db/events.php: 'callback' => 'block_recent_activity_observer::store',
|
./blocks/recent_activity/db/events.php: 'callback' => 'block_recent_activity_observer::store',
|
./blocks/recentlyaccesseditems/db/events.php: 'callback' => 'block_recentlyaccesseditems\observer::store',
|
./blocks/recentlyaccesseditems/db/events.php: 'callback' => 'block_recentlyaccesseditems\observer::remove'
|
./course/format/weeks/db/events.php: 'callback' => 'format_weeks_observer::course_updated',
|
./course/format/weeks/db/events.php: 'callback' => 'format_weeks_observer::course_section_created',
|
./course/format/weeks/db/events.php: 'callback' => 'format_weeks_observer::course_section_deleted',
|
./auth/oauth2/db/events.php: 'callback' => '\auth_oauth2\api::user_deleted',
|
./admin/tool/monitor/db/events.php: 'callback' => '\tool_monitor\eventobservers::course_deleted',
|
./admin/tool/monitor/db/events.php: 'callback' => '\tool_monitor\eventobservers::process_event',
|
./admin/tool/monitor/db/events.php: 'callback' => '\tool_monitor\eventobservers::user_deleted',
|
./admin/tool/monitor/db/events.php: 'callback' => '\tool_monitor\eventobservers::course_module_deleted',
|
./admin/tool/dataprivacy/db/events.php: 'callback' => '\tool_dataprivacy\event\user_deleted_observer::create_delete_data_request',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_category_created',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_category_deleted',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_category_restored',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_category_updated',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_created',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_deleted',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_restored',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_updated',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_section_created',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_section_deleted',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_section_updated',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_module_created',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_module_restored',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_module_updated',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::course_module_deleted',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::mod_lesson_page_created',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::mod_lesson_page_deleted',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::mod_lesson_page_updated',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::book_chapter_created',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::book_chapter_deleted',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::book_chapter_updated',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::core_question_created',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::core_question_updated',
|
./admin/tool/brickfield/db/events.php: 'callback' => '\tool_brickfield\eventobservers::core_question_deleted',
|
./admin/tool/log/db/events.php: 'callback' => '\tool_log\log\observer::store',
|
./admin/tool/cohortroles/db/events.php: 'callback' => '\tool_cohortroles\observers::user_deleted',
|
./admin/tool/policy/db/events.php: 'callback' => '\tool_policy\api::create_acceptances_user_created',
|
./enrol/category/db/events.php: 'callback' => 'enrol_category_observer::role_assigned',
|
./enrol/category/db/events.php: 'callback' => 'enrol_category_observer::role_unassigned',
|
./enrol/meta/db/events.php: 'callback' => 'enrol_meta_observer::user_enrolment_created',
|
./enrol/meta/db/events.php: 'callback' => 'enrol_meta_observer::user_enrolment_deleted',
|
./enrol/meta/db/events.php: 'callback' => 'enrol_meta_observer::user_enrolment_updated',
|
./enrol/meta/db/events.php: 'callback' => 'enrol_meta_observer::role_assigned',
|
./enrol/meta/db/events.php: 'callback' => 'enrol_meta_observer::role_unassigned',
|
./enrol/meta/db/events.php: 'callback' => 'enrol_meta_observer::course_deleted',
|
./enrol/meta/db/events.php: 'callback' => 'enrol_meta_observer::enrol_instance_updated',
|
./enrol/cohort/db/events.php: 'callback' => 'enrol_cohort_handler::member_added',
|
./enrol/cohort/db/events.php: 'callback' => 'enrol_cohort_handler::member_removed',
|
./enrol/cohort/db/events.php: 'callback' => 'enrol_cohort_handler::deleted',
|
./message/output/email/db/events.php: 'callback' => '\message_email\event_observers::message_viewed',
|
./question/bank/comment/db/events.php: 'callback' => '\qbank_comment\event\question_deleted_observer::delete_question_comments',
|
./question/bank/tagquestion/db/events.php: 'callback' => '\qbank_tagquestion\event\question_deleted_observer::delete_question_tags'
|
./question/bank/customfields/db/events.php: 'callback' => '\qbank_customfields\event\question_deleted_observer::delete_question_customfields'
|
./question/bank/columnsortorder/db/events.php: 'callback' => '\qbank_columnsortorder\event\plugin_observer::plugin_enabled',
|
./question/bank/columnsortorder/db/events.php: 'callback' => '\qbank_columnsortorder\event\plugin_observer::plugin_disabled',
|
./lib/db/events.php: 'callback' => 'core_badges_observer::course_module_criteria_review',
|
./lib/db/events.php: 'callback' => 'core_badges_observer::badge_criteria_review',
|
./lib/db/events.php: 'callback' => 'core_badges_observer::course_criteria_review',
|
./lib/db/events.php: 'callback' => 'core_badges_observer::profile_criteria_review',
|
./lib/db/events.php: 'callback' => 'core_badges_observer::cohort_criteria_review',
|
./lib/db/events.php: 'callback' => 'core_badges_observer::competency_criteria_review',
|
./lib/db/events.php: 'callback' => 'core_competency\api::observe_course_completed',
|
./lib/db/events.php: 'callback' => 'core_competency\api::observe_course_module_completion_updated',
|
./mod/workshop/allocation/scheduled/db/events.php: 'callback' => '\workshopallocation_scheduled\observer::workshop_viewed',
|
./mod/workshop/allocation/scheduled/db/events.php: 'callback' => '\workshopallocation_scheduled\observer::phase_automatically_switched'
|
./mod/chat/db/events.php: 'callback' => 'chat_user_logout',
|
./mod/quiz/db/events.php: 'callback' => '\mod_quiz\group_observers::course_reset_started',
|
./mod/quiz/db/events.php: 'callback' => '\mod_quiz\group_observers::course_reset_ended',
|
./mod/quiz/db/events.php: 'callback' => '\mod_quiz\group_observers::group_deleted'
|
./mod/quiz/db/events.php: 'callback' => '\mod_quiz\group_observers::group_member_added',
|
./mod/quiz/db/events.php: 'callback' => '\mod_quiz\group_observers::group_member_removed',
|
./mod/quiz/db/events.php: 'callback' => 'quiz_attempt_submitted_handler',
|
./mod/quiz/report/statistics/db/events.php: 'callback' => '\quiz_statistics\event\observer\attempt_submitted::process',
|
./mod/feedback/db/events.php: 'callback' => 'mod_feedback_observer::course_content_deleted',
|
./mod/forum/db/events.php: 'callback' => 'mod_forum_observer::user_enrolment_deleted',
|
./mod/forum/db/events.php: 'callback' => 'mod_forum_observer::role_assigned'
|
./mod/forum/db/events.php: 'callback' => 'mod_forum_observer::course_module_created',
|
./mod/forum/db/events.php: 'callback' => 'mod_forum_observer::course_created',
|
./mod/forum/db/events.php: 'callback' => 'mod_forum_observer::course_updated',
|
./mod/assign/feedback/editpdf/db/events.php: 'callback' => '\assignfeedback_editpdf\event\observer::submission_created',
|
./mod/assign/feedback/editpdf/db/events.php: 'callback' => '\assignfeedback_editpdf\event\observer::submission_updated',
|
./mod/assign/db/events.php: 'callback' => '\mod_assign\group_observers::course_reset_started',
|
./mod/assign/db/events.php: 'callback' => '\mod_assign\group_observers::course_reset_ended',
|
./mod/assign/db/events.php: 'callback' => '\mod_assign\group_observers::group_deleted'
|
./mod/glossary/db/events.php: 'callback' => '\mod_glossary\local\concept_cache::cm_updated',
|
./mod/lesson/db/events.php: 'callback' => '\mod_lesson\group_observers::course_reset_started',
|
./mod/lesson/db/events.php: 'callback' => '\mod_lesson\group_observers::course_reset_ended',
|
./mod/lesson/db/events.php: 'callback' => '\mod_lesson\group_observers::group_deleted'
|
- has been marked as being related by
-
MDL-80332 Add fallback for app launches using custom URL schemes when using auth plugins
-
- Closed
-