is_booktics_connected() ) { return $tools; } // Services. $tools[] = new Booktics_List_Services_Tool(); $tools[] = new Booktics_Get_Service_Tool(); $tools[] = new Booktics_Create_Service_Tool(); $tools[] = new Booktics_Update_Service_Tool(); // Appointments / bookings. $tools[] = new Booktics_List_Appointments_Tool(); $tools[] = new Booktics_Get_Appointment_Tool(); $tools[] = new Booktics_Get_Upcoming_Bookings_Tool(); $tools[] = new Booktics_Create_Appointment_Tool(); $tools[] = new Booktics_Update_Appointment_Tool(); $tools[] = new Booktics_Reschedule_Appointment_Tool(); $tools[] = new Booktics_Cancel_Appointment_Tool(); // Categories. $tools[] = new Booktics_List_Categories_Tool(); $tools[] = new Booktics_Create_Category_Tool(); $tools[] = new Booktics_Update_Category_Tool(); // Team members. $tools[] = new Booktics_List_Team_Members_Tool(); $tools[] = new Booktics_Get_Team_Member_Tool(); $tools[] = new Booktics_Create_Team_Member_Tool(); $tools[] = new Booktics_Update_Team_Member_Tool(); $tools[] = new Booktics_Get_My_Schedule_Tool(); // Settings, modules, and dashboard (admin-only management). $tools[] = new Booktics_Get_Settings_Tool(); $tools[] = new Booktics_Update_Settings_Tool(); $tools[] = new Booktics_List_Modules_Tool(); $tools[] = new Booktics_Toggle_Module_Tool(); $tools[] = new Booktics_Get_Dashboard_Summary_Tool(); return $tools; } /** * Check whether Booktics is active and connected via Aisentic settings. * * @return bool */ private function is_booktics_connected(): bool { if ( ! function_exists( 'booktics' ) ) { return false; } $saved = get_option( Integration_Controller::OPTION_KEY, [] ); $status = $saved['booktics']['status'] ?? ''; return 'connected' === $status; } }