Diffstat (limited to 'views')
| -rw-r--r-- | views/layouts/general-page.html | 127 | ||||
| -rw-r--r-- | views/pages/global-map.html | 5 | ||||
| -rw-r--r-- | views/pages/unsubscribe-page.html | 5 |
3 files changed, 74 insertions, 63 deletions
diff --git a/views/layouts/general-page.html b/views/layouts/general-page.html index d787c16..98cbfcf 100644 --- a/views/layouts/general-page.html +++ b/views/layouts/general-page.html @@ -43,11 +43,6 @@ type="image/svg+xml" media="(prefers-color-scheme: dark)" /> - <link - rel="icon" - href="/favicon.ico" - type="image/x-icon" - /> {{- with .LinkedData }} <script type="application/ld+json"> {{ . }} @@ -311,50 +306,14 @@ switchTheme(savedTheme); </script> - <script src="{{ .StaticStorageBaseUrl }}/libs/htmx/2.0.6/htmx.min.js"></script> - <script src="{{ .StaticStorageBaseUrl }}/libs/leaflet/1.9.4/leaflet.js"></script> - <script src="{{ .StaticStorageBaseUrl }}/libs/imagesloaded/5.0.0/imagesloaded.pkgd.min.js"></script> - <script src="{{ .StaticStorageBaseUrl }}/libs/packery/3.0.0/dist/packery.pkgd.min.js"></script> - - <script> - // Enable fitWidth-like attribute for Packery. Source: https://codepen.io/desandro/pen/kVmLYz - var __resetLayout = Packery.prototype._resetLayout; - Packery.prototype._resetLayout = function () { - __resetLayout.call(this); - var parentSize = getSize(this.element.parentNode); - var colW = this.columnWidth + this.gutter; - this.fitWidth = - Math.floor((parentSize.innerWidth + this.gutter) / colW) * - colW; - this.packer.width = this.fitWidth; - this.packer.height = Number.POSITIVE_INFINITY; - this.packer.reset(); - }; - - Packery.prototype._getContainerSize = function () { - var emptyWidth = 0; - for (var i = 0, len = this.packer.spaces.length; i < len; i++) { - var space = this.packer.spaces[i]; - if ( - space.y === 0 && - space.height === Number.POSITIVE_INFINITY - ) { - emptyWidth += space.width; - } - } - - return { - width: this.fitWidth - this.gutter - emptyWidth, - height: this.maxY - this.gutter, - }; - }; - - Packery.prototype.needsResizeLayout = function () { - return true; - }; - </script> - - <div id="general-page-top-embeds" class="flex">{{ .RenderedTopEmbeds }}</div> + <div + id="general-page-top-embeds" + class="flex" + hx-get="/api/v1/general-page/top-embeds{{ if .QueryString }}?{{ .QueryString }}{{ end }}" + hx-trigger="load" + hx-target="this" + hx-swap="innerHTML" + ></div> <div id="general-page-top-embeds-trigger" hx-get="/api/v1/general-page/top-embeds{{ if .QueryString }}?{{ .QueryString }}{{ end }}" @@ -528,7 +487,11 @@ <header id="general-page-header" class="max-xs:hidden [@media(max-height:32rem)]:hidden flex flex-col ml-8 basis-8" - >{{ .RenderedHeader }}</header> + hx-get="/api/v1/general-page/header{{ if .QueryString }}?{{ .QueryString }}{{ end }}" + hx-trigger="load" + hx-target="this" + hx-swap="innerHTML" + ></header> <div id="general-page-header-trigger" hx-get="/api/v1/general-page/header{{ if .QueryString }}?{{ .QueryString }}{{ end }}" @@ -544,7 +507,11 @@ <main id="general-page-body" class="relative flex-1 overflow-y-auto" - >{{ .RenderedBody }}</main> + hx-get="/api/v1/general-page/body{{ if .QueryString }}?{{ .QueryString }}{{ end }}" + hx-trigger="load" + hx-target="this" + hx-swap="innerHTML" + ></main> <div id="general-page-body-trigger" hx-get="/api/v1/general-page/body{{ if .QueryString }}?{{ .QueryString }}{{ end }}" @@ -556,7 +523,11 @@ <footer id="general-page-footer" class="flex flex-row basis-4 my-1" - >{{ .RenderedFooter }}</footer> + hx-get="/api/v1/general-page/footer{{ if .QueryString }}?{{ .QueryString }}{{ end }}" + hx-trigger="load" + hx-target="this" + hx-swap="innerHTML" + ></footer> <div id="general-page-footer-trigger" hx-get="/api/v1/general-page/footer{{ if .QueryString }}?{{ .QueryString }}{{ end }}" @@ -578,7 +549,57 @@ <div class="grow bg-split-right"></div> - <div id="general-page-bottom-embeds" class="flex">{{ .RenderedBottomEmbeds }}</div> + <script src="{{ .StaticStorageBaseUrl }}/libs/htmx/2.0.6/htmx.min.js"></script> + <script src="{{ .StaticStorageBaseUrl }}/libs/leaflet/1.9.4/leaflet.js"></script> + <script src="{{ .StaticStorageBaseUrl }}/libs/imagesloaded/5.0.0/imagesloaded.pkgd.min.js"></script> + <script src="{{ .StaticStorageBaseUrl }}/libs/packery/3.0.0/dist/packery.pkgd.min.js"></script> + + <script> + // Enable fitWidth-like attribute for Packery. Source: https://codepen.io/desandro/pen/kVmLYz + var __resetLayout = Packery.prototype._resetLayout; + Packery.prototype._resetLayout = function () { + __resetLayout.call(this); + var parentSize = getSize(this.element.parentNode); + var colW = this.columnWidth + this.gutter; + this.fitWidth = + Math.floor((parentSize.innerWidth + this.gutter) / colW) * + colW; + this.packer.width = this.fitWidth; + this.packer.height = Number.POSITIVE_INFINITY; + this.packer.reset(); + }; + + Packery.prototype._getContainerSize = function () { + var emptyWidth = 0; + for (var i = 0, len = this.packer.spaces.length; i < len; i++) { + var space = this.packer.spaces[i]; + if ( + space.y === 0 && + space.height === Number.POSITIVE_INFINITY + ) { + emptyWidth += space.width; + } + } + + return { + width: this.fitWidth - this.gutter - emptyWidth, + height: this.maxY - this.gutter, + }; + }; + + Packery.prototype.needsResizeLayout = function () { + return true; + }; + </script> + + <div + id="general-page-bottom-embeds" + class="flex" + hx-get="/api/v1/general-page/bottom-embeds{{ if .QueryString }}?{{ .QueryString }}{{ end }}" + hx-trigger="load" + hx-target="this" + hx-swap="innerHTML" + ></div> <div id="general-page-bottom-embeds-trigger" hx-get="/api/v1/general-page/bottom-embeds{{ if .QueryString }}?{{ .QueryString }}{{ end }}" diff --git a/views/pages/global-map.html b/views/pages/global-map.html index 1501111..fe7d747 100644 --- a/views/pages/global-map.html +++ b/views/pages/global-map.html @@ -35,11 +35,6 @@ media="(prefers-color-scheme: dark)" /> <link - rel="icon" - href="/favicon.ico" - type="image/x-icon" - /> - <link rel="stylesheet" href="{{ .StaticStorageBaseUrl }}/libs/leaflet/1.9.4/leaflet.css" /> diff --git a/views/pages/unsubscribe-page.html b/views/pages/unsubscribe-page.html index 9a78488..a917746 100644 --- a/views/pages/unsubscribe-page.html +++ b/views/pages/unsubscribe-page.html @@ -16,11 +16,6 @@ type="image/svg+xml" media="(prefers-color-scheme: dark)" /> - <link - rel="icon" - href="/favicon.ico" - type="image/x-icon" - /> <title>{{ .L.UnsubscribePage.Header }} // SAYA.UZ</title> <style> .bg-paper { |