The Tutor class runs the LMS, the Utils class contains all methods, and tutor_utils() functions return the classes. This document explains all of the available hooks inside the tutor/classes/
folder.
Admin.php
do_action('tutor_admin_register');
Ajax.php
do_action('tutor_before_rating_placed');
do_action('tutor_after_rating_placed', $comment_id);
do_action('tutor_before_add_question', $course_id);
do_action('tutor_after_add_question', $course_id, $comment_id);
do_action('tutor_before_answer_to_question');
do_action('tutor_after_answer_to_question', $comment_id);
do_action('tutor_addon_before_enable_disable');
do_action("tutor_addon_before_enable_{$addonFieldName}");
do_action('tutor_addon_before_enable', $addonFieldName);
do_action('tutor_addon_after_enable', $addonFieldName);
do_action("tutor_addon_after_enable_{$addonFieldName}");
do_action("tutor_addon_before_disable_{$addonFieldName}");
do_action('tutor_addon_before_disable', $addonFieldName);
do_action('tutor_addon_after_disable', $addonFieldName);
do_action("tutor_addon_after_disable_{$addonFieldName}");
do_action('tutor_addon_after_enable_disable');
do_action( 'tutor_login_failed' );
Course.php
do_action('tutor_course_builder_metabox_before', get_the_ID());
do_action('tutor_course_builder_metabox_after', get_the_ID());
do_action( "tutor_save_course", $post_ID, $post);
do_action( "tutor_save_course_after", $post_ID, $post);
do_action('tutor_course_complete_before', $course_id);
do_action('tutor_course_complete_after', $course_id);
do_action('tutor/course/started', $course_id);
FormHandler.php
do_action( 'lostpassword_post', $errors );
do_action( 'retrieve_password', $user_login );
do_action( 'tutor_reset_password_notification', $user_login, $key );
do_action( 'tutor_user_reset_password', $user );
do_action( 'tutor_user_reset_password_login', $user );
Instructor.php
do_action('tutor_new_instructor_after', $user_id);
do_action('tutor_new_instructor_after', $user_id);
do_action('tutor_add_new_instructor_before');
do_action('tutor_add_new_instructor_after', $user_id);
do_action('tutor_before_approved_instructor', $instructor_id);
do_action('tutor_after_approved_instructor', $instructor_id);
do_action('tutor_before_blocked_instructor', $instructor_id);
do_action('tutor_after_blocked_instructor', $instructor_id);
Instructors_List.php
do_action('tutor_before_approved_instructor', $instructor_id);
do_action('tutor_after_approved_instructor', $instructor_id);
do_action('tutor_before_blocked_instructor', $instructor_id);
do_action('tutor_after_blocked_instructor', $instructor_id);
Lesson.php
do_action('tutor/lesson/created', $lesson_id);
do_action('tutor/lesson_update/before', $lesson_id);
do_action('tutor/lesson_update/after', $lesson_id);
do_action('tutor_lesson_completed_before', $lesson_id);
do_action('tutor_lesson_completed_after', $lesson_id);
Options.php
do_action('tutor_option_save_before');
do_action('tutor_option_save_after');
Q_and_A.php
do_action('tutor_before_answer_to_question');
do_action('tutor_after_answer_to_question', $answer_id);
Quiz.php
do_action('tutor_quiz/start/before', $quiz_id, $user_id);
do_action('tutor_quiz/start/after', $quiz_id, $user_id, $attempt_id);
do_action('tutor_quiz/attempt_analysing/before', $attempt_id);
do_action('tutor_quiz/attempt_ended', $attempt_id);
do_action('tutor_quiz_before_finish', $attempt_id, $quiz_id, $attempt->user_id);
do_action('tutor_quiz_finished', $attempt_id, $quiz_id, $attempt->user_id);
do_action('tutor_quiz_timeout', $attempt_id, $quiz_id, $attempt->user_id);
do_action('tutor_quiz_review_answer_before', $attempt_answer_id, $attempt_id, $mark_as);
do_action('tutor_quiz_review_answer_after', $attempt_answer_id, $attempt_id, $mark_as);
do_action('tutor_initial_quiz_created', $quiz_id);
do_action('tutor_course_builder_before_quiz_btn_action', $quiz_id);
do_action('tutor_delete_quiz_before', $quiz_id);
do_action('tutor_delete_quiz_after', $quiz_id);
do_action('tutor_quiz_updated', $quiz_id);
do_action('tutor_course_builder_before_quiz_btn_action', $quiz_id);
do_action('tutor_quiz_settings_updated', $quiz_id);
Student.php
do_action('tutor_profile_update_before');
do_action('tutor_profile_update_after', $user_id);
Template.php
do_action('tutor_lesson_load_before', $template);
Tutor.php
do_action('tutor_before_load');
do_action('tutor_loaded');
do_action('tutor_before_run');
do_action('tutor_after_run');
do_action('tutor_action_'.$_REQUEST['tutor_action']);
Tutor_Setup.php
do_action( 'admin_enqueue_scripts' );
do_action( 'admin_print_styles' );
do_action( 'admin_head' );
Utils.php
do_action('tutor_is_enrolled_before', $course_id, $user_id);
do_action('tutor_mark_lesson_complete_before', $post_id, $user_id);
do_action('tutor_mark_lesson_complete_after', $post_id, $user_id);
do_action('tutor_before_enroll', $course_id);
do_action('tutor_after_enroll', $course_id, $isEnrolled);
do_action('tutor/course/enrol_status_change/before',$enrol_id, $new_status );
do_action('tutor/course/enrol_status_change/after',$enrol_id, $new_status );
do_action('tutor_before_approved_instructor', $instructor_id);
do_action('tutor_after_approved_instructor', $instructor_id);
do_action('tutor_before_blocked_instructor', $instructor_id);
do_action('tutor_after_blocked_instructor', $instructor_id);
do_action( 'password_reset', $user, $new_pass );
Withdraw.php
do_action('tutor_withdraw_options_save_before');
do_action('tutor_withdraw_options_save_after');
do_action('tutor_withdraw_before');
do_action('tutor_insert_withdraw_before', $withdraw_data);
do_action('tutor_insert_withdraw_after', $withdraw_id, $withdraw_data);
do_action('tutor_withdraw_after');
Withdraw_Requests_List.php
do_action('tutor_before_delete_withdraw', $withdraw_id);
do_action('tutor_after_delete_withdraw', $withdraw_id);
do_action('tutor_before_approved_withdraw', $withdraw_id);
do_action('tutor_after_approved_withdraw', $withdraw_id);
do_action('tutor_before_rejected_withdraw', $withdraw_id);
do_action('tutor_after_rejected_withdraw', $withdraw_id);