diff --git a/src/DamianPaginationPhp/Http/Request/Request.php b/src/DamianPaginationPhp/Http/Request/Request.php index 1c560df..d08557e 100644 --- a/src/DamianPaginationPhp/Http/Request/Request.php +++ b/src/DamianPaginationPhp/Http/Request/Request.php @@ -27,6 +27,18 @@ class Request implements RequestInterface public function __construct() { + // Handle symfony live component + if (str_starts_with($_SERVER['REQUEST_URI'], '/_component')) { + $url = parse_url($_SERVER['HTTP_REFERER']); + if (isset($url['query'])) { + foreach (explode("&", $url['query']) as $item) { + $a = explode('=', $item); + $_GET[$a[0]] = $a[1]; + } + } + $_SERVER['REQUEST_URI'] = $url['path']; + } + $this->paramGet = new ParameterBag($_GET); $this->paramServer = new ParameterBag($_SERVER); } diff --git a/src/DamianPaginationPhp/Http/Request/Server.php b/src/DamianPaginationPhp/Http/Request/Server.php index 5e44ccd..df5e51b 100644 --- a/src/DamianPaginationPhp/Http/Request/Server.php +++ b/src/DamianPaginationPhp/Http/Request/Server.php @@ -30,6 +30,11 @@ public function getRequestUri(): string public function getServerName(): string { + // Support symfony + if ($this->request->getServer()->has('HTTP_HOST')) { + return $this->request->getServer()->get('HTTP_HOST'); + } + return $this->request->getServer()->get('SERVER_NAME'); } }