Catch Errors in order to display a message in more cases. We also catch Exceptions to maintain compat with php 5.
Add check for simplexml extension.
This commit is contained in:
parent
df6da837dc
commit
ac6847045c
2 changed files with 17 additions and 5 deletions
18
index.php
18
index.php
|
@ -77,6 +77,9 @@ if(!extension_loaded('libxml'))
|
||||||
if(!extension_loaded('mbstring'))
|
if(!extension_loaded('mbstring'))
|
||||||
die('"mbstring" extension not loaded. Please check "php.ini"');
|
die('"mbstring" extension not loaded. Please check "php.ini"');
|
||||||
|
|
||||||
|
if(!extension_loaded('simplexml'))
|
||||||
|
die('"simplexml" extension not loaded. Please check "php.ini"');
|
||||||
|
|
||||||
// configuration checks
|
// configuration checks
|
||||||
if(ini_get('allow_url_fopen') !== "1")
|
if(ini_get('allow_url_fopen') !== "1")
|
||||||
die('"allow_url_fopen" is not set to "1". Please check "php.ini');
|
die('"allow_url_fopen" is not set to "1". Please check "php.ini');
|
||||||
|
@ -199,10 +202,14 @@ try {
|
||||||
$bridge->setCache($cache);
|
$bridge->setCache($cache);
|
||||||
$bridge->setCacheTimeout($cache_timeout);
|
$bridge->setCacheTimeout($cache_timeout);
|
||||||
$bridge->setDatas($params);
|
$bridge->setDatas($params);
|
||||||
} catch(Exception $e) {
|
} catch(Error $e) {
|
||||||
http_response_code($e->getCode());
|
http_response_code($e->getCode());
|
||||||
header('Content-Type: text/html');
|
header('Content-Type: text/html');
|
||||||
die(buildBridgeException($e, $bridge));
|
die(buildBridgeException($e, $bridge));
|
||||||
|
} catch(Exception $e) {
|
||||||
|
http_response_code($e->getCode());
|
||||||
|
header('Content-Type: text/html');
|
||||||
|
die(buildBridgeException($e, $bridge));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Data transformation
|
// Data transformation
|
||||||
|
@ -211,11 +218,16 @@ try {
|
||||||
$format->setItems($bridge->getItems());
|
$format->setItems($bridge->getItems());
|
||||||
$format->setExtraInfos($bridge->getExtraInfos());
|
$format->setExtraInfos($bridge->getExtraInfos());
|
||||||
$format->display();
|
$format->display();
|
||||||
} catch(Exception $e) {
|
} catch(Error $e) {
|
||||||
http_response_code($e->getCode());
|
http_response_code($e->getCode());
|
||||||
header('Content-Type: text/html');
|
header('Content-Type: text/html');
|
||||||
die(buildTransformException($e, $bridge));
|
die(buildTransformException($e, $bridge));
|
||||||
}
|
} catch(Exception $e) {
|
||||||
|
http_response_code($e->getCode());
|
||||||
|
header('Content-Type: text/html');
|
||||||
|
die(buildBridgeException($e, $bridge));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
die;
|
die;
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,7 +54,7 @@ function buildGitHubIssueQuery($title, $body, $labels = null, $maintainer = null
|
||||||
* provided parameter are invalid
|
* provided parameter are invalid
|
||||||
*/
|
*/
|
||||||
function buildBridgeException($e, $bridge){
|
function buildBridgeException($e, $bridge){
|
||||||
if(!($e instanceof \Exception) || !($bridge instanceof \BridgeInterface)) {
|
if(( !($e instanceof \Exception) && !($e instanceof \Error)) || !($bridge instanceof \BridgeInterface)) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -85,7 +85,7 @@ unable to receive or process the remote website's content!";
|
||||||
* provided parameter are invalid
|
* provided parameter are invalid
|
||||||
*/
|
*/
|
||||||
function buildTransformException($e, $bridge){
|
function buildTransformException($e, $bridge){
|
||||||
if(!($e instanceof \Exception) || !($bridge instanceof \BridgeInterface)) {
|
if(( !($e instanceof \Exception) && !($e instanceof \Error)) || !($bridge instanceof \BridgeInterface)) {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue