mirror of
https://github.com/nunocoracao/blowfish.git
synced 2025-02-02 11:32:30 -06:00
19520b4481
Also added ability to set author image as external url and updated relevant documentation in configuration
101 lines
No EOL
4.1 KiB
HTML
101 lines
No EOL
4.1 KiB
HTML
{{ $constrainItemsWidth := .Page.Site.Params.list.constrainItemsWidth | default false }}
|
|
|
|
{{ $articleClasses := "flex flex-wrap article" }}
|
|
{{ if .Site.Params.list.showCards }}
|
|
{{ $articleClasses = delimit (slice $articleClasses "border border-neutral-200 dark:border-neutral-700 border-2 rounded-md overflow-hidden") " " }}
|
|
{{ else }}
|
|
{{ $articleClasses = delimit (slice $articleClasses "") " " }}
|
|
{{ end }}
|
|
|
|
{{ $articleImageClasses := "w-full md:w-auto h-full thumbnail nozoom" }}
|
|
{{ if .Site.Params.list.showCards }}
|
|
{{ $articleImageClasses = delimit (slice $articleImageClasses "") " " }}
|
|
{{ else }}
|
|
{{ $articleImageClasses = delimit (slice $articleImageClasses "thumbnailshadow md:mr-7") " " }}
|
|
{{ end }}
|
|
|
|
{{ $disableImageOptimization := .Page.Site.Params.disableImageOptimization | default false }}
|
|
|
|
{{ $articleInnerClasses := "" }}
|
|
{{ if .Site.Params.list.showCards }}
|
|
{{ $articleInnerClasses = delimit (slice $articleInnerClasses "p-4") " " }}
|
|
{{ else }}
|
|
{{ $articleInnerClasses = delimit (slice $articleInnerClasses "mt-3 md:mt-0") " " }}
|
|
{{ end }}
|
|
|
|
{{ if $constrainItemsWidth }}
|
|
{{ $articleClasses = delimit (slice $articleClasses "max-w-prose") " " }}
|
|
{{ end }}
|
|
|
|
|
|
{{ with .Params.externalUrl }}
|
|
<a class="{{ $articleClasses }}" href="{{ . }}" target="_blank" rel="external">
|
|
{{ else }}
|
|
<a class="{{ $articleClasses }}" href="{{ .RelPermalink }}">
|
|
{{ end }}
|
|
{{- with $.Params.images -}}
|
|
{{- range first 6 . }}
|
|
<meta property="og:image" content="{{ . | absURL }}" />{{ end -}}
|
|
{{- else -}}
|
|
{{- $images := $.Resources.ByType "image" -}}
|
|
{{- $featured := $images.GetMatch "*feature*" -}}
|
|
{{- if not $featured }}{{ $featured = $images.GetMatch "{*cover*,*thumbnail*}" }}{{ end -}}
|
|
{{ if .Params.featureimage }}
|
|
{{- $url:= .Params.featureimage -}}
|
|
{{- if not $featured }}{{ $featured = resources.GetRemote $url }}{{ end -}}
|
|
{{ end }}
|
|
{{- if not $featured }}{{ with .Site.Params.defaultFeaturedImage }}{{ $featured = resources.Get . }}{{ end }}{{ end -}}
|
|
{{ if .Params.hideFeatureImage }}{{ $featured = false }}{{ end }}
|
|
{{- with $featured -}}
|
|
{{ if $disableImageOptimization }}
|
|
{{ with . }}
|
|
<div class="{{ $articleImageClasses }}" style="background-image:url({{ .RelPermalink }});"></div>
|
|
{{ end }}
|
|
{{ else }}
|
|
{{ with .Resize "600x" }}
|
|
<div class="{{ $articleImageClasses }}" style="background-image:url({{ .RelPermalink }});"></div>
|
|
{{ end }}
|
|
{{ end }}
|
|
{{- else -}}
|
|
{{- with $.Site.Params.images }}
|
|
<meta property="og:image" content="{{ index . 0 | absURL }}" />{{ end -}}
|
|
{{- end -}}
|
|
{{- end -}}
|
|
|
|
|
|
<div class="{{ $articleInnerClasses }}">
|
|
<div class="items-center text-left text-xl font-semibold">
|
|
{{ with .Params.externalUrl }}
|
|
<div>
|
|
<div
|
|
class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral">
|
|
{{ $.Title | emojify }}
|
|
<span class="text-xs align-top cursor-default text-neutral-400 dark:text-neutral-500">
|
|
<span class="rtl:hidden">↗</span>
|
|
<span class="ltr:hidden">↖</span>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
{{ else }}
|
|
<div class="font-bold text-xl text-neutral-800 decoration-primary-500 hover:underline hover:underline-offset-2 dark:text-neutral"
|
|
href="{{ .RelPermalink }}">{{ .Title | emojify }}</div>
|
|
{{ end }}
|
|
{{ if and .Draft .Site.Params.article.showDraftLabel }}
|
|
<div class=" ltr:ml-2 rtl:mr-2">
|
|
{{ partial "badge.html" (i18n "article.draft" | emojify) }}
|
|
</div>
|
|
{{ end }}
|
|
{{ if templates.Exists "partials/extend-article-link.html" }}
|
|
{{ partial "extend-article-link.html" . }}
|
|
{{ end }}
|
|
</div>
|
|
<div class="text-sm text-neutral-500 dark:text-neutral-400">
|
|
{{ partial "article-meta/basic.html" . }}
|
|
</div>
|
|
{{ if .Params.showSummary | default (.Site.Params.list.showSummary | default false) }}
|
|
<div class="py-1 max-w-fit prose dark:prose-invert">
|
|
{{ .Summary | emojify }}
|
|
</div>
|
|
{{ end }}
|
|
</div>
|
|
</a> |