mirror of
https://github.com/McShelby/hugo-theme-relearn.git
synced 2024-11-23 15:57:57 +00:00
68 lines
No EOL
3.4 KiB
HTML
68 lines
No EOL
3.4 KiB
HTML
{{- $page := .page }}
|
|
{{- if and (not $page) .context }}
|
|
{{- $page = .context }}
|
|
{{- warnf "%q: DEPRECATED parameter 'context' for shortcode 'notice' found, use 'page' instead; see https://mcshelby.github.io/hugo-theme-relearn/basics/migration#5180" $page.File.Filename }}
|
|
{{- end }}
|
|
{{- $color := .color | default "" }}
|
|
{{- $content := .content }}
|
|
{{- $hasContent := ne (strings.TrimLeft "<p>" (trim $content "\n\r\t ")) "" }}
|
|
{{- $style := .style | default "default" }}
|
|
{{- $title := .title }}
|
|
{{- if not $title }}
|
|
{{- if eq $style "caution" }}{{ $title = $style | T }}{{ end }}
|
|
{{- if eq $style "important" }}{{ $title = $style | T }}{{ end }}
|
|
{{- if eq $style "info" }}{{ $title = $style | T }}{{ end }}
|
|
{{- if eq $style "note" }}{{ $title = $style | T }}{{ end }}
|
|
{{- if eq $style "tip" }}{{ $title = $style | T }}{{ end }}
|
|
{{- if eq $style "warning" }}{{ $title = $style | T }}{{ end }}
|
|
{{- end }}
|
|
{{- $title = trim $title " " }}
|
|
{{- $icon := .icon | default "" }}
|
|
{{- if and (not $icon) (eq (len $icon) 0) }}
|
|
{{- if eq $style "caution" }}{{ $icon = default "hand" }}{{ end }}
|
|
{{- if eq $style "important" }}{{ $icon = default "bolt" }}{{ end }}
|
|
{{- if eq $style "info" }}{{ $icon = default "info-circle" }}{{ end }}
|
|
{{- if eq $style "note" }}{{ $icon = default "exclamation-circle" }}{{ end }}
|
|
{{- if eq $style "tip" }}{{ $icon = default "lightbulb" }}{{ end }}
|
|
{{- if eq $style "warning" }}{{ $icon = default "exclamation-triangle" }}{{ end }}
|
|
{{- end }}
|
|
{{- $icon = trim $icon " " }}
|
|
{{- if and $icon (not (findRE ".*?\\bfa-\\w.*?" $icon)) }}
|
|
{{- $icon = printf "fa-fw fas fa-%s" $icon }}
|
|
{{- end }}
|
|
{{- $expander := false }}
|
|
{{- $expanded := .expanded | default "" }}
|
|
{{- if $hasContent }}
|
|
{{- if eq (printf "%T" $expanded) "string" }}
|
|
{{- if ne (trim $expanded " ") "" }}
|
|
{{- $expander = true }}
|
|
{{- $expanded = (eq $expanded "true") }}
|
|
{{- end }}
|
|
{{- else }}
|
|
{{- $expander = true }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- $id := cond (or (eq .id nil) (eq .id "")) (partial "make-random-md5.hugo" $page) .id }}
|
|
{{- with $page }}
|
|
{{- if or $icon $title $hasContent }}
|
|
<div class="{{ if $expander }}expand {{ end }}box notices cstyle {{ $style }}"{{ if $color }} style="--VARIABLE-BOX-color: {{ $color }};"{{ end }}>
|
|
{{- if $expander }}
|
|
<input type="checkbox" id="R-expand-{{ $id }}" aria-controls="R-expandcontent-{{ $id }}" {{ if $expanded }} checked{{ end }}>
|
|
<label class="expand-label box-label" for="R-expand-{{ $id }}">
|
|
<i class="expander-icon fa-fw fas fa-chevron-down"></i>
|
|
<i class="expander-icon fa-fw fas fa-chevron-right"></i> {{ if $icon }}<i class="{{ $icon }}"></i>{{ end }}{{ if and $icon $title }} {{ end }}{{ $title | .RenderString }}
|
|
</label>
|
|
<div class="box-spacer"></div>
|
|
{{- else if or $icon $title }}
|
|
<div class="box-label">
|
|
{{ if $icon }}<i class="{{ $icon }}"></i>{{ end }}{{ if and $icon $title }} {{ end }}{{ $title | .RenderString }}
|
|
</div>
|
|
{{- end }}
|
|
{{- if $hasContent }}
|
|
<div{{ if $expander }} id="R-expandcontent-{{ $id }}"{{ end }} class="{{ if $expander }}expand-content {{ end }}box-content">
|
|
{{ if ne "<" (substr (strings.TrimLeft "\n\r\t " $content) 0 1) }}<p>{{ end }}<!-- we add a DOM element here if there is none to make collapsing marings work -->
|
|
{{ $content | safeHTML }}</div><!-- no line break allowed here because of awkward behavior of Hugo 110 or this theme when tag shortcode is called standalone outside of tags shortcode ? -->
|
|
{{- end }}
|
|
</div>
|
|
{{- end }}
|
|
{{- end }} |