Файловый менеджер - Редактировать - /home/wuectly/www/03cbe/Exception.tar
Назад
ExceptionHandler.php 0000604 00000011654 15245530266 0010524 0 ustar 00 <?php /** * Joomla! Content Management System * * @copyright (C) 2012 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\CMS\Exception; defined('JPATH_PLATFORM') or die; use Joomla\CMS\Document\Document; use Joomla\CMS\Factory; use Joomla\CMS\Language\Text; use Joomla\CMS\Log\Log; /** * Displays the custom error page when an uncaught exception occurs. * * @since 3.0 */ class ExceptionHandler { /** * Handles exceptions: logs errors and renders error page. * * @param \Exception|\Throwable $error An Exception or Throwable (PHP 7+) object for which to render the error page. * * @return void * * @since 3.10.0 */ public static function handleException($error) { if (static::isException($error)) { static::logException($error); } static::render($error); } /** * Render the error page based on an exception. * * @param \Exception|\Throwable $error An Exception or Throwable (PHP 7+) object for which to render the error page. * * @return void * * @since 3.0 */ public static function render($error) { // Render template error page for exceptions only, because template will expect exception object if (static::isException($error)) { try { $app = Factory::getApplication(); // If site is offline and it's a 404 error, just go to index (to see offline message, instead of 404) if ($error->getCode() == '404' && $app->get('offline') == 1) { $app->redirect('index.php'); } $attributes = array( 'charset' => 'utf-8', 'lineend' => 'unix', 'tab' => "\t", 'language' => 'en-GB', 'direction' => 'ltr', ); // If there is a \JLanguage instance in Factory then let's pull the language and direction from its metadata if (Factory::$language) { $attributes['language'] = Factory::getLanguage()->getTag(); $attributes['direction'] = Factory::getLanguage()->isRtl() ? 'rtl' : 'ltr'; } $document = Document::getInstance('error', $attributes); if (!$document) { // We're probably in an CLI environment jexit($error->getMessage()); } // Get the current template from the application $template = $app->getTemplate(); // Push the error object into the document $document->setError($error); // Clear buffered output at all levels while (ob_get_level()) { ob_end_clean(); } // This is needed to ensure the test suite can still get the output buffer ob_start(); $document->setTitle(Text::_('ERROR') . ': ' . $error->getCode()); $data = $document->render( false, array( 'template' => $template, 'directory' => JPATH_THEMES, 'debug' => JDEBUG, ) ); // Do not allow cache $app->allowCache(false); // If nothing was rendered, just use the message from the Exception if (empty($data)) { $data = $error->getMessage(); } $app->setBody($data); echo $app->toString(); $app->close(0); // This return is needed to ensure the test suite does not trigger the non-Exception handling below return; } catch (\Throwable $e) { // Pass the error down } catch (\Exception $e) { // Pass the error down } } // This isn't an Exception, we can't handle it. if (!headers_sent()) { header('HTTP/1.1 500 Internal Server Error'); } $message = 'Error'; if (static::isException($error)) { // Make sure we do not display sensitive data in production environments if (ini_get('display_errors')) { $message .= ': '; if (isset($e)) { $message .= $e->getMessage() . ': '; } $message .= $error->getMessage(); } } echo $message; jexit(1); } /** * Checks if given error belong to PHP exception class (\Throwable for PHP 7+, \Exception for PHP 5-). * * @param mixed $error Any error value. * * @return bool * * @since 3.10.0 */ protected static function isException($error) { $expectedClass = PHP_MAJOR_VERSION >= 7 ? '\Throwable' : '\Exception'; return $error instanceof $expectedClass; } /** * Logs exception, catching all possible errors during logging. * * @param \Exception|\Throwable $error An Exception or Throwable (PHP 7+) object to get error message from. * * @return void * * @since 3.10.0 */ protected static function logException($error) { // Try to log the error, but don't let the logging cause a fatal error try { Log::add( sprintf( 'Uncaught %1$s of type %2$s thrown. Stack trace: %3$s', PHP_MAJOR_VERSION >= 7 ? 'Throwable' : 'Exception', get_class($error), $error->getTraceAsString() ), Log::CRITICAL, 'error' ); } catch (\Throwable $e) { // Logging failed, don't make a stink about it though } catch (\Exception $e) { // Logging failed, don't make a stink about it though } } } RouteNotFoundException.php 0000604 00000001622 15245530266 0011714 0 ustar 00 <?php /** * Joomla! Content Management System * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\CMS\Router\Exception; defined('JPATH_PLATFORM') or die; /** * Exception class defining an error for a missing route * * @since 3.8.0 */ class RouteNotFoundException extends \InvalidArgumentException { /** * Constructor * * @param string $message The Exception message to throw. * @param integer $code The Exception code. * @param \Exception $previous The previous exception used for the exception chaining. * * @since 3.8.0 */ public function __construct($message = '', $code = 404, \Exception $previous = null) { if (empty($message)) { $message = 'URL was not found'; } parent::__construct($message, $code, $previous); } } EmptyStack.php 0000604 00000001163 15245530316 0007342 0 ustar 00 <?php /** * @package FOF * @copyright Copyright (c)2010-2020 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 2, or later */ namespace FOF30\View\Exception; defined('_JEXEC') || die; use Exception; use Joomla\CMS\Language\Text; use RuntimeException; /** * Exception thrown when we are trying to operate on an empty section stack */ class EmptyStack extends RuntimeException { public function __construct($message = "", $code = 500, Exception $previous = null) { $message = Text::_('LIB_FOF_VIEW_EMPTYSECTIONSTACK'); parent::__construct($message, $code, $previous); } } ModelNotFound.php 0000604 00000001174 15245530316 0007775 0 ustar 00 <?php /** * @package FOF * @copyright Copyright (c)2010-2020 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 2, or later */ namespace FOF30\View\Exception; defined('_JEXEC') || die; use Exception; use Joomla\CMS\Language\Text; use RuntimeException; /** * Exception thrown when we can't get a Controller's name */ class ModelNotFound extends RuntimeException { public function __construct($path, $viewName, $code = 500, Exception $previous = null) { $message = Text::sprintf('LIB_FOF_VIEW_MODELNOTINVIEW', $path, $viewName); parent::__construct($message, $code, $previous); } } UnrecognisedExtension.php 0000604 00000001240 15245530316 0011574 0 ustar 00 <?php /** * @package FOF * @copyright Copyright (c)2010-2020 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 2, or later */ namespace FOF30\View\Exception; defined('_JEXEC') || die; use Exception; use InvalidArgumentException; use Joomla\CMS\Language\Text; /** * Exception thrown when we can't figure out which engine to use for a view template */ class UnrecognisedExtension extends InvalidArgumentException { public function __construct($path, $code = 500, Exception $previous = null) { $message = Text::sprintf('LIB_FOF_VIEW_UNRECOGNISEDEXTENSION', $path); parent::__construct($message, $code, $previous); } } CannotGetName.php 0000604 00000000540 15245530316 0007737 0 ustar 00 <?php /** * @package FOF * @copyright Copyright (c)2010-2020 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 2, or later */ namespace FOF30\Controller\Exception; defined('_JEXEC') || die; /** * Exception thrown when we can't get a Controller's name */ class CannotGetName extends \RuntimeException { } PossiblySuhosin.php 0000604 00000001272 15245530316 0010434 0 ustar 00 <?php /** * @package FOF * @copyright Copyright (c)2010-2020 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 2, or later */ namespace FOF30\View\Exception; defined('_JEXEC') || die; use Exception; use Joomla\CMS\Language\Text; use RuntimeException; /** * Exception thrown when the access to the requested resource is forbidden under the current execution context */ class PossiblySuhosin extends RuntimeException { public function __construct($message = "", $code = 403, Exception $previous = null) { if (empty($message)) { $message = Text::_('LIB_FOF_VIEW_POSSIBLYSUHOSIN'); } parent::__construct($message, $code, $previous); } } AccessForbidden.php 0000604 00000001305 15245530316 0010272 0 ustar 00 <?php /** * @package FOF * @copyright Copyright (c)2010-2020 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 2, or later */ namespace FOF30\View\Exception; defined('_JEXEC') || die; use Exception; use Joomla\CMS\Language\Text; use RuntimeException; /** * Exception thrown when the access to the requested resource is forbidden under the current execution context */ class AccessForbidden extends RuntimeException { public function __construct($message = "", $code = 403, Exception $previous = null) { if (empty($message)) { $message = Text::_('JLIB_APPLICATION_ERROR_ACCESS_FORBIDDEN'); } parent::__construct($message, $code, $previous); } } ItemNotFound.php 0000604 00000000556 15245554770 0007650 0 ustar 00 <?php /** * @package FOF * @copyright Copyright (c)2010-2020 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 2, or later */ namespace FOF30\Controller\Exception; defined('_JEXEC') || die; /** * Exception thrown when we can't find the requested item in a read task */ class ItemNotFound extends \RuntimeException { } LockedRecord.php 0000604 00000001213 15245554770 0007624 0 ustar 00 <?php /** * @package FOF * @copyright Copyright (c)2010-2020 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 2, or later */ namespace FOF30\Controller\Exception; defined('_JEXEC') || die; use Exception; use Joomla\CMS\Language\Text; /** * Exception thrown when the provided Model is locked for writing by another user */ class LockedRecord extends \RuntimeException { public function __construct($message = "", $code = 403, Exception $previous = null) { if (empty($message)) { $message = Text::_('LIB_FOF_CONTROLLER_ERR_LOCKED'); } parent::__construct($message, $code, $previous); } } NotADataModel.php 0000604 00000000555 15245554770 0007710 0 ustar 00 <?php /** * @package FOF * @copyright Copyright (c)2010-2020 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 2, or later */ namespace FOF30\Controller\Exception; defined('_JEXEC') || die; /** * Exception thrown when the provided Model is not a DataModel */ class NotADataModel extends \InvalidArgumentException { } TaskNotFound.php 0000604 00000000603 15245554770 0007645 0 ustar 00 <?php /** * @package FOF * @copyright Copyright (c)2010-2020 Nicholas K. Dionysopoulos / Akeeba Ltd * @license GNU General Public License version 2, or later */ namespace FOF30\Controller\Exception; defined('_JEXEC') || die; /** * Exception thrown when we can't find a suitable method to handle the requested task */ class TaskNotFound extends \InvalidArgumentException { } UnsupportedCacheException.php 0000604 00000000727 15245554773 0012433 0 ustar 00 <?php /** * Joomla! Content Management System * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\CMS\Cache\Exception; defined('JPATH_PLATFORM') or die; /** * Exception class defining an unsupported cache storage object * * @since 3.6.3 */ class UnsupportedCacheException extends \RuntimeException implements CacheExceptionInterface { } CacheConnectingException.php 0000604 00000000742 15245554773 0012167 0 ustar 00 <?php /** * Joomla! Content Management System * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\CMS\Cache\Exception; defined('JPATH_PLATFORM') or die; /** * Exception class defining an error connecting to the cache storage engine * * @since 3.6.3 */ class CacheConnectingException extends \RuntimeException implements CacheExceptionInterface { } CacheExceptionInterface.php 0000604 00000000622 15245554773 0011775 0 ustar 00 <?php /** * Joomla! Content Management System * * @copyright (C) 2017 Open Source Matters, Inc. <https://www.joomla.org> * @license GNU General Public License version 2 or later; see LICENSE.txt */ namespace Joomla\CMS\Cache\Exception; defined('JPATH_PLATFORM') or die; /** * Exception interface defining a cache storage error * * @since 3.7.0 */ interface CacheExceptionInterface { }
| ver. 1.4 |
Github
|
.
| PHP 8.1.34 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка