You are here

function language_selection_page_requirements in Language Selection Page 7

Same name and namespace in other branches
  1. 8.2 language_selection_page.install \language_selection_page_requirements()
  2. 6 language_selection_page.install \language_selection_page_requirements()
  3. 7.2 language_selection_page.install \language_selection_page_requirements()

File

./language_selection_page.install, line 10
Module installation code

Code

function language_selection_page_requirements($phase) {
  $t = get_t();
  module_load_include('inc', 'language_selection_page', 'includes/language_selection_page.helpers');
  $requirements = array();
  $lang_list = language_list('enabled');
  $language_count = _language_selection_page_check_language_count();
  if ($language_count['db'] != $language_count['vars']) {
    $requirements['language_selection_page'] = array(
      'title' => 'Language Selection Page',
      'value' => $t('There is a problem with the <b>language_count</b> variable.<br/>There are @language_count_db languages enabled in the database and @language_count_vars in the variable table (or from Features/Strongarm).<br/>This can lead to problems in your Drupal website.<br/>Please fix this problem before going further.', array(
        '@language_count_db' => $language_count['db'],
        '@language_count_vars' => $language_count['vars'],
      )),
      'severity' => REQUIREMENT_ERROR,
    );
    return $requirements;
  }
  if ($language_count['db'] > 1) {
    $lang_list_without_prefix = array();
    foreach ($lang_list[1] as $lang) {
      if (empty($lang->prefix)) {
        $lang_list_without_prefix[$lang->language] = $t('You should add a path prefix to <a href="@language_url">language @language_name</a> if you want to have it enabled in the <b>Language Selection Page</b>.', array(
          '@language_url' => url('admin/config/regional/language/edit/' . $lang->language),
          '@language_name' => $lang->name,
        ));
      }
    }
    if (count($lang_list_without_prefix) >= 1) {
      $requirements['language_selection_page'] = array(
        'title' => 'Language Selection Page',
        'value' => implode('<br/>', $lang_list_without_prefix),
        'severity' => REQUIREMENT_WARNING,
      );
    }
    else {
      $requirements['language_selection_page'] = array(
        'title' => 'Language Selection Page',
        'value' => $t('All your enabled languages have language prefixes.'),
        'severity' => REQUIREMENT_OK,
      );
    }
  }
  else {
    $link = url('admin/config/regional/language');
    $requirements['language_selection_page'] = array(
      'title' => 'Language Selection Page',
      'value' => $t('There is only <a href="@link">one language enabled</a>.', array(
        '@link' => $link,
      )),
      'severity' => REQUIREMENT_WARNING,
    );
  }
  return $requirements;
}