You are here

function getdirections_get_countries_list in Get Directions 7.3

Fetch a list of the core Drupal list of countries. from location module

Parameters

bool $upper Default uppercase:

Return value

array The countries array

1 call to getdirections_get_countries_list()
getdirections_default_settings in ./getdirections.module
Default settings form

File

./getdirections.module, line 3021
Fetches google map directions.

Code

function getdirections_get_countries_list($upper = TRUE, $only_continents = '', $only_countries = '') {
  if (module_exists('countries')) {
    $filter = array(
      'enabled' => COUNTRIES_ENABLED,
    );
    if ($only_countries) {
      $only_countries = drupal_strtoupper($only_countries);
      $oc = explode(',', $only_countries);
      if (!empty($oc)) {
        $filter['countries'] = $oc;
      }
    }
    elseif (is_array($only_continents)) {
      $oc = array();
      foreach ($only_continents as $v) {
        $oc[] = $v;
      }
      if (!empty($oc)) {
        $filter['continents'] = $oc;
      }
    }
    $countries = countries_get_countries('name', $filter);
  }
  else {
    include_once DRUPAL_ROOT . '/includes/locale.inc';

    // Statically cache a version of the core Drupal list of countries
    $countries =& drupal_static(__FUNCTION__);
    if (!isset($countries) || empty($countries)) {
      $countries = country_get_list();
    }
  }
  if (!$upper) {
    $countries = array_change_key_case($countries, CASE_LOWER);
  }
  return $countries;
}