Merge pull request #808 from acelaya-forks/feature/trailing-question-mark

Fixed issue introduced with league/uri library
This commit is contained in:
Alejandro Celaya 2020-07-10 23:36:16 +02:00 committed by GitHub
commit 71570af7db
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -68,13 +68,13 @@ abstract class AbstractTrackingAction implements MiddlewareInterface, RequestMet
private function buildUrlToRedirectTo(ShortUrl $shortUrl, array $currentQuery, ?string $disableTrackParam): string
{
$uri = Uri::createFromString($shortUrl->getLongUrl());
$hardcodedQuery = parse_query($uri->getQuery());
$hardcodedQuery = parse_query($uri->getQuery() ?? '');
if ($disableTrackParam !== null) {
unset($currentQuery[$disableTrackParam]);
}
$mergedQuery = array_merge($hardcodedQuery, $currentQuery);
return (string) $uri->withQuery(build_query($mergedQuery));
return (string) (empty($mergedQuery) ? $uri : $uri->withQuery(build_query($mergedQuery)));
}
private function shouldTrackRequest(ServerRequestInterface $request, array $query, ?string $disableTrackParam): bool