feat: serve local assets via CDN with env-configurable URLs

- Move popper.js, tippy.js, alpine-ui, alpine-focus, flowbite, jquery,
  jquery-ui, and swfobject from local assets to CDN (jsDelivr/cdnjs)
- All new CDN URLs are configurable via .env variables
- Old local assets remain as fallback for flowbite CSS/JS only
This commit is contained in:
root
2026-06-26 18:53:27 +02:00
parent c225eb7771
commit 0ac3a5ea21
5 changed files with 34 additions and 25 deletions
+16 -7
View File
@@ -61,13 +61,22 @@ return [
],
'cdn' => [
'fancybox_js' => env('FANCYBOX_JS_URL', 'https://cdn.jsdelivr.net/npm/@fancyapps/ui@4/dist/fancybox.umd.js'),
'fancybox_css' => env('FANCYBOX_CSS_URL', 'https://cdn.jsdelivr.net/npm/@fancyapps/ui@4/dist/fancybox.css'),
'sweetalert2_js' => env('SWEETALERT2_JS_URL', '//cdn.jsdelivr.net/npm/sweetalert2@11'),
'alpine_js' => env('ALPINE_JS_URL', 'https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js'),
'fontsource_inter_css' => env('FONTSOURCE_INTER_CSS_URL', 'https://cdn.jsdelivr.net/npm/@fontsource/inter@4.x/400-700.css'),
'fontawesome_css' => env('FONTAWESOME_CSS_URL', 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.2.0/css/all.min.css'),
'html2canvas_js' => env('HTML2CANVAS_JS_URL', 'https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.3.3/html2canvas.min.js'),
'fancybox_js' => env('FANCYBOX_JS_URL', 'https://cdn.jsdelivr.net/npm/@fancyapps/ui@6.1.14/dist/fancybox/fancybox.umd.min.js'),
'fancybox_css' => env('FANCYBOX_CSS_URL', 'https://cdn.jsdelivr.net/npm/@fancyapps/ui@6.1.14/dist/fancybox/fancybox.min.css'),
'sweetalert2_js' => env('SWEETALERT2_JS_URL', '//cdn.jsdelivr.net/npm/sweetalert2@11.26.25'),
'alpine_js' => env('ALPINE_JS_URL', 'https://cdn.jsdelivr.net/npm/alpinejs@3.15.12/dist/cdn.min.js'),
'flowbite_css' => env('FLOWBITE_CSS_URL', 'https://cdn.jsdelivr.net/npm/flowbite@4.0.2/dist/flowbite.min.css'),
'flowbite_js' => env('FLOWBITE_JS_URL', 'https://cdn.jsdelivr.net/npm/flowbite@4.0.2/dist/flowbite.min.js'),
'alpine_ui_js' => env('ALPINE_UI_JS_URL', 'https://cdn.jsdelivr.net/npm/@alpinejs/ui@3.15.12/dist/cdn.min.js'),
'alpine_focus_js' => env('ALPINE_FOCUS_JS_URL', 'https://cdn.jsdelivr.net/npm/@alpinejs/focus@3.15.12/dist/cdn.min.js'),
'fontsource_inter_css' => env('FONTSOURCE_INTER_CSS_URL', 'https://cdn.jsdelivr.net/npm/@fontsource/inter@5.2.8/400.css'),
'fontawesome_css' => env('FONTAWESOME_CSS_URL', 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/7.0.1/css/all.min.css'),
'html2canvas_js' => env('HTML2CANVAS_JS_URL', 'https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js'),
'popper_js' => env('POPPER_JS_URL', 'https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.8/dist/umd/popper.min.js'),
'tippy_js' => env('TIPPY_JS_URL', 'https://cdn.jsdelivr.net/npm/tippy.js@6.3.7/dist/tippy-bundle.umd.min.js'),
'jquery_js' => env('JQUERY_JS_URL', 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js'),
'jquery_ui_js' => env('JQUERY_UI_JS_URL', 'https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.14.1/jquery-ui.min.js'),
'swfobject_js' => env('SWFOBJECT_JS_URL', 'https://cdnjs.cloudflare.com/ajax/libs/swfobject/2.2/swfobject.js'),
],
'findretros' => [
@@ -11,10 +11,10 @@
<title>{{ setting('hotel_name') }} - {{ __('Client') }}</title>
<script src="{{ asset('assets/js/jquery-latest.js') }}" type="text/javascript"></script>
<script src="{{ asset('assets/js/jquery-ui.js') }}" type="text/javascript"></script>
<script src="{{ config('habbo.cdn.jquery_js') }}" type="text/javascript"></script>
<script src="{{ config('habbo.cdn.jquery_ui_js') }}" type="text/javascript"></script>
<script src="{{ asset('assets/js/flashclient.js') }}"></script>
<script type="text/javascript" src="{{ asset('assets/js/swfobject.js') }}"></script>
<script type="text/javascript" src="{{ config('habbo.cdn.swfobject_js') }}"></script>
<link rel="stylesheet" href="{{ asset('assets/css/clientnew.css') }}" type="text/css">
<link rel="stylesheet" href="{{ asset('assets/css/no-flash.css') }}" type="text/css">
@@ -22,9 +22,9 @@
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&display=swap">
@endif
<link rel="stylesheet" href="{{ asset('assets/css/flowbite.min.css') }}" />
<script src="{{ asset('assets/js/popper.min.js') }}"></script>
<script src="{{ asset('assets/js/tippy-bundle.umd.min.js') }}"></script>
<link rel="stylesheet" href="{{ config('habbo.cdn.flowbite_css', asset('assets/css/flowbite.min.css')) }}" />
<script src="{{ config('habbo.cdn.popper_js') }}"></script>
<script src="{{ config('habbo.cdn.tippy_js') }}"></script>
<link rel="stylesheet" href="{{ asset('assets/css/scale.min.css') }}"/>
@vite(['resources/themes/' . setting('theme', 'atom') . '/css/app.css', 'resources/themes/' . setting('theme', 'atom') . '/js/app.js'], 'build')
@@ -228,9 +228,9 @@
@endpush
@endif
<script defer src="{{ asset('assets/js/alpine-ui.js') }}"></script>
<script defer src="{{ asset('assets/js/alpine-focus.js') }}"></script>
<script src="{{ asset('assets/js/flowbite.min.js') }}"></script>
<script defer src="{{ config('habbo.cdn.alpine_ui_js') }}"></script>
<script defer src="{{ config('habbo.cdn.alpine_focus_js') }}"></script>
<script src="{{ config('habbo.cdn.flowbite_js', asset('assets/js/flowbite.min.js')) }}"></script>
@stack('javascript')
</body>
@@ -11,10 +11,10 @@
<title>{{ setting('hotel_name') }} - {{ __('Client') }}</title>
<script src="{{ asset('assets/js/jquery-latest.js') }}" type="text/javascript"></script>
<script src="{{ asset('assets/js/jquery-ui.js') }}" type="text/javascript"></script>
<script src="{{ config('habbo.cdn.jquery_js') }}" type="text/javascript"></script>
<script src="{{ config('habbo.cdn.jquery_ui_js') }}" type="text/javascript"></script>
<script src="{{ asset('assets/js/flashclient.js') }}"></script>
<script type="text/javascript" src="{{ asset('assets/js/swfobject.js') }}"></script>
<script type="text/javascript" src="{{ config('habbo.cdn.swfobject_js') }}"></script>
<link rel="stylesheet" href="{{ asset('assets/css/clientnew.css') }}" type="text/css">
<link rel="stylesheet" href="{{ asset('assets/css/no-flash.css') }}" type="text/css">
+6 -6
View File
@@ -20,9 +20,9 @@
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700&display=swap">
@endif
<link rel="stylesheet" href="{{ asset('assets/css/flowbite.min.css') }}" />
<script src="{{ asset('assets/js/popper.min.js') }}"></script>
<script src="{{ asset('assets/js/tippy-bundle.umd.min.js') }}"></script>
<link rel="stylesheet" href="{{ config('habbo.cdn.flowbite_css', asset('assets/css/flowbite.min.css')) }}" />
<script src="{{ config('habbo.cdn.popper_js') }}"></script>
<script src="{{ config('habbo.cdn.tippy_js') }}"></script>
<link rel="stylesheet" href="{{ asset('assets/css/scale.min.css') }}"/>
@vite(['resources/js/ssr.jsx', 'resources/themes/' . setting('theme', 'atom') . '/css/app.css', 'resources/themes/' . setting('theme', 'atom') . '/js/app.js'], 'build')
@@ -209,8 +209,8 @@
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
@endif
<script defer src="{{ asset('assets/js/alpine-ui.js') }}"></script>
<script defer src="{{ asset('assets/js/alpine-focus.js') }}"></script>
<script src="{{ asset('assets/js/flowbite.min.js') }}"></script>
<script defer src="{{ config('habbo.cdn.alpine_ui_js') }}"></script>
<script defer src="{{ config('habbo.cdn.alpine_focus_js') }}"></script>
<script src="{{ config('habbo.cdn.flowbite_js', asset('assets/js/flowbite.min.js')) }}"></script>
</body>
</html>