Tracker['enable_language_to_country_guess']; if (empty($info['lang'])) { $info['lang'] = Common::getBrowserLanguage(); } $country = Common::getCountry($info['lang'], $enableLanguageToCountryGuess, $info['ip']); $location = array(parent::COUNTRY_CODE_KEY => $country); $this->completeLocationResult($location); return $location; } /** * Returns whether this location provider is available. * * This implementation is always available. * * @return bool always true */ public function isAvailable() { return true; } /** * Returns whether this location provider is working correctly. * * This implementation is always working correctly. * * @return bool always true */ public function isWorking() { return true; } /** * Returns an array describing the types of location information this provider will * return. * * This provider supports the following types of location info: * - continent code * - continent name * - country code * - country name * * @return array */ public function getSupportedLocationInfo() { return array(self::CONTINENT_CODE_KEY => true, self::CONTINENT_NAME_KEY => true, self::COUNTRY_CODE_KEY => true, self::COUNTRY_NAME_KEY => true); } /** * Returns information about this location provider. Contains an id, title & description: * * array( * 'id' => 'default', * 'title' => '...', * 'description' => '...' * ); * * @return array */ public function getInfo() { $desc = Piwik::translate('UserCountry_DefaultLocationProviderDesc1') . ' ' . Piwik::translate('UserCountry_DefaultLocationProviderDesc2', array('', '', '', '')) . '
' . Piwik::translate('UserCountry_HowToInstallGeoIPDatabases') . '
'; return array('id' => self::ID, 'title' => self::TITLE, 'description' => $desc, 'order' => 1); } }