page-meta-links.html 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. {{/* cSpell:ignore querify subdir */ -}}
  2. {{/* Class names ending with `--KIND` are deprecated in favor of `__KIND`, but we're keeping them for a few releases after 0.9.0 */ -}}
  3. {{ if .File -}}
  4. {{ $path := strings.TrimPrefix (add hugo.WorkingDir "/") $.File.Filename -}}
  5. {{ $gh_repo := $.Param "github_repo" -}}
  6. {{ $gh_url := $.Param "github_url" -}}
  7. {{ $gh_subdir := $.Param "github_subdir" | default "" -}}
  8. {{ $gh_project_repo := $.Param "github_project_repo" -}}
  9. {{ $gh_branch := $.Param "github_branch" | default "main" -}}
  10. <div class="td-page-meta ms-2 pb-1 pt-2 mb-0">
  11. {{ if $gh_url -}}
  12. {{ warnf "Warning: use of `github_url` is deprecated. For details, see https://www.docsy.dev/docs/adding-content/repository-links/#github_url-optional" -}}
  13. <a href="{{ $gh_url }}" target="_blank"><i class="fa-solid fa-pen-to-square fa-fw"></i> {{ T "post_edit_this" }}</a>
  14. {{ else if $gh_repo -}}
  15. {{/* Adjust $path based on path_base_for_github_subdir */ -}}
  16. {{ $ghs_base := $.Param "path_base_for_github_subdir" -}}
  17. {{ $ghs_rename := "" -}}
  18. {{ if reflect.IsMap $ghs_base -}}
  19. {{ $ghs_rename = $ghs_base.to -}}
  20. {{ $ghs_base = $ghs_base.from -}}
  21. {{ end -}}
  22. {{ with $ghs_base -}}
  23. {{ $path = replaceRE . $ghs_rename $path -}}
  24. {{ end -}}
  25. {{ $gh_repo_path := printf "%s/%s/%s" $gh_branch $gh_subdir $path -}}
  26. {{ $gh_repo_path = replaceRE "//+" "/" $gh_repo_path -}}
  27. {{ $viewURL := printf "%s/tree/%s" $gh_repo $gh_repo_path -}}
  28. {{ $editURL := printf "%s/edit/%s" $gh_repo $gh_repo_path -}}
  29. {{ $issuesURL := printf "%s/issues/new?title=%s" $gh_repo (safeURL $.Title ) -}}
  30. {{ $newPageStub := resources.Get "stubs/new-page-template.md" -}}
  31. {{ $newPageQS := querify "value" $newPageStub.Content "filename" "change-me.md" | safeURL -}}
  32. {{ $newPageURL := printf "%s/new/%s?%s" $gh_repo (path.Dir $gh_repo_path) $newPageQS -}}
  33. <a href="{{ $viewURL }}" class="td-page-meta--view td-page-meta__view" target="_blank" rel="noopener"><i class="fa-solid fa-file-lines fa-fw"></i> {{ T "post_view_this" }}</a>
  34. <a href="{{ $editURL }}" class="td-page-meta--edit td-page-meta__edit" target="_blank" rel="noopener"><i class="fa-solid fa-pen-to-square fa-fw"></i> {{ T "post_edit_this" }}</a>
  35. <a href="{{ $newPageURL }}" class="td-page-meta--child td-page-meta__child" target="_blank" rel="noopener"><i class="fa-solid fa-pen-to-square fa-fw"></i> {{ T "post_create_child_page" }}</a>
  36. <a href="{{ $issuesURL }}" class="td-page-meta--issue td-page-meta__issue" target="_blank" rel="noopener"><i class="fa-solid fa-list-check fa-fw"></i> {{ T "post_create_issue" }}</a>
  37. {{ with $gh_project_repo -}}
  38. {{ $project_issueURL := printf "%s/issues/new" . -}}
  39. <a href="{{ $project_issueURL }}" class="td-page-meta--project td-page-meta__project-issue" target="_blank" rel="noopener"><i class="fa-solid fa-list-check fa-fw"></i> {{ T "post_create_project_issue" }}</a>
  40. {{ end -}}
  41. {{ end -}}
  42. {{ with .CurrentSection.AlternativeOutputFormats.Get "print" -}}
  43. <a id="print" href="{{ .RelPermalink | safeURL }}"><i class="fa-solid fa-print fa-fw"></i> {{ T "print_entire_section" }}</a>
  44. {{ end }}
  45. </div>
  46. {{ end -}}