/** * Display a fatal error screen. * * @param string $message * @return void */ public static function displayErrorScreen($message) { // Do not display error screen in CLI. if (php_sapi_name() === 'cli') { return; } // Disable output buffering. while (ob_get_level()) { ob_end_clean(); } // Localize the error title. $title = lang('msg_server_error'); if ($title === 'msg_server_error') { $message = 'Server Error'; } // Localize the error message. $display_error_message = ini_get('display_errors') || \Context::get('logged_info') && toBool(\Context::get('logged_info')->is_admin); $message = $display_error_message ? $message : lang('msg_server_error_see_log'); if ($message === 'msg_server_error_see_log') { $message = 'Your server is configured to hide error messages. Please see your server\'s error log for details.'; } // Display a generic error page. \Context::displayErrorPage($title, $message, 500); }