Source of file Url.php
Size: 1,467 Bytes - Last Modified: 2017-11-08T13:54:24+00:00
/home/travis/build/bluzphp/framework/src/View/Helper/Url.php
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 | <?php /** * Bluz Framework Component * * @copyright Bluz PHP Team * @link https://github.com/bluzphp/framework */ declare(strict_types=1); namespace Bluz\View\Helper; use Bluz\Application\Exception\ForbiddenException; use Bluz\Controller\Controller; use Bluz\Proxy\Request; use Bluz\Proxy\Router; use Bluz\View\View; use Bluz\View\ViewException; /** * Generate URL * * @param string $module * @param string $controller * @param array $params * @param bool $checkAccess * * @return null|string * @throws ViewException */ return function ($module, $controller, $params = [], $checkAccess = false) { /** * @var View $this */ try { if ($checkAccess) { try { $controllerInstance = new Controller($module, $controller); $controllerInstance->checkPrivilege(); } catch (ForbiddenException $e) { return null; } } } catch (\Exception $e) { throw new ViewException('Url View Helper: ' . $e->getMessage()); } if (null === $module) { $module = Request::getModule(); } if (null === $controller) { $controller = Request::getController(); } if (null === $params) { $params = Request::getParams(); } return Router::getUrl($module, $controller, $params); }; |