diff --git a/src/Controller/InfoProviderController.php b/src/Controller/InfoProviderController.php index deec8a57..623a9608 100644 --- a/src/Controller/InfoProviderController.php +++ b/src/Controller/InfoProviderController.php @@ -250,7 +250,7 @@ class InfoProviderController extends AbstractController //Redirect to the part creation page with the found part detail return $this->redirectToRoute('info_providers_create_part', [ 'providerKey' => $searchResult->provider_key, - 'providerId' => $searchResult->provider_id, + 'providerId' => urlencode($searchResult->provider_id), ]); } } catch (ExceptionInterface $e) { diff --git a/src/Services/InfoProviderSystem/Providers/GenericWebProvider.php b/src/Services/InfoProviderSystem/Providers/GenericWebProvider.php index ada72ea2..184aad32 100644 --- a/src/Services/InfoProviderSystem/Providers/GenericWebProvider.php +++ b/src/Services/InfoProviderSystem/Providers/GenericWebProvider.php @@ -311,6 +311,7 @@ class GenericWebProvider implements InfoProviderInterface private function fixAndValidateURL(string $url): string { $originalUrl = $url; + $url = urldecode($url); //Add scheme if missing if (!preg_match('/^https?:\/\//', $url)) { diff --git a/templates/info_providers/search/part_search.html.twig b/templates/info_providers/search/part_search.html.twig index a5602618..7e36451c 100644 --- a/templates/info_providers/search/part_search.html.twig +++ b/templates/info_providers/search/part_search.html.twig @@ -116,10 +116,10 @@ {% if update_target %} {# We update an existing part #} {% set href = path('info_providers_update_part', - {'providerKey': dto.provider_key, 'providerId': dto.provider_id, 'id': update_target.iD}) %} + {'providerKey': dto.provider_key, 'providerId': dto.provider_id|url_encode, 'id': update_target.iD}) %} {% else %} {# Create a fresh part #} {% set href = path('info_providers_create_part', - {'providerKey': dto.provider_key, 'providerId': dto.provider_id}) %} + {'providerKey': dto.provider_key, 'providerId': dto.provider_id|url_encode}) %} {% endif %} {# If we have no local part, then we can just show the create button #} @@ -139,7 +139,7 @@ target="_blank" title="{% trans %}info_providers.search.show_existing_part{% endtrans %}"> -