diff --git a/application/twigextension.class.inc.php b/application/twigextension.class.inc.php index 52d1dd569..85e23afd5 100644 --- a/application/twigextension.class.inc.php +++ b/application/twigextension.class.inc.php @@ -80,30 +80,14 @@ class TwigExtension // Filter to add itopversion to an url $oTwigEnv->addFilter(new Twig_SimpleFilter('add_itop_version', function ($sUrl) { - if (strpos($sUrl, '?') === false) - { - $sUrl = $sUrl."?itopversion=".ITOP_VERSION; - } - else - { - $sUrl = $sUrl."&itopversion=".ITOP_VERSION; - } - + $sUrl = utils::AddParamToUrl($sUrl, 'itopversion', ITOP_VERSION); return $sUrl; })); // Filter to add a module's version to an url $oTwigEnv->addFilter(new Twig_SimpleFilter('add_module_version', function ($sUrl, $sModuleName) { $sModuleVersion = utils::GetCompiledModuleVersion($sModuleName); - - if (strpos($sUrl, '?') === false) - { - $sUrl = $sUrl."?moduleversion=".$sModuleVersion; - } - else - { - $sUrl = $sUrl."&moduleversion=".$sModuleVersion; - } + $sUrl = utils::AddParamToUrl($sUrl, 'moduleversion', $sModuleVersion); return $sUrl; })); @@ -137,4 +121,5 @@ class TwigExtension return utils::GetAbsoluteUrlModulePage($sModuleName, $sPage); })); } + } diff --git a/application/utils.inc.php b/application/utils.inc.php index d2898badb..4b7a0abd8 100644 --- a/application/utils.inc.php +++ b/application/utils.inc.php @@ -3014,4 +3014,24 @@ HTML; return $aMentionedObjects; } + + /** + * @param $sUrl + * @param string|null $sModuleVersion + * + * @return string + */ + public static function AddParamToUrl($sUrl, string $sName, string $sModuleVersion): string + { + if (strpos($sUrl, '?') === false) + { + $sUrl = $sUrl."?".$sName."=".$sModuleVersion; + } + else + { + $sUrl = $sUrl."&".$sName."=".$sModuleVersion; + } + + return $sUrl; + } } diff --git a/datamodels/2.x/itop-portal-base/portal/src/Twig/AppExtension.php b/datamodels/2.x/itop-portal-base/portal/src/Twig/AppExtension.php index 73f9c2d68..6eb8fb9f2 100644 --- a/datamodels/2.x/itop-portal-base/portal/src/Twig/AppExtension.php +++ b/datamodels/2.x/itop-portal-base/portal/src/Twig/AppExtension.php @@ -134,14 +134,7 @@ class AppExtension extends AbstractExtension // Filter to add itopversion to an url $filters[] = new Twig_SimpleFilter('add_itop_version', function ($sUrl) { - if (strpos($sUrl, '?') === false) - { - $sUrl = $sUrl."?itopversion=".ITOP_VERSION; - } - else - { - $sUrl = $sUrl."&itopversion=".ITOP_VERSION; - } + $sUrl = utils::AddParamToUrl($sUrl, 'itopversion', ITOP_VERSION); return $sUrl; }); @@ -149,15 +142,7 @@ class AppExtension extends AbstractExtension // Filter to add a module's version to an url $filters[] = new Twig_SimpleFilter('add_module_version', function ($sUrl, $sModuleName) { $sModuleVersion = utils::GetCompiledModuleVersion($sModuleName); - - if (strpos($sUrl, '?') === false) - { - $sUrl = $sUrl."?moduleversion=".$sModuleVersion; - } - else - { - $sUrl = $sUrl."&moduleversion=".$sModuleVersion; - } + $sUrl = utils::AddParamToUrl($sUrl, 'moduleversion', $sModuleVersion); return $sUrl; }); diff --git a/sources/application/TwigBase/Twig/Extension.php b/sources/application/TwigBase/Twig/Extension.php index 89b157de7..d401814af 100644 --- a/sources/application/TwigBase/Twig/Extension.php +++ b/sources/application/TwigBase/Twig/Extension.php @@ -114,11 +114,7 @@ class Extension // // Note: This could be rename "add_cache_buster" instead. $oTwigEnv->addFilter(new Twig_SimpleFilter('add_itop_version', function ($sUrl) { - if (strpos($sUrl, '?') === false) { - $sUrl = $sUrl."?t=".utils::GetCacheBusterTimestamp(); - } else { - $sUrl = $sUrl."&t=".utils::GetCacheBusterTimestamp(); - } + $sUrl = utils::AddParamToUrl($sUrl, 't', utils::GetCacheBusterTimestamp()); return $sUrl; })); @@ -126,12 +122,7 @@ class Extension // Filter to add a module's version to an url $oTwigEnv->addFilter(new Twig_SimpleFilter('add_module_version', function ($sUrl, $sModuleName) { $sModuleVersion = utils::GetCompiledModuleVersion($sModuleName); - - if (strpos($sUrl, '?') === false) { - $sUrl = $sUrl."?moduleversion=".$sModuleVersion; - } else { - $sUrl = $sUrl."&moduleversion=".$sModuleVersion; - } + $sUrl = utils::AddParamToUrl($sUrl, 'moduleversion', $sModuleVersion); return $sUrl; }));