diff --git a/application/startup.inc.php b/application/startup.inc.php index 8dec41a84..e88b0794f 100644 --- a/application/startup.inc.php +++ b/application/startup.inc.php @@ -65,13 +65,17 @@ if (file_exists(APPROOT.'.maintenance') && !$bBypassMaintenance) // Display message depending on the request switch (true) { + case EndsWith($_SERVER['REQUEST_URI'], '/pages/ajax.searchform.php'): + _MaintenanceHtmlMessage($sMessage); + break; + case array_key_exists('HTTP_X_COMBODO_AJAX', $_SERVER): case EndsWith($_SERVER['REQUEST_URI'], '/webservices/rest.php'): _MaintenanceTextMessage($sMessage); break; - case EndsWith($_SERVER['REQUEST_URI'], '/pages/ajax.searchform.php'): - _MaintenanceHtmlMessage($sMessage); + case $_SERVER['CONTENT_TYPE'] == 'application/json': + _MaintenanceJsonMessage($sTitle, $sMessage); break; default: @@ -154,6 +158,19 @@ function _MaintenanceHtmlMessage($sMessage) echo '
'.$sMessage.'
'; } +/** + * Use a simple JSON to display the maintenance message + * @param $sMessage + */ +function _MaintenanceJsonMessage($sTitle, $sMessage) +{ + $oP = new ajax_page($sTitle); + $oP->add_header('Access-Control-Allow-Origin: *'); + $oP->SetContentType('application/json'); + $oP->add('{"code":100, "message":"'.$sMessage.'"}'); + $oP->Output(); +} + /** * helper to test if a string ends with another * @param $haystack