From 154d50dbe003f5a9cea623370d1851c07c3dc5e3 Mon Sep 17 00:00:00 2001 From: Toshaan Bharvani Date: Mon, 15 Jul 2024 10:15:29 +0200 Subject: [PATCH] [SITE] add talk page add a talk page based upon #12515 * all talks, workshops and ignites get displayed on a single page * this page has the presentation title, the speakers, and when it is happening with the abstract * all speakers are also displayed, with their picture and bio Signed-off-by: Toshaan Bharvani --- content/events/2024-antwerp/talks.md | 6 + .../layouts/talks/single.html | 246 ++++++++++++++++++ 2 files changed, 252 insertions(+) create mode 100644 content/events/2024-antwerp/talks.md create mode 100644 themes/devopsdays-theme/layouts/talks/single.html diff --git a/content/events/2024-antwerp/talks.md b/content/events/2024-antwerp/talks.md new file mode 100644 index 00000000000..ed462429a53 --- /dev/null +++ b/content/events/2024-antwerp/talks.md @@ -0,0 +1,6 @@ ++++ +Title = "Talks" +Type = "talks" +Description = "Talk List for devopsdays Antwerp 2024" +Icons = "false" ++++ diff --git a/themes/devopsdays-theme/layouts/talks/single.html b/themes/devopsdays-theme/layouts/talks/single.html new file mode 100644 index 00000000000..a9f3ae7e4f1 --- /dev/null +++ b/themes/devopsdays-theme/layouts/talks/single.html @@ -0,0 +1,246 @@ +{{ define "main" }} + +

Talks

+ +{{ .Content }} + +{{- $.Scratch.Set "first" "true" -}} +{{- with .Params.icons -}} + {{- $.Scratch.Set "icons" (. | upper ) -}} +{{- end -}} + +{{- $e := partial "functions/get-event-data" . -}} + +{{- $p := index $.Site.Data.events (index (split (.Permalink | relURL) "/") 2) "program" -}} + +{{ if eq $p nil }} + {{ $p = $e }} +{{ end }} + +{{- if $e.startdate -}} +{{ if (where (readDir (printf "content/events/%s/" $e.name)) "Name" "program") }} +{{ range os.ReadDir (printf "content/events/%s/program/" $e.name) }} + {{ $filename := (printf "/events/%s/program/%s" $e.name .Name) }} + {{ with $.Site.GetPage $filename }} + {{- if eq (index (split (.Permalink | relURL) "/") 2) $e.name -}} + {{- $.Scratch.Set "base_file_name" .File.BaseFileName -}} + {{- $.Scratch.Set .File.BaseFileName .Title -}} + {{- $.Scratch.Set (printf "%s-content" ($.Scratch.Get "base_file_name")) .Content -}} + {{- with .Params.vimeo -}} + {{- $.Scratch.Set (printf "%s-video_link" ($.Scratch.Get "base_file_name")) (printf "https://player.vimeo.com/video/%s" .) }} + {{- end -}} + {{- with .Params.youtube -}} + {{- $.Scratch.Set (printf "%s-video_link" ($.Scratch.Get "base_file_name")) (printf "https://www.youtube.com/embed/%s" .) }} + {{- end -}} + {{- with .Params.speakerdeck -}} + {{- $.Scratch.Set (printf "%s-slides_link" ($.Scratch.Get "base_file_name")) . }} + {{- end -}} + {{- with .Params.slideshare -}} + {{- $.Scratch.Set (printf "%s-slides_link" ($.Scratch.Get "base_file_name")) . }} + {{- end -}} + {{- with .Params.googleslides -}} + {{- $.Scratch.Set (printf "%s-slides_link" ($.Scratch.Get "base_file_name")) (printf "https://docs.google.com/presentation/d/%s" .) }} + {{- end -}} + {{- with .Params.pdf -}} + {{- $.Scratch.Set (printf "%s-slides_link" ($.Scratch.Get "base_file_name")) . }} + {{- end -}} + {{- with .Params.notist -}} + {{- $.Scratch.Set (printf "%s-slides_link" ($.Scratch.Get "base_file_name")) (printf "https://noti.st/%s" .) }} + {{- end -}} + {{- with .Params.slideslive -}} + {{- $.Scratch.Set (printf "%s-slides_link" ($.Scratch.Get "base_file_name")) (printf "https://slideslive.com/%s" .) }} + {{- end -}} + {{- with .Params.slides -}} + {{- $.Scratch.Set (printf "%s-slides_link" ($.Scratch.Get "base_file_name")) . }} + {{- end -}} + {{- if isset .Params "speakers" -}} + {{- if ne .Params.speakers "" -}} + {{- $.Scratch.Set "speaker_len" (.Params.speakers | len) -}} + {{- $.Scratch.Set "speaker_count" 0 -}} + {{- end -}} + {{- end -}} + {{- range .Params.speakers -}} + {{- $.Scratch.Set "speaker_count" (add ($.Scratch.Get "speaker_count") 1) -}} + {{- $.Scratch.Set "speakername" . -}} + {{/* {{- range where $.Site.Pages "Type" "speaker" -}} + {{- if eq (index (split (.Permalink | relURL) "/") 2) $e.name -}} */}} + {{ if (where (readDir (printf "content/events/%s/" $e.name)) "Name" "speakers") }} + {{ range os.ReadDir (printf "content/events/%s/speakers/" $e.name) }} + {{ $filename := (printf "/events/%s/speakers/%s" $e.name .Name) }} + {{ with $.Site.GetPage $filename }} + {{- if eq .File.BaseFileName ($.Scratch.Get "speakername") -}} + {{- $.Scratch.Add (printf "%s-speaker" ($.Scratch.Get "base_file_name")) (slice .Title) -}} + {{- $.Scratch.Add (printf "%s-speaker-image" ($.Scratch.Get "base_file_name")) (slice .Params.image) -}} + {{- $.Scratch.Add (printf "%s-speaker-link" ($.Scratch.Get "base_file_name")) (slice .File.BaseFileName) -}} + {{- $.Scratch.Add (printf "%s-speaker-data" ($.Scratch.Get "base_file_name")) (slice (dict "name" .Title "image" .Params.image "link" .File.BaseFileName "bio" .Content)) -}} + {{- end -}} + {{- end -}} + {{- end -}} + {{- end -}} + {{- end -}} + {{- end -}} + {{- end -}} +{{- end -}} +{{- end -}} + +{{- with $p -}} + {{- range .program -}} + {{- $.Scratch.SetInMap "dates" .date .date -}} + {{- end -}} +{{- end -}} + +{{- range ($.Scratch.GetSortedMapValues "dates") -}} + {{- $.Scratch.Set "date" . -}} + {{- with $p -}} + {{- if .program -}} + {{- $program := (where .program "date" ($.Scratch.Get "date")) -}} + {{- $program_len := (len $program) -}} + {{- $.Scratch.Set "program_len" $program_len -}} + {{- $.Scratch.Set "program_counter" 0 -}} + {{- range where .program "date" ($.Scratch.Get "date") -}} + {{- $.Scratch.Set "program_counter" (add ($.Scratch.Get "program_counter") 1) -}} + {{- if or (eq .type "talk") (eq .type "workshop") -}} +
+
+
+ {{ $.Scratch.Get .title }}
+ By  + {{- range $speakerdata := ($.Scratch.Get (printf "%s-speaker-data" .title)) -}} + {{- index $speakerdata "name" -}}  + {{- end -}} +
+ On {{- dateFormat "Monday 2nd January 2006" ($.Scratch.Get "date") -}}
+ From {{ .start_time }} Until {{ .end_time }}
+ {{- if eq ($.Scratch.Get "icons") "TRUE" -}} + {{- with ($.Scratch.Get (printf "%s-video_link" .title)) -}}  {{- end -}} + {{- with ($.Scratch.Get (printf "%s-slides_link" .title)) -}}  {{- end -}} + {{- end -}} +
{{- $.Scratch.Get (printf "%s-content" .title) | markdownify -}}
+
+ +
+
+ {{- end -}} + {{- if eq .type "ignite" -}} + {{- if .block -}} + {{- $block := .block -}} + {{- range $p.ignites -}} + {{- if eq .block $block -}} +
+
+
+ {{ $.Scratch.Get .title }}
+ By  + {{- range $speakerdata := ($.Scratch.Get (printf "%s-speaker-data" .title)) -}} + {{- index $speakerdata "name" -}}
+ {{- end -}} + On {{- dateFormat "Monday 2nd January 2006" ($.Scratch.Get "date") -}}
+ From {{ .start_time }} Until {{ .end_time }}
+ {{- if eq ($.Scratch.Get "icons") "TRUE" -}} + {{- with ($.Scratch.Get (printf "%s-video_link" .title)) -}}  {{- end -}} + {{- with ($.Scratch.Get (printf "%s-slides_link" .title)) -}}  {{- end -}} + {{- end -}} +
{{- $.Scratch.Get (printf "%s-content" .title) | markdownify -}}
+
+ + {{- end -}} + {{- end -}} + {{- else -}} + {{- range where $p.ignites "date" ($.Scratch.Get "date") -}} + {{- if not .block -}} +
+
+
+ {{ $.Scratch.Get .title }}
+ By  + {{- range $speakerdata := ($.Scratch.Get (printf "%s-speaker-data" .title)) -}} + {{- index $speakerdata "name" -}}
+ {{- end -}} + On {{- dateFormat "Monday 2nd January 2006" ($.Scratch.Get "date") -}}
+ From {{ .start_time }} Until {{ .end_time }}
+ {{- if eq ($.Scratch.Get "icons") "TRUE" -}} + {{- with ($.Scratch.Get (printf "%s-video_link" .title)) -}}  {{- end -}} + {{- with ($.Scratch.Get (printf "%s-slides_link" .title)) -}}  {{- end -}} + {{- end -}} +
{{- $.Scratch.Get (printf "%s-content" .title) | markdownify -}}
+
+ +
+
+ {{- end -}} + {{- end -}} + {{- end -}} +
+
+ + + {{- end -}} + + + + {{- end -}} +{{- end -}} +{{- end -}} +{{- end -}} +{{- end -}} +{{- end -}}