. */ namespace SP\Util; use SP\Core\Acl\Acl; use SP\Core\Bootstrap\BootstrapBase; use SP\Domain\Config\In\ConfigDataInterface; use SP\Http\Uri; /** * Class Link * * @package SP\Util */ final class Link { public static function getDeepLink( int $itemId, int $actionId, ConfigDataInterface $configData, bool $useUI = false ): string { $route = Acl::getActionRoute($actionId).'/'.$itemId; if ($useUI) { $baseUrl = ($configData->getApplicationUrl() ?? BootstrapBase::$WEBURI).'/index.php'; } else { $baseUrl = ($configData->getApplicationUrl() ?? BootstrapBase::$WEBURI).BootstrapBase::$SUBURI; } $uri = new Uri($baseUrl); $uri->addParam('r', $route); return $uri->getUriSigned($configData->getPasswordSalt()); } }