function geophp_requirements in geoPHP 8
Same name and namespace in other branches
- 7 geophp.module \geophp_requirements()
Implementation of hook_requirements().
File
- ./
geophp.module, line 51
Code
function geophp_requirements($phase) {
$requirements = [];
// @TODO: Find more elegant way to handle this. Load from local library?
$local_geophp_version = '1.1';
$geophp = geophp_load();
if ($geophp) {
try {
$geophp_version = geoPHP::version();
} catch (Exception $e) {
$geophp_version = 0;
}
if ($geophp_version < $local_geophp_version) {
$requirements['geophp'] = [
'title' => t('Old GeoPHP Library'),
'severity' => NULL,
'value' => t('GeoPHP library version %library_version was found, but you are running an old version. GeoPHP version %local_version is bundled with this module. Please either remove or update your older version of geoPHP found at %path. The newest version of geoPHP can be found at %link.', [
'%library_version' => $geophp_version,
'%local_version' => $local_geophp_version,
'%path' => $geophp,
'%link' => 'https://github.com/downloads/phayes/geoPHP/geoPHP.tar.gz',
]),
];
}
else {
$requirements['geophp'] = [
'title' => 'GeoPHP Library Installed',
'severity' => NULL,
'value' => t('GeoPHP %version library installed at %path', [
'%path' => $geophp,
'%version' => geoPHP::version(),
]),
];
}
// GEOS check.
if (geoPHP::geosInstalled()) {
$requirements['geophp_geos'] = [
'title' => t('GeoPHP and GEOS'),
'severity' => NULL,
'value' => t('GEOS PHP extension Installed'),
];
}
else {
$requirements['geophp_geos'] = [
'title' => t('GeoPHP and GEOS'),
'severity' => NULL,
'value' => t('GeoPHP library installed and OK. However, GEOS was not found. While not required, you will see performance improvements if you install the GEOS PHP extension. See %link for more information.', [
'%link' => 'https://github.com/phayes/geoPHP/wiki/GEOS',
]),
];
}
}
else {
$requirements['geophp'] = [
'title' => t('GeoPHP and GEOS'),
'severity' => REQUIREMENT_ERROR,
'value' => t('GeoPHP library was not found. Please either restore this module to a stable release or download a copy of geoPHP at %link and place in the libraries directory.', [
'%link' => 'https://github.com/downloads/phayes/geoPHP/geoPHP.tar.gz',
]),
];
}
return $requirements;
}