2013-01-24 16:42:34 +04:00
|
|
|
<?php
|
2018-05-05 00:37:48 +03:00
|
|
|
|
2016-09-04 04:19:48 +03:00
|
|
|
require_once(CONST_BasePath.'/lib/init-website.php');
|
2018-05-05 00:37:48 +03:00
|
|
|
require_once(CONST_BasePath.'/lib/ParameterParser.php');
|
|
|
|
require_once(CONST_BasePath.'/lib/Status.php');
|
2013-01-24 16:42:34 +04:00
|
|
|
|
2018-05-05 00:37:48 +03:00
|
|
|
$oParams = new Nominatim\ParameterParser();
|
|
|
|
$sOutputFormat = $oParams->getSet('format', array('text', 'json'), 'text');
|
2016-09-14 04:16:46 +03:00
|
|
|
|
2018-05-05 00:37:48 +03:00
|
|
|
$oDB = DB::connect(CONST_Database_DSN, false);
|
|
|
|
$oStatus = new Nominatim\Status($oDB);
|
2014-01-23 20:48:20 +04:00
|
|
|
|
2013-01-24 16:42:34 +04:00
|
|
|
|
2018-05-05 00:37:48 +03:00
|
|
|
if ($sOutputFormat == 'json') {
|
|
|
|
header('content-type: application/json; charset=UTF-8');
|
2016-09-04 04:19:48 +03:00
|
|
|
}
|
2014-01-23 20:06:43 +04:00
|
|
|
|
2018-05-05 00:37:48 +03:00
|
|
|
|
|
|
|
try {
|
|
|
|
$oStatus->status();
|
|
|
|
} catch (Exception $oErr) {
|
|
|
|
if ($sOutputFormat == 'json') {
|
|
|
|
$aResponse = array(
|
2018-05-08 01:37:41 +03:00
|
|
|
'status' => $oErr->getCode(),
|
|
|
|
'message' => $oErr->getMessage()
|
|
|
|
);
|
2018-05-05 00:37:48 +03:00
|
|
|
javascript_renderData($aResponse);
|
|
|
|
} else {
|
|
|
|
header('HTTP/1.0 500 Internal Server Error');
|
|
|
|
echo 'ERROR: '.$oErr->getMessage();
|
|
|
|
}
|
|
|
|
exit;
|
2016-09-04 04:19:48 +03:00
|
|
|
}
|
2018-05-05 00:37:48 +03:00
|
|
|
|
|
|
|
|
|
|
|
if ($sOutputFormat == 'json') {
|
|
|
|
$epoch = $oStatus->dataDate();
|
|
|
|
$aResponse = array(
|
2018-05-08 01:37:41 +03:00
|
|
|
'status' => 0,
|
|
|
|
'message' => 'OK',
|
|
|
|
'data_updated' => (new DateTime('@'.$epoch))->format(DateTime::RFC3339)
|
|
|
|
);
|
2018-05-05 00:37:48 +03:00
|
|
|
javascript_renderData($aResponse);
|
|
|
|
} else {
|
|
|
|
echo 'OK';
|
2016-09-04 04:19:48 +03:00
|
|
|
}
|
2014-01-23 20:48:20 +04:00
|
|
|
|
2016-09-04 04:19:48 +03:00
|
|
|
exit;
|