You are here

function acquia_search_should_set_read_only_mode in Acquia Connector 8

Determine if we should enforce read-only mode.

Return value

bool TRUE if acquia_search module should enforce the read-only mode, FALSE otherwise.

9 calls to acquia_search_should_set_read_only_mode()
acquia_search_form_search_api_index_edit_form_alter in acquia_search/acquia_search.module
Implements hook_form_FORM_ID_alter().
acquia_search_form_search_api_server_edit_form_alter in acquia_search/acquia_search.module
Implements hook_form_FORM_ID_alter().
acquia_search_form_search_api_server_status_alter in acquia_search/acquia_search.module
Implements hook_form_FORM_ID_alter().
acquia_search_preprocess_search_api_index in acquia_search/acquia_search.module
Implements hook_preprocess_HOOK().
acquia_search_preprocess_search_api_server in acquia_search/acquia_search.module
Implements hook_preprocess_HOOK().

... See full list

File

acquia_search/acquia_search.module, line 169
Integration between Acquia Drupal and Acquia's hosted solr search service.

Code

function acquia_search_should_set_read_only_mode() {

  // If search config is overridden in settings.php we can't enforce anything.
  if (acquia_search_is_connection_config_overridden()) {
    return FALSE;
  }

  // Check if auto-switch or read-only modes are disabled in settings.
  $auto_switch_disabled = \Drupal::config('acquia_search.settings')
    ->get('disable_auto_switch');
  $disable_auto_read_only = \Drupal::config('acquia_search.settings')
    ->get('disable_auto_read_only');
  if ($auto_switch_disabled || $disable_auto_read_only) {
    return FALSE;
  }

  // If subscription is expired, then DO enforce read-only mode.
  $subscription = new Subscription();
  if (!$subscription
    ->isActive()) {
    return TRUE;
  }

  // If there is no preferred core, then DO enforce read-only mode.
  $core_service = acquia_search_get_core_service();
  if (!$core_service
    ->isPreferredCoreAvailable()) {
    return TRUE;
  }
  return FALSE;
}