diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php index 9ab84d120..276c3f4a7 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Actions.php @@ -919,7 +919,7 @@ class Actions $bAppJsDebug = $this->oConfig->Get('labs', 'use_app_debug_js', false); - $aResult['StaticLibsJs'] = $this->StaticPath('js/' . ($bAppJsDebug ? '' : 'min/') . + $aResult['StaticLibsJs'] = Utils::WebStaticPath('js/' . ($bAppJsDebug ? '' : 'min/') . 'libs' . ($bAppJsDebug ? '' : '.min') . '.js'); // IDN @@ -1297,9 +1297,4 @@ class Actions \header('Location: ' . $sUrl); } - public function StaticPath(string $sPath): string - { - return Utils::WebStaticPath() . $sPath; - } - } diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Service.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Service.php index 1e0926f71..b3783ae96 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Service.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Service.php @@ -169,15 +169,15 @@ abstract class Service $sFaviconUrl = (string) $oConfig->Get('webmail', 'favicon_url', ''); - $sFaviconPngLink = $sFaviconUrl ? $sFaviconUrl : $oActions->StaticPath('apple-touch-icon.png'); - $sAppleTouchLink = $sFaviconUrl ? '' : $oActions->StaticPath('apple-touch-icon.png'); + $sFaviconPngLink = $sFaviconUrl ? $sFaviconUrl : Utils::WebStaticPath('apple-touch-icon.png'); + $sAppleTouchLink = $sFaviconUrl ? '' : Utils::WebStaticPath('apple-touch-icon.png'); $aTemplateParameters = array( '{{BaseAppFaviconPngLinkTag}}' => $sFaviconPngLink ? '' : '', '{{BaseAppFaviconTouchLinkTag}}' => $sAppleTouchLink ? '' : '', - '{{BaseAppMainCssLink}}' => $oActions->StaticPath('css/'.($bAdmin ? 'admin' : 'app').$sAppCssMin.'.css'), + '{{BaseAppMainCssLink}}' => Utils::WebStaticPath('css/'.($bAdmin ? 'admin' : 'app').$sAppCssMin.'.css'), '{{BaseAppThemeCssLink}}' => $oActions->ThemeLink($bAdmin), - '{{BaseAppManifestLink}}' => $oActions->StaticPath('manifest.json'), + '{{BaseAppManifestLink}}' => Utils::WebStaticPath('manifest.json'), '{{LoadingDescriptionEsc}}' => \htmlspecialchars($oConfig->Get('webmail', 'loading_description', 'SnappyMail'), ENT_QUOTES|ENT_IGNORE, 'UTF-8'), '{{BaseAppAdmin}}' => $bAdmin ? 1 : 0 ); diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/ServiceActions.php b/snappymail/v/0.0.0/app/libraries/RainLoop/ServiceActions.php index 1dd9e772f..5495b2a4d 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/ServiceActions.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/ServiceActions.php @@ -616,7 +616,6 @@ class ServiceActions \header('Content-Type: text/html; charset=utf-8'); return \strtr(\file_get_contents(APP_VERSION_ROOT_PATH.'app/templates/BadBrowser.html'), array( - '{{BaseWebStaticPath}}' => Utils::WebStaticPath(), '{{ErrorTitle}}' => $sTitle, '{{ErrorHeader}}' => $sTitle, '{{ErrorDesc}}' => $sDesc @@ -809,7 +808,6 @@ class ServiceActions public function ErrorTemplates(string $sTitle, string $sDesc, bool $bShowBackLink = true) { return \strtr(\file_get_contents(APP_VERSION_ROOT_PATH.'app/templates/Error.html'), array( - '{{BaseWebStaticPath}}' => Utils::WebStaticPath(), '{{ErrorTitle}}' => $sTitle, '{{ErrorHeader}}' => $sTitle, '{{ErrorDesc}}' => $sDesc, diff --git a/snappymail/v/0.0.0/app/libraries/RainLoop/Utils.php b/snappymail/v/0.0.0/app/libraries/RainLoop/Utils.php index 52065c629..db5e4ea2f 100644 --- a/snappymail/v/0.0.0/app/libraries/RainLoop/Utils.php +++ b/snappymail/v/0.0.0/app/libraries/RainLoop/Utils.php @@ -148,8 +148,9 @@ class Utils { static $sAppPath; if (!$sAppPath) { - $sAppPath = Api::Config()->Get('webmail', 'app_path', '') - ?: \preg_replace('#index\\.php.*$#D', '', $_SERVER['SCRIPT_NAME']); + $sAppPath = \rtrim(Api::Config()->Get('webmail', 'app_path', '') + ?: \preg_replace('#index\\.php.*$#D', '', $_SERVER['SCRIPT_NAME']), + '/') . '/'; } return $sAppPath; } @@ -159,9 +160,9 @@ class Utils return self::WebPath().'snappymail/v/'.APP_VERSION.'/'; } - public static function WebStaticPath() : string + public static function WebStaticPath(string $path = '') : string { - return self::WebVersionPath().'static/'; + return self::WebVersionPath() . 'static/' . $path; } public static function RemoveSuggestionDuplicates(array $aSuggestions) : array