You are here

function search_api_acquia_get_search_status_message in Acquia Search for Search API 7.2

Returns formatted message about Acquia Search connection details.

Parameters

SearchApiServer $server:

Return value

string

4 calls to search_api_acquia_get_search_status_message()
SearchApiAcquiaSearchService::configurationForm in includes/SearchApiAcquiaSearchService.php
Overrides SearchApiSolrService::configurationForm().
SearchApiAcquiaSearchService::getExtraInformation in includes/SearchApiAcquiaSearchService.php
Returns additional, service-specific information about this server.
search_api_acquia_add_form_status_message in ./search_api_acquia.module
Adds Acquia search connection details to the given form.
search_api_acquia_block_view_system_main_alter in ./search_api_acquia.module
Implements hook_block_view_MODULE_DELTA_alter().

File

./search_api_acquia.module, line 382
Provides integration between your Drupal site and Acquia's hosted search service via the Search API Solr module.

Code

function search_api_acquia_get_search_status_message($server) {
  global $conf;
  $options = $server->options;

  // Apply overrides if they exist.
  if (isset($conf['search_api_acquia_overrides'][$server->machine_name])) {
    $options = array_merge($options, $conf['search_api_acquia_overrides'][$server->machine_name]);
  }
  $url = $options['scheme'] . '://' . $options['host'] . ':' . $options['port'] . $options['path'];
  $items = array(
    t('search_api_solr.module server ID: @env', array(
      '@env' => $server->machine_name,
    )),
    t('URL: @url', array(
      '@url' => $url,
    )),
  );
  if (search_api_acquia_ping($server->machine_name)) {
    $items[] = t('Solr index is currently reachable and up.');
  }
  else {

    // Add message with error class.
    $items[] = array(
      'data' => t('Solr index is currently unreachable.'),
      'class' => array(
        'error',
      ),
    );
  }

  // Deep-ping the Solr index to ensure authentication is working.
  if (search_api_acquia_ping($server->machine_name, 'deep-ping')) {
    $items[] = t('Requests to Solr index are passing authentication checks.');
  }
  else {

    // Add message with error class.
    $items[] = array(
      'data' => t('Solr core authentication check fails.'),
      'class' => array(
        'error',
      ),
    );
  }
  return t('Connection managed by Search API Acquia module.') . theme('item_list', array(
    'items' => $items,
  ));
}