mirror of
https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.git
synced 2024-09-19 18:07:52 +00:00
53 lines
1.8 KiB
HTML
53 lines
1.8 KiB
HTML
|
{{- /* Make sure that we are enclosed within a tabpane shortcode block */ -}}
|
||
|
{{ with $.Parent -}}
|
||
|
{{ if ne $.Parent.Name "tabpane" -}}
|
||
|
{{ errorf "shortcode 'tab' must be used within a 'tabpane' block" -}}
|
||
|
{{ end -}}
|
||
|
{{ end -}}
|
||
|
|
||
|
{{ $header := "Tab" -}}
|
||
|
{{ if and (not .IsNamedParams) (.Get 0) -}}
|
||
|
{{ $header = (.Get 0) -}}
|
||
|
{{ else -}}
|
||
|
{{/* Prefill header if not given as named or unnamed parameter */ -}}
|
||
|
{{ $header = default (printf "Tab %v" ( add $.Ordinal 1)) (.Get "header") -}}
|
||
|
{{ end -}}
|
||
|
|
||
|
{{/* store all tab info in dict tab */ -}}
|
||
|
{{ $tab := dict "header" $header -}}
|
||
|
{{ with $.Get "lang" -}}
|
||
|
{{ $tab = merge $tab (dict "language" ($.Get "lang")) -}}
|
||
|
{{ end -}}
|
||
|
{{ with $.Get "highlight" -}}
|
||
|
{{ $tab = merge $tab (dict "highlight" ($.Get "highlight")) -}}
|
||
|
{{ end -}}
|
||
|
{{ with $.Get "text" -}}
|
||
|
{{ if ne ( printf "%T" . ) "bool" -}}
|
||
|
{{ errorf "shortcode tab: parameter 'text' must be either true or false" -}}
|
||
|
{{ end -}}
|
||
|
{{ $tab = merge $tab (dict "text" ($.Get "text")) -}}
|
||
|
{{ end -}}
|
||
|
{{ with $.Get "right" -}}
|
||
|
{{ if ne ( printf "%T" . ) "bool" -}}
|
||
|
{{ errorf "shortcode tab: parameter 'right' must be either true or false" -}}
|
||
|
{{ end -}}
|
||
|
{{ $tab = merge $tab (dict "rightpush" ($.Get "right")) -}}
|
||
|
{{ end -}}
|
||
|
{{ with $.Get "disabled" -}}
|
||
|
{{ if ne ( printf "%T" . ) "bool" -}}
|
||
|
{{ errorf "shortcode tab: parameter 'disabled' must be either true or false" -}}
|
||
|
{{ end -}}
|
||
|
{{ $tab = merge $tab (dict "disabled" ($.Get "disabled")) -}}
|
||
|
{{ end -}}
|
||
|
|
||
|
{{ with $.Inner -}}
|
||
|
{{/* Trim any leading and trailing newlines from .Inner, this avoids
|
||
|
spurious lines during syntax highlighting */ -}}
|
||
|
{{ $tab = merge $tab (dict "content" $.Inner) -}}
|
||
|
{{ end -}}
|
||
|
|
||
|
{{/* add dict tab to parent's scratchpad */ -}}
|
||
|
{{ with .Parent -}}
|
||
|
{{ $.Parent.Scratch.SetInMap "tabs" (printf "%02v" $.Ordinal) $tab -}}
|
||
|
{{ end -}}
|