function acquia_search_init in Acquia Connector 7.3
Same name and namespace in other branches
- 7.2 acquia_search/acquia_search.module \acquia_search_init()
Implements hook_init().
File
- acquia_search/
acquia_search.module, line 26 - Integration between Acquia Drupal and Acquia's hosted solr search service.
Code
function acquia_search_init() {
// Add apachesolr module connection overrides if applicable.
$auto_switch_disabled = variable_get('acquia_search_disable_auto_switch', 0);
$subscription = acquia_agent_settings('acquia_subscription_data');
$sub_active = !empty($subscription['active']);
if (!$auto_switch_disabled && $sub_active && !module_exists('acquia_search_multi_subs')) {
module_load_include('php', 'acquia_search', 'src/PreferredSearchCoreService');
global $conf;
$acquia_identifier = acquia_agent_settings('acquia_identifier');
$ah_env = isset($_SERVER['AH_SITE_ENVIRONMENT']) ? $_SERVER['AH_SITE_ENVIRONMENT'] : '';
$sites_foldername = substr(conf_path(), strrpos(conf_path(), '/') + 1);
$ah_db_name = isset($conf['acquia_hosting_site_info']['db']['name']) ? $conf['acquia_hosting_site_info']['db']['name'] : '';
$available_cores = acquia_search_available_cores($subscription);
$environments = apachesolr_load_all_environments();
$core_service = new PreferredSearchCoreService($acquia_identifier, $ah_env, $sites_foldername, $ah_db_name, $available_cores);
$overrode = acquia_search_add_apachesolr_overrides($core_service, $environments);
if ($overrode) {
// If an override was applied, then clear the corresponding cache item.
cache_clear_all('apachesolr:environments', 'cache_apachesolr');
}
}
}