phpBB

Code Changes

File: phpbb/console/exception_subscriber.php

  Unmodified   Added   Modified   Removed
Line 15Line 15

use phpbb\exception\exception_interface;
use Symfony\Component\Console\ConsoleEvents;


use phpbb\exception\exception_interface;
use Symfony\Component\Console\ConsoleEvents;

use Symfony\Component\Console\Event\ConsoleExceptionEvent;

use Symfony\Component\Console\Event\ConsoleErrorEvent;

use Symfony\Component\EventDispatcher\EventSubscriberInterface;

class exception_subscriber implements EventSubscriberInterface
{

use Symfony\Component\EventDispatcher\EventSubscriberInterface;

class exception_subscriber implements EventSubscriberInterface
{

	/**
* @var \phpbb\language\language
*/

	/** @var \phpbb\language\language */



	protected $language;

/**

	protected $language;

/**

	 * Construct method

	 * Constructor.

	 *

	 *

	 * @param \phpbb\language\language $language Language object

	 * @param \phpbb\language\language	$language	Language object

	 */
public function __construct(\phpbb\language\language $language)
{

	 */
public function __construct(\phpbb\language\language $language)
{

Line 36Line 34
	}

/**

	}

/**

	 * This listener is run when the ConsoleEvents::EXCEPTION event is triggered.
* It translate the exception message. If din debug mode the original exception is embedded.

	 * This listener is run when the ConsoleEvents::ERROR event is triggered.
* It translate the error message. If in debug mode the original exception is embedded.

	 *

	 *

	 * @param ConsoleExceptionEvent $event

	 * @param ConsoleErrorEvent $event

	 */

	 */

	public function on_exception(ConsoleExceptionEvent $event)

	public function on_error(ConsoleErrorEvent $event)

	{

	{

		$original_exception = $event->getException();

		$original_exception = $event->getError();


if ($original_exception instanceof exception_interface)
{


if ($original_exception instanceof exception_interface)
{

			$parameters = array_merge(array($original_exception->getMessage()), $original_exception->get_parameters());
$message = call_user_func_array(array($this->language, 'lang'), $parameters);

			$parameters = array_merge([$original_exception->getMessage()], $original_exception->get_parameters());
$message = call_user_func_array([$this->language, 'lang'], $parameters);


$exception = new \RuntimeException($message , $original_exception->getCode(), $original_exception);



$exception = new \RuntimeException($message , $original_exception->getCode(), $original_exception);


			$event->setException($exception);

			$event->setError($exception);

		}
}

static public function getSubscribedEvents()
{

		}
}

static public function getSubscribedEvents()
{

		return array(
ConsoleEvents::EXCEPTION => 'on_exception',
);

		return [
ConsoleEvents::ERROR => 'on_error',
];

	}
}


	}
}