experience.html 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. {{ $ := .root }}
  2. {{ $page := .page }}
  3. {{ $columns := $page.Params.design.columns | default "2" }}
  4. <!-- Experience widget -->
  5. <div class="col-12 {{if eq $columns "2"}}col-lg-8{{end}}">
  6. {{ with $page.Content }}{{ . }}{{ end }}
  7. {{ if $page.Params.experience }}
  8. {{ $exp_len := len $page.Params.experience }}
  9. {{ range $idx, $key := sort $page.Params.experience ".date_start" "desc" }}
  10. <div class="row experience">
  11. <!-- Timeline -->
  12. <div class="col-auto text-center flex-column d-none d-sm-flex">
  13. <div class="row h-50">
  14. <div class="col {{if gt $idx 0}}border-right{{end}}">&nbsp;</div>
  15. <div class="col">&nbsp;</div>
  16. </div>
  17. <div class="m-2">
  18. <span class="badge badge-pill border {{if not .date_end}}exp-fill{{end}}">&nbsp;</span>
  19. </div>
  20. <div class="row h-50">
  21. <div class="col {{if lt $idx (sub $exp_len 1)}}border-right{{end}}">&nbsp;</div>
  22. <div class="col">&nbsp;</div>
  23. </div>
  24. </div>
  25. <!-- Content -->
  26. <div class="col py-2">
  27. <div class="card">
  28. <div class="card-body">
  29. {{- if .company_logo}}
  30. {{- $svg_icon := resources.Get (printf "media/icons/brands/%s.svg" .company_logo) -}}
  31. {{ if not $svg_icon }}{{ errorf "Brand logo not found at `assets/media/icons/brands/%s.svg`" .company_logo }}{{end}}
  32. <div class="d-flex align-content-start">
  33. <div class="mr-2 mb-2">
  34. {{- with .company_url}}<a href="{{.}}" target="_blank" rel="noopener">{{end -}}
  35. <img src="{{ $svg_icon.RelPermalink }}" width="56px" height="56px" alt="{{.company | plainify}}">
  36. {{- with .company_url}}</a>{{end -}}
  37. </div>
  38. <div>
  39. {{ end }}
  40. <div class="section-subheading card-title exp-title text-muted my-0">{{.title | markdownify | emojify}}</div>
  41. <div class="section-subheading card-title exp-company text-muted my-0">
  42. {{- with .company_url}}<a href="{{.}}" target="_blank" rel="noopener">{{end}}{{.company | markdownify | emojify}}{{with .company_url}}</a>{{end -}}
  43. </div>
  44. <div class="text-muted exp-meta">
  45. {{ (time .date_start).Format ($page.Params.date_format | default "January 2006") }} –
  46. {{ if .date_end}}
  47. {{ (time .date_end).Format ($page.Params.date_format | default "January 2006") }}
  48. {{else}}
  49. {{ i18n "present" | default "Present" }}
  50. {{end}}
  51. {{with .location}}
  52. <span class="middot-divider"></span>
  53. <span>{{.}}</span>
  54. {{end}}
  55. </div>
  56. {{- if .company_logo}}
  57. </div>
  58. </div>
  59. {{end}}
  60. {{with .description}}<div class="card-text">{{. | markdownify | emojify}}</div>{{end}}
  61. </div>
  62. </div>
  63. </div>
  64. </div>
  65. {{end}}
  66. {{end}}
  67. </div>