mirror of
https://github.com/moodle/moodle.git
synced 2025-08-03 16:13:28 +02:00
Merge branch 'MDL-56057_master' of git://github.com/dmonllao/moodle
This commit is contained in:
commit
aa46cb9503
2 changed files with 21 additions and 28 deletions
|
@ -9700,19 +9700,13 @@ class admin_setting_searchsetupinfo extends admin_setting {
|
||||||
$return = '';
|
$return = '';
|
||||||
$brtag = html_writer::empty_tag('br');
|
$brtag = html_writer::empty_tag('br');
|
||||||
|
|
||||||
// Available search areas.
|
|
||||||
$searchareas = \core_search\manager::get_search_areas_list();
|
$searchareas = \core_search\manager::get_search_areas_list();
|
||||||
$anyenabled = false;
|
$anyenabled = !empty(\core_search\manager::get_search_areas_list(true));
|
||||||
$anyindexed = false;
|
$anyindexed = false;
|
||||||
foreach ($searchareas as $areaid => $searcharea) {
|
foreach ($searchareas as $areaid => $searcharea) {
|
||||||
list($componentname, $varname) = $searcharea->get_config_var_name();
|
list($componentname, $varname) = $searcharea->get_config_var_name();
|
||||||
if (!$anyenabled) {
|
if (get_config($componentname, $varname . '_indexingstart')) {
|
||||||
$anyenabled = get_config($componentname, $varname . '_enabled');
|
$anyindexed = true;
|
||||||
}
|
|
||||||
if (!$anyindexed) {
|
|
||||||
$anyindexed = get_config($componentname, $varname . '_indexingstart');
|
|
||||||
}
|
|
||||||
if ($anyenabled && $anyindexed) {
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -198,13 +198,10 @@ class manager {
|
||||||
*/
|
*/
|
||||||
public static function get_search_area($areaid) {
|
public static function get_search_area($areaid) {
|
||||||
|
|
||||||
// Try both caches, it does not matter where it comes from.
|
// We have them all here.
|
||||||
if (!empty(static::$allsearchareas[$areaid])) {
|
if (!empty(static::$allsearchareas[$areaid])) {
|
||||||
return static::$allsearchareas[$areaid];
|
return static::$allsearchareas[$areaid];
|
||||||
}
|
}
|
||||||
if (!empty(static::$enabledsearchareas[$areaid])) {
|
|
||||||
return static::$enabledsearchareas[$areaid];
|
|
||||||
}
|
|
||||||
|
|
||||||
$classname = static::get_area_classname($areaid);
|
$classname = static::get_area_classname($areaid);
|
||||||
|
|
||||||
|
@ -224,13 +221,16 @@ class manager {
|
||||||
public static function get_search_areas_list($enabled = false) {
|
public static function get_search_areas_list($enabled = false) {
|
||||||
|
|
||||||
// Two different arrays, we don't expect these arrays to be big.
|
// Two different arrays, we don't expect these arrays to be big.
|
||||||
if (!$enabled && static::$allsearchareas !== null) {
|
if (static::$allsearchareas !== null) {
|
||||||
return static::$allsearchareas;
|
if (!$enabled) {
|
||||||
} else if ($enabled && static::$enabledsearchareas !== null) {
|
return static::$allsearchareas;
|
||||||
return static::$enabledsearchareas;
|
} else {
|
||||||
|
return static::$enabledsearchareas;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
$searchareas = array();
|
static::$allsearchareas = array();
|
||||||
|
static::$enabledsearchareas = array();
|
||||||
|
|
||||||
$plugintypes = \core_component::get_plugin_types();
|
$plugintypes = \core_component::get_plugin_types();
|
||||||
foreach ($plugintypes as $plugintype => $unused) {
|
foreach ($plugintypes as $plugintype => $unused) {
|
||||||
|
@ -248,8 +248,10 @@ class manager {
|
||||||
|
|
||||||
$areaid = static::generate_areaid($componentname, $areaname);
|
$areaid = static::generate_areaid($componentname, $areaname);
|
||||||
$searchclass = new $classname();
|
$searchclass = new $classname();
|
||||||
if (!$enabled || ($enabled && $searchclass->is_enabled())) {
|
|
||||||
$searchareas[$areaid] = $searchclass;
|
static::$allsearchareas[$areaid] = $searchclass;
|
||||||
|
if ($searchclass->is_enabled()) {
|
||||||
|
static::$enabledsearchareas[$areaid] = $searchclass;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -269,20 +271,17 @@ class manager {
|
||||||
|
|
||||||
$areaid = static::generate_areaid($componentname, $areaname);
|
$areaid = static::generate_areaid($componentname, $areaname);
|
||||||
$searchclass = new $classname();
|
$searchclass = new $classname();
|
||||||
if (!$enabled || ($enabled && $searchclass->is_enabled())) {
|
static::$allsearchareas[$areaid] = $searchclass;
|
||||||
$searchareas[$areaid] = $searchclass;
|
if ($searchclass->is_enabled()) {
|
||||||
|
static::$enabledsearchareas[$areaid] = $searchclass;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Cache results.
|
|
||||||
if ($enabled) {
|
if ($enabled) {
|
||||||
static::$enabledsearchareas = $searchareas;
|
return static::$enabledsearchareas;
|
||||||
} else {
|
|
||||||
static::$allsearchareas = $searchareas;
|
|
||||||
}
|
}
|
||||||
|
return static::$allsearchareas;
|
||||||
return $searchareas;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue