summaryrefslogtreecommitdiff
path: root/web/template/status_attachments.tmpl
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2025-03-26 16:59:39 +0100
committerLibravatar GitHub <noreply@github.com>2025-03-26 15:59:39 +0000
commitb6e481d63eec15191f2717957682c13ee8a68308 (patch)
tree03cb9fc8bcb5f9eefddee754ad64b9de10c44c39 /web/template/status_attachments.tmpl
parent[chore] bumps our spf13/viper version (#3943) (diff)
downloadgotosocial-b6e481d63eec15191f2717957682c13ee8a68308.tar.xz
[feature] Allow user to choose "gallery" style layout for web view of profile (#3917)
* [feature] Allow user to choose "gallery" style web layout * find a bug and squish it up and all day long you'll have good luck * just a sec * [performance] reindex public timeline + tinker with query a bit * fiddling * should be good now * last bit of finagling, i'm done now i prommy * panic normally
Diffstat (limited to 'web/template/status_attachments.tmpl')
-rw-r--r--web/template/status_attachments.tmpl195
1 files changed, 0 insertions, 195 deletions
diff --git a/web/template/status_attachments.tmpl b/web/template/status_attachments.tmpl
deleted file mode 100644
index ee564d934..000000000
--- a/web/template/status_attachments.tmpl
+++ /dev/null
@@ -1,195 +0,0 @@
-{{- /*
-// GoToSocial
-// Copyright (C) GoToSocial Authors admin@gotosocial.org
-// SPDX-License-Identifier: AGPL-3.0-or-later
-//
-// This program is free software: you can redistribute it and/or modify
-// it under the terms of the GNU Affero General Public License as published by
-// the Free Software Foundation, either version 3 of the License, or
-// (at your option) any later version.
-//
-// This program is distributed in the hope that it will be useful,
-// but WITHOUT ANY WARRANTY; without even the implied warranty of
-// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-// GNU Affero General Public License for more details.
-//
-// You should have received a copy of the GNU Affero General Public License
-// along with this program. If not, see <http://www.gnu.org/licenses/>.
-*/ -}}
-
-{{- /*
- Template for rendering a gallery of status media attachments.
- To use this template, pass a web view status into it.
-*/ -}}
-
-{{- define "imagePreview" }}
-<img
- src="{{- .PreviewURL -}}"
- loading="lazy"
- {{- if .Description }}
- alt="{{- .Description -}}"
- title="{{- .Description -}}"
- {{- end }}
- width="{{- .Meta.Original.Width -}}"
- height="{{- .Meta.Original.Height -}}"
-/>
-{{- end }}
-
-{{- define "videoPreview" }}
-<img
- src="{{- .PreviewURL -}}"
- loading="lazy"
- {{- if .Description }}
- alt="{{- .Description -}}"
- title="{{- .Description -}}"
- {{- end }}
- width="{{- .Meta.Small.Width -}}"
- height="{{- .Meta.Small.Height -}}"
-/>
-{{- end }}
-
-{{- define "audioPreview" }}
-{{- if and .PreviewURL .Meta.Small.Width }}
-<img
- src="{{- .PreviewURL -}}"
- loading="lazy"
- {{- if .Description }}
- alt="{{- .Description -}}"
- title="{{- .Description -}}"
- {{- end }}
- width="{{- .Meta.Small.Width -}}"
- height="{{- .Meta.Small.Height -}}"
-/>
-{{- else }}
-<img
- src="/assets/logo.webp"
- loading="lazy"
- {{- if .Description }}
- alt="{{- .Description -}}"
- title="{{- .Description -}}"
- {{- end }}
- width="518"
- height="460"
-/>
-{{- end }}
-{{- end }}
-
-{{- /* Produces something like "1 attachment", "2 attachments", etc */ -}}
-{{- define "attachmentsLength" -}}
-{{- (len .) }}{{- if eq (len .) 1 }} attachment{{- else }} attachments{{- end -}}
-{{- end -}}
-
-{{- /* Produces something like "media photoswipe-gallery odd single" */ -}}
-{{- define "galleryClass" -}}
-media photoswipe-gallery {{ (len .) | oddOrEven }} {{ if eq (len .) 1 }}single{{ else if eq (len .) 2 }}double{{ end }}
-{{- end -}}
-
-{{- with .MediaAttachments }}
-<div
- class="{{- template "galleryClass" . -}}"
- role="group"
- aria-label="{{- template "attachmentsLength" . -}}"
->
- {{- range $index, $media := . }}
- <div class="media-wrapper">
- <details class="{{- $media.Type -}}-spoiler media-spoiler" {{- if not $media.Sensitive }} open{{- end -}}>
- <summary>
- <div class="show sensitive button" aria-hidden="true">Show sensitive media</div>
- <span class="eye button" role="button" tabindex="0" aria-label="Toggle media">
- <i class="hide fa fa-fw fa-eye-slash" aria-hidden="true"></i>
- <i class="show fa fa-fw fa-eye" aria-hidden="true"></i>
- </span>
- {{- if or (eq .Type "video") (eq .Type "gifv") }}
- {{- include "videoPreview" $media | indent 4 }}
- {{- else if eq .Type "image" }}
- {{- include "imagePreview" $media | indent 4 }}
- {{- else if eq .Type "audio" }}
- {{- include "audioPreview" $media | indent 4 }}
- {{- end }}
- </summary>
- {{- if or (eq .Type "video") (eq .Type "gifv") }}
- <video
- {{- if eq .Type "video" }}
- preload="none"
- {{- else }}
- preload="auto"
- muted
- {{- end }}
- class="plyr-video photoswipe-slide{{- if eq .Type "gifv" }} gifv{{ end }}"
- controls
- playsinline
- data-pswp-index="{{- $index -}}"
- poster="{{- .PreviewURL -}}"
- data-pswp-width="{{- $media.Meta.Small.Width -}}px"
- data-pswp-height="{{- $media.Meta.Small.Height -}}px"
- {{- if .Description }}
- alt="{{- $media.Description -}}"
- title="{{- $media.Description -}}"
- {{- end }}
- >
- <source type="{{- $media.MIMEType -}}" src="{{- $media.URL -}}"/>
- </video>
- {{- else if eq .Type "audio" }}
- <video
- preload="none"
- class="plyr-video photoswipe-slide"
- controls
- playsinline
- data-pswp-index="{{- $index -}}"
- {{- if and $media.PreviewURL $media.Meta.Small.Width }}
- poster="{{- .PreviewURL -}}"
- data-pswp-width="{{- $media.Meta.Small.Width -}}px"
- data-pswp-height="{{- $media.Meta.Small.Height -}}px"
- {{- else }}
- poster="/assets/logo.webp"
- width="518px"
- height="460px"
- {{- end }}
- {{- if .Description }}
- alt="{{- $media.Description -}}"
- title="{{- $media.Description -}}"
- {{- end }}
- >
- <source type="{{- $media.MIMEType -}}" src="{{- $media.URL -}}"/>
- </video>
- {{- else if eq .Type "image" }}
- <a
- class="photoswipe-slide"
- href="{{- $media.URL -}}"
- target="_blank"
- data-pswp-width="{{- $media.Meta.Original.Width -}}px"
- data-pswp-height="{{- $media.Meta.Original.Height -}}px"
- data-cropped="true"
- {{- if .Description }}
- alt="{{- $media.Description -}}"
- title="{{- $media.Description -}}"
- {{- end }}
- >
- {{- with $media }}
- {{- include "imagePreview" . | indent 4 }}
- {{- end }}
- </a>
- {{- else }}
- <a
- class="unknown-attachment"
- href="{{- $media.RemoteURL -}}"
- rel="nofollow noreferrer noopener"
- target="_blank"
- {{- if .Description }}
- title="Open external media: {{ $media.Description -}}&#10;&#13;{{- $media.RemoteURL -}}"
- {{- else }}
- title="Open external media.&#10;&#13;{{- $media.RemoteURL -}}"
- {{- end }}
- >
- <div class="placeholder" aria-hidden="true">
- <i class="placeholder-external-link fa fa-external-link"></i>
- <i class="placeholder-icon fa fa-file-text"></i>
- <div class="placeholder-link-to">External media</div>
- </div>
- </a>
- {{- end }}
- </details>
- </div>
- {{- end }}
-</div>
-{{- end }} \ No newline at end of file