diff --git a/lib/classes/task/search_index_task.php b/lib/classes/task/search_index_task.php index 870c4dc24f8..7b6f8011d6a 100644 --- a/lib/classes/task/search_index_task.php +++ b/lib/classes/task/search_index_task.php @@ -46,8 +46,7 @@ class search_index_task extends scheduled_task { * Throw exceptions on errors (the job will be retried). */ public function execute() { - if (!\core_search\manager::is_global_search_enabled() && - !get_config('core', 'searchindexwhendisabled')) { + if (!\core_search\manager::is_indexing_enabled()) { return; } $globalsearch = \core_search\manager::instance(); diff --git a/lib/classes/task/search_optimize_task.php b/lib/classes/task/search_optimize_task.php index 1a006c7dde5..0c55179b017 100644 --- a/lib/classes/task/search_optimize_task.php +++ b/lib/classes/task/search_optimize_task.php @@ -49,8 +49,7 @@ class search_optimize_task extends scheduled_task { * Throw exceptions on errors (the job will be retried). */ public function execute() { - if (!\core_search\manager::is_global_search_enabled() && - !get_config('core', 'searchindexwhendisabled')) { + if (!\core_search\manager::is_indexing_enabled()) { return; } diff --git a/search/classes/manager.php b/search/classes/manager.php index 3e8daac9d8e..c8425a157c5 100644 --- a/search/classes/manager.php +++ b/search/classes/manager.php @@ -157,6 +157,17 @@ class manager { return !empty($CFG->enableglobalsearch); } + /** + * Returns whether indexing is enabled or not (you can enable indexing even when search is not + * enabled at the moment, so as to have it ready for students). + * + * @return bool True if indexing is enabled. + */ + public static function is_indexing_enabled() { + global $CFG; + return !empty($CFG->enableglobalsearch) || !empty($CFG->searchindexwhendisabled); + } + /** * Returns an instance of the search engine. *