You are here

function highcharttable_requirements in HighchartTable 7

Implements hook_requirements().

File

./highcharttable.install, line 28
highcharttable.install Install and uninstall functions for the HighchartTable module.

Code

function highcharttable_requirements($phase) {
  $requirements = array();
  if ($phase != 'runtime') {
    return $requirements;
  }
  $global_settings = variable_get('highcharttable_global_settings', array());
  $variant = empty($global_settings['use-patched-library']) ? NULL : 'patched';
  $highcharts_lib = libraries_load('highcharts');
  $highcharttable_lib = libraries_load('highcharttable', $variant);

  // Is this required for the runtime phase?
  $t = get_t();
  $requirements['highcharttable'] = array(
    'title' => $t('HighchartTable') . '<br/>' . $t('Library variant: %variant', array(
      '%variant' => empty($variant) ? $t('original') : $t('patched'),
    )),
    'value' => '',
    'severity' => REQUIREMENT_OK,
  );
  if ($highcharts_lib && empty($highcharts_lib['error'])) {
    $requirements['highcharttable']['value'] .= $t('<strong>@name</strong> library version %version installed.', array(
      '@name' => $highcharts_lib['name'],
      '%version' => $highcharts_lib['version'],
    ));
  }
  else {
    $requirements['highcharttable']['value'] .= empty($highcharts_lib['error message']) ? $t('Highcharts JS library not found.') : $highcharts_lib['error message'];
    $requirements['highcharttable']['severity'] = REQUIREMENT_ERROR;
  }
  if ($highcharttable_lib && empty($highcharttable_lib['error'])) {
    $requirements['highcharttable']['value'] .= '<br/>' . $t('<strong>@name</strong> library version %version installed.', array(
      '@name' => $highcharttable_lib['name'],
      '%version' => $highcharttable_lib['version'],
    ));
  }
  else {
    $requirements['highcharttable']['value'] .= '<br/>' . (empty($highcharttable_lib['error message']) ? $t('HighchartTable JS library not found.') : $highcharttable_lib['error message']);
    $requirements['highcharttable']['severity'] = REQUIREMENT_ERROR;
  }
  return $requirements;
}