{{/* Video Shortcode for Wowchemy. */}} {{/* Load video from page dir falling back to media library at `assets/media/` and then to remote URI. */}} {{ $destination := .Get "src" }} {{ $video_ext_with_dot := path.Ext (.Get "src") }} {{ $video_ext := strings.TrimPrefix "." $video_ext_with_dot }} {{ $video_type := $video_ext }} {{ $destination_preview := (.Get "poster") | default (replace $destination $video_ext_with_dot ".jpg") }} {{ $is_remote := strings.HasPrefix $destination "http" }} {{- $asset := "" -}} {{- $asset_preview := "" -}} {{- if not $is_remote -}} {{- $asset = (.Page.Resources.ByType "video").GetMatch $destination -}} {{- $asset_preview = (.Page.Resources.ByType "image").GetMatch $destination_preview -}} {{- if not $asset -}} {{- $asset = resources.Get (path.Join "media" $destination) -}} {{- $asset_preview = resources.Get (path.Join "media" $destination_preview) -}} {{- end -}} {{ $video_type = $asset.MediaType.SubType }} {{- end -}} {{ if $asset }} {{ $destination = $asset.RelPermalink }} {{ else }} {{ $destination = $destination | safeURL }} {{ end }} {{ $poster := (.Get "poster") | default "" }} {{ if $asset_preview }} {{ $poster = $asset_preview.RelPermalink }} {{ end }}