You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

40 lines
1.9 KiB

4 years ago
  1. {{/*
  2. Copyright (C) 2019 Josh Habdas <jhabdas@protonmail.com>
  3. This file is part of After Dark.
  4. After Dark is free software: you can redistribute it and/or modify
  5. it under the terms of the GNU Affero General Public License as published by
  6. the Free Software Foundation, either version 3 of the License, or
  7. (at your option) any later version.
  8. After Dark is distributed in the hope that it will be useful,
  9. but WITHOUT ANY WARRANTY; without even the implied warranty of
  10. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  11. GNU Affero General Public License for more details.
  12. You should have received a copy of the GNU Affero General Public License
  13. along with this program. If not, see <https://www.gnu.org/licenses/>.
  14. */ -}}
  15. {{ $_hugo_config := `{ "version": 1 }` }}
  16. {{ $href := .Get "href" | default nil -}}
  17. {{ $body := .Get "text" | default .Inner -}}
  18. {{ $class := .Get "class" -}}
  19. {{ $referrerpolicy := .Get "referrerpolicy" -}}
  20. {{ $target := .Get "target" -}}
  21. {{ $title := .Get "title" -}}
  22. {{ $type := .Get "type" -}}
  23. {{ $rel := .Get "rel" -}}
  24. {{ $itemtype := .Get "itemtype" -}}
  25. {{ $trusted := .Get "trusted" -}}
  26. {{- if .IsNamedParams -}}
  27. {{ partial "components/external.html" (dict "href" $href "body" $body "class" $class "referrerpolicy" $referrerpolicy "target" $target "type" $type "title" $title "rel" $rel "itemtype" $itemtype "trusted" $trusted "suppress_external" (and .Inner (eq (len (findRE "external" $rel)) 0))) }}
  28. {{- else if gt (len .Params) 1 -}}
  29. {{ partial "components/external.html" (dict "href" (.Get 0) "body" (.Get 1)) }}
  30. {{- else -}}
  31. {{ partial "components/external.html" (dict "href" (.Get 0)) }}
  32. {{- end -}}
  33. {{- if or (and .IsNamedParams (eq $href nil)) (and (eq .IsNamedParams false) (eq (.Get 0) nil)) }}
  34. <p>{{ partial "components/alert.html" (dict "type" "error" "body" (errorf "Invalid use of external shortcode. Please provide a URL.")) }}</p>
  35. {{ end -}}