Compare commits

...

8 Commits

Author SHA1 Message Date
Simon 301d551981 Fix host url 2024-11-10 23:20:08 +01:00
Simon 90418eb41c Bugfixes
- Fixed host not set on request url.
- Url returns relativeUrl when calling toString() to avoid any issues when using in RouteUrl(url()) for rewrites.
2024-11-06 11:05:43 +01:00
Simon 0634ba79dc Fixed getUrl() not working for home urls. 2023-12-11 22:45:14 +01:00
Simon 3534233a76 Fixed included triggering on other request-types than post 2023-12-09 18:39:33 +01:00
Simon 0f55480156 Fixed rewrite-route not being executed in rare instances 2023-12-09 05:36:30 +01:00
Simon 99ed44eb1e Fixed setHost nullable value 2023-11-29 01:20:00 +01:00
Simon 565a926bd3 Remove port from hostname 2023-11-27 08:06:35 +01:00
Simon 64483652ff Strip any potential port number from hostname 2023-11-27 07:58:49 +01:00
4 changed files with 15 additions and 6 deletions
@@ -98,7 +98,7 @@ class BaseCsrfVerifier implements IMiddleware
*/
public function handle(Request $request): void
{
if ($this->skip($request) === false && ($request->isPostBack() === true || $this->isIncluded($request) === true)) {
if ($this->skip($request) === false && ($request->isPostBack() === true || $request->isPostBack() === true && $this->isIncluded($request) === true)) {
$token = $request->getInputHandler()->value(
static::POST_KEY,
+9
View File
@@ -395,6 +395,10 @@ class Request
{
$this->url = $url;
if ($this->getHost() !== null) {
$url->setHost($this->getHost());
}
if ($this->isSecure() === true) {
$this->url->setScheme('https');
}
@@ -405,6 +409,11 @@ class Request
*/
public function setHost(?string $host): void
{
// Strip any potential ports from hostname
if (strpos((string)$host, ':') !== false) {
$host = strstr($host, strrchr($host, ':'), true);
}
$this->host = $host;
}
+5 -4
View File
@@ -72,11 +72,11 @@ class Url implements JsonSerializable
public function parse(?string $url, bool $setOriginalPath = false): self
{
if ($url !== null && $url !== '/') {
if ($url !== null) {
$data = $this->parseUrl($url);
$this->scheme = $data['scheme'] ?? null;
$this->host = $data['host'] ?? null;
$this->scheme = $data['scheme'] ?? $this->scheme;
$this->host = $data['host'] ?? $this->host;
$this->port = $data['port'] ?? null;
$this->username = $data['user'] ?? null;
$this->password = $data['pass'] ?? null;
@@ -95,6 +95,7 @@ class Url implements JsonSerializable
$this->setQueryString($data['query']);
}
}
return $this;
}
@@ -540,7 +541,7 @@ class Url implements JsonSerializable
public function __toString(): string
{
return $this->getHost(true) . $this->getRelativeUrl();
return $this->getRelativeUrl();
}
}
-1
View File
@@ -562,7 +562,6 @@ class Router
if ($this->request->getRewriteRoute() !== null) {
$this->processedRoutes[] = $this->request->getRewriteRoute();
$this->request->setHasPendingRewrite(false);
}
return $this->routeRequest();