jekyll-theme-conference 3.6.6 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,69 +1,105 @@
1
- {%- assign errors = '' | split: ',' -%}
2
-
3
- {%- unless site.data.lang.version -%}
4
- {%- unless site.conference.lang == "en" -%}
5
- {%- assign errors = errors | push : "The internationalization file containing different strings for this template seems to be missing. Have you copied the `_data/lang.yml` file from the [theme's repository](https://github.com/DigitaleGesellschaft/jekyll-theme-conference/blob/main/_data/lang.yml) to you local website folder?" -%}
6
- {%- endunless -%}
7
- {%- elsif site.data.lang.version != 8 -%}
8
- {%- assign errors = errors | push : "The internationalization file in `_data/lang.yml` seems to be outdated and does not correspond to the current version of the theme. Grab the current version from the [theme's repository](https://github.com/DigitaleGesellschaft/jekyll-theme-conference/blob/main/_data/lang.yml)." -%}
9
- {%- endunless -%}
10
- {%- unless site.conference.lang == "en" or site.conference.lang == "de" or site.conference.lang == "fr" or site.conference.lang == "pt" -%}
11
- {%- assign errors = errors | push : "Unknown language selected for `site.conference.lang` parameter. Supported are `en`, `de`, `fr`, and `pt`." -%}
12
- {%- endunless -%}
13
-
14
- {%- assign main_category_size = site.conference.talks.main_categories | size -%}
15
- {%- if main_category_size == 0 -%}
16
- {%- assign errors = errors | push : "Your `_config.yml` configuration file does not define any main category for your talks. Have you set the `conference.talks.main_categories` property? See also [Talk Settings](https://github.com/DigitaleGesellschaft/jekyll-theme-conference/#talk-settings) section in the theme's README file." -%}
17
- {%- endif -%}
18
-
19
- {%- assign nbr_days = site.data.program.days | size -%}
20
- {%- if nbr_days == 0 -%}
21
- {%- assign errors = errors | push : "Your schedule in `_data/program.yml` does not seem to contain any days. Have you already created the file?" -%}
22
- {%- endif -%}
23
- {%- if site.conference.live -%}
24
- {%- for d in site.data.program.days -%}
25
- {%- unless d.date or d.date == "" -%}
26
- {%- assign error_msg = "Day " | append: forloop.index | append: " in your schedule should have a (non-empty) `date` property." -%}
27
- {%- assign errors = errors | push : error_msg -%}
28
- {%- endunless -%}
29
- {%- endfor -%}
30
- {%- endif -%}
31
-
32
- {%- assign nbr_rooms = site.rooms | size -%}
33
- {%- if nbr_rooms == 0 -%}
34
- {%- assign errors = errors | push : "The `rooms` collection does not seem to contain any entry. Have you accidentially renamed the collection or is your `_rooms/` folder empty?" -%}
35
- {%- else -%}
36
- {%- for room in site.rooms -%}
37
- {%- assign nbr_rooms_name = site.rooms | where: 'name', room.name | size %}
38
- {%- if nbr_rooms_name > 1 -%}
39
- {%- assign error_msg = "The room with the `name` _" | append: room.name | append: "_ oocures more than once but should be unique." -%}
40
- {%- assign errors = errors | push : error_msg -%}
41
- {%- endif -%}
42
- {%- endfor -%}
43
- {%- endif -%}
44
-
45
- {%- assign nbr_speakers = site.speakers | size -%}
46
- {%- if nbr_speakers == 0 -%}
47
- {%- assign errors = errors | push : "The `speakers` collection does not seem to contain any entry. Have you accidentially renamed the collection or is your `_speakers/` folder empty?" -%}
48
- {%- else -%}
49
- {%- for speaker in site.speakers -%}
50
- {%- assign nbr_speakers_name = site.speakers | where: 'name', speaker.name | size %}
51
- {%- if nbr_speakers_name > 1 -%}
52
- {%- assign error_msg = "The speaker with the `name` _" | append: speaker.name | append: "_ oocures more than once but should be unique." -%}
53
- {%- assign errors = errors | push : error_msg -%}
54
- {%- endif -%}
55
- {%- endfor -%}
56
- {%- endif -%}
57
-
58
- {%- assign nbr_talks = site.talks | size -%}
59
- {%- if nbr_talks == 0 -%}
60
- {%- assign errors = errors | push : "The `talks` collection does not seem to contain any entry. Have you accidentially renamed the collection or is your `_talks/` folder empty?" -%}
61
- {%- else -%}
62
- {%- for talk in site.talks -%}
63
- {%- assign nbr_talks_name = site.talks | where: 'name', talk.name | size %}
64
- {%- if nbr_talks_name > 1 -%}
65
- {%- assign error_msg = "The talk with the `name` _" | append: talk.name | append: "_ oocures more than once but should be unique." -%}
66
- {%- assign errors = errors | push : error_msg -%}
67
- {%- endif -%}
68
- {%- endfor -%}
69
- {%- endif -%}
1
+ {%- assign errors = '' | split: ',' -%}
2
+
3
+ {%- unless site.data.lang.version -%}
4
+ {%- unless site.conference.lang == "en" -%}
5
+ {%- assign errors = errors | push: "The internationalization file containing different strings for this template seems to be missing. Have you copied the `_data/lang.yml` file from the [theme's repository](https://github.com/DigitaleGesellschaft/jekyll-theme-conference/blob/main/_data/lang.yml) to you local website folder?" -%}
6
+ {%- endunless -%}
7
+ {%- elsif site.data.lang.version != 8 -%}
8
+ {%- assign errors = errors | push: "The internationalization file in `_data/lang.yml` seems to be outdated and does not correspond to the current version of the theme. Grab the current version from the [theme's repository](https://github.com/DigitaleGesellschaft/jekyll-theme-conference/blob/main/_data/lang.yml)." -%}
9
+ {%- endunless -%}
10
+ {%- unless site.conference.lang == "en" or site.conference.lang == "de" or site.conference.lang == "fr" or site.conference.lang == "pt" -%}
11
+ {%- assign errors = errors | push: "Unknown language selected for `site.conference.lang` parameter. Supported are `en`, `de`, `fr`, and `pt`." -%}
12
+ {%- endunless -%}
13
+
14
+ {%- assign missing_tracks = "" | split: "," -%}
15
+ {%- assign talks_with_categories = 0 -%}
16
+ {%- for talk in site.talks -%}
17
+ {%- assign missing_track = 1 -%}
18
+ {%- for track in site.conference.talks.tracks -%}
19
+ {%- if talk.track == track.name -%}
20
+ {%- assign missing_track = 0 -%}
21
+ {%- break -%}
22
+ {%- endif -%}
23
+ {%- endfor -%}
24
+ {%- if missing_track > 0 -%}
25
+ {%- unless missing_tracks contains talk.track -%}
26
+ {%- assign missing_tracks = missing_tracks | push: talk.track -%}
27
+ {%- endunless -%}
28
+ {%- endif -%}
29
+ {%- if talk.categories.size > 0 -%}
30
+ {%- assign talks_with_categories = talks_with_categories | plus: 1 -%}
31
+ {%- endif -%}
32
+ {%- endfor -%}
33
+ {%- assign main_categories_size = site.conference.talks.main_categories | size -%}
34
+ {%- if main_categories_size > 0 -%}
35
+ {%- assign errors = errors | push: "Your `_config.yml` file contains an outdated property name. Please rename `conference.talks.main_categories` to `conference.talks.tracks` in your configuration. For more details, refer to the [Talk Settings](https://github.com/DigitaleGesellschaft/jekyll-theme-conference/#talk-settings) section in the theme's README." -%}
36
+ {%- endif -%}
37
+ {%- if talks_with_categories > 0 -%}
38
+ {%- assign errors = errors | push: "The `categories` property in the FrontMatter of some of your talks is deprecated. Please update it by reorganizing the content into `track` and `tags` properties instead. For more details, refer to the [Talk Settings](https://github.com/DigitaleGesellschaft/jekyll-theme-conference/#talk-settings) section in the theme's README." -%}
39
+ {%- endif -%}
40
+ {%- if missing_tracks.size > 0 -%}
41
+ {%- capture error_msg -%}
42
+ It looks like some of your talks are assigned to tracks not defined in your `_config.yml` file. Please add the following missing tracks to the `conference.talks.tracks` property in your configuration:
43
+ {%- for missing_track in missing_tracks %}
44
+ - {{ missing_track }}
45
+ {% endfor %}
46
+ For more details, refer to the [Talk Settings](https://github.com/DigitaleGesellschaft/jekyll-theme-conference/#talk-settings) section in the theme's README
47
+ {%- endcapture -%}
48
+ {%- assign errors = errors | push: error_msg -%}
49
+ {%- endif -%}
50
+
51
+ {%- if site.conference.talks.hide_icons == true -%}
52
+ {%- assign errors = errors | push: "Your `_config.yml` file contains an outdated property name. Please rename `conference.talks.hide_icons` to `conference.talks.hide_link_icons` in your configuration. For more details, refer to the [Talk Settings](https://github.com/DigitaleGesellschaft/jekyll-theme-conference/#talk-settings) section in the theme's README." -%}
53
+ {%- endif -%}
54
+
55
+ {%- assign nbr_days = site.data.program.days | size -%}
56
+ {%- if nbr_days == 0 -%}
57
+ {%- assign errors = errors | push: "Your schedule in `_data/program.yml` does not seem to contain any days. Have you already created the file?" -%}
58
+ {%- endif -%}
59
+ {%- if site.conference.live -%}
60
+ {%- for d in site.data.program.days -%}
61
+ {%- unless d.date or d.date == "" -%}
62
+ {%- assign error_msg = "Day " | append: forloop.index | append: " in your schedule should have a (non-empty) `date` property." -%}
63
+ {%- assign errors = errors | push: error_msg -%}
64
+ {%- endunless -%}
65
+ {%- endfor -%}
66
+ {%- endif -%}
67
+
68
+ {%- assign nbr_rooms = site.rooms | size -%}
69
+ {%- if nbr_rooms == 0 -%}
70
+ {%- assign errors = errors | push: "The `rooms` collection does not seem to contain any entry. Have you accidentally renamed the collection or is your `_rooms/` folder empty?" -%}
71
+ {%- else -%}
72
+ {%- for room in site.rooms -%}
73
+ {%- assign nbr_rooms_name = site.rooms | where: 'name', room.name | size -%}
74
+ {%- if nbr_rooms_name > 1 -%}
75
+ {%- assign error_msg = "The room with the `name` _" | append: room.name | append: "_ occurs more than once but should be unique." -%}
76
+ {%- assign errors = errors | push: error_msg -%}
77
+ {%- endif -%}
78
+ {%- endfor -%}
79
+ {%- endif -%}
80
+
81
+ {%- assign nbr_speakers = site.speakers | size -%}
82
+ {%- if nbr_speakers == 0 -%}
83
+ {%- assign errors = errors | push: "The `speakers` collection does not seem to contain any entry. Have you accidentally renamed the collection or is your `_speakers/` folder empty?" -%}
84
+ {%- else -%}
85
+ {%- for speaker in site.speakers -%}
86
+ {%- assign nbr_speakers_name = site.speakers | where: 'name', speaker.name | size -%}
87
+ {%- if nbr_speakers_name > 1 -%}
88
+ {%- assign error_msg = "The speaker with the `name` _" | append: speaker.name | append: "_ occurs more than once but should be unique." -%}
89
+ {%- assign errors = errors | push: error_msg -%}
90
+ {%- endif -%}
91
+ {%- endfor -%}
92
+ {%- endif -%}
93
+
94
+ {%- assign nbr_talks = site.talks | size -%}
95
+ {%- if nbr_talks == 0 -%}
96
+ {%- assign errors = errors | push: "The `talks` collection does not seem to contain any entry. Have you accidentally renamed the collection or is your `_talks/` folder empty?" -%}
97
+ {%- else -%}
98
+ {%- for talk in site.talks -%}
99
+ {%- assign nbr_talks_name = site.talks | where: 'name', talk.name | size -%}
100
+ {%- if nbr_talks_name > 1 -%}
101
+ {%- assign error_msg = "The talk with the `name` _" | append: talk.name | append: "_ occurs more than once but should be unique." -%}
102
+ {%- assign errors = errors | push: error_msg -%}
103
+ {%- endif -%}
104
+ {%- endfor -%}
105
+ {%- endif -%}
@@ -1,85 +1,99 @@
1
-
2
- {%- assign link_disabled = link.disabled -%}
3
- {%- assign link_icon = link.icon -%}
4
- {%- assign link_iframe = link.iframe -%}
5
-
6
- {%- if link.absolute_url -%}
7
- {%- assign link_href = link.absolute_url -%}
8
-
9
- {%- elsif link.relative_url -%}
10
- {%- assign link_href = link.relative_url | prepend: site.baseurl -%}
11
-
12
- {%- elsif link.file -%}
13
- {%- assign link_icon = "file-alt" -%}
14
-
15
- {%- if talk -%}
16
- {%- assign link_href = link.file | prepend: '/documents/slides/' | prepend: site.baseurl -%}
17
-
18
- {%- elsif speaker -%}
19
- {%- assign link_href = link.file | prepend: '/documents/bio/' | prepend: site.baseurl -%}
20
-
21
- {%- else -%}
22
- {%- assign link_href = link.file | prepend: '/documents/' | prepend: site.baseurl -%}
23
-
24
- {%- endif -%}
25
-
26
- {%- elsif link.video -%}
27
- {%- assign link_href = link.video -%}
28
- {%- assign link_icon = "video" -%}
29
- {%- assign link_iframe = true -%}
30
-
31
- {%- if talk -%}
32
- {%- capture modal_title -%}
33
- {%- if talk.hide -%}
34
- {{ talk.name }}
35
- {%- else -%}
36
- <a class="text-reset" href="{{ talk.url | prepend: site.baseurl }}">
37
- {{ talk.name }}
38
- </a>
39
- {%- endif -%}
40
- {%- endcapture -%}
41
- {%- capture modal_subtitle -%}
42
- {%- include partials/list_speakers.html -%}
43
- {%- endcapture -%}
44
-
45
- {%- elsif speaker -%}
46
- {%- capture modal_title -%}
47
- {%- if speaker.hide -%}
48
- {{ speaker.first_name }} {{ speaker.last_name }}
49
- {%- else -%}
50
- <a class="text-reset" href="{{ speaker.url | prepend: site.baseurl }}">
51
- {{ speaker.first_name }} {{ speaker.last_name }}
52
- </a>
53
- {%- endif -%}
54
- {%- endcapture -%}
55
- {%- assign modal_footer = link.name -%}
56
-
57
- {%- endif -%}
58
-
59
- {%- else -%}
60
- {%- assign link_disabled = true -%}
61
-
62
- {%- endif -%}
63
-
64
- {%- capture link_tag -%}
65
- {%- if link.disabled -%}
66
- <a class="disabled{% if link_styleclass %} {{ link_styleclass }}{% endif %}" href="#">
67
-
68
- {%- elsif link_iframe -%}
69
- <a {% if link_styleclass %}class="{{ link_styleclass }}"{% endif %} title="{{ link.name }}" data-toggle="modal" data-target="#link-modal" data-href="{{ link_href }}" href="#" {% if modal_title -%}
70
- data-format='html' data-title="{{ modal_title | strip_newlines | escape }}" {%- if modal_subtitle %} data-subtitle="{{ modal_subtitle | strip_newlines | escape }}"{%- endif -%}
71
- {%- elsif link.name -%}
72
- data-format='text' data-title="{{ link.name }}"
73
- {%- endif %} {% if modal_footer -%}
74
- data-format='html' data-footer="{{ modal_footer | strip_newlines | escape }}"
75
- {%- elsif link.description -%}
76
- data-format='text' data-footer="{{ link.description }}"
77
- {%- endif %}>
78
-
79
- {%- else -%}
80
- <a{% if link_styleclass %} class="{{ link_styleclass }}"{% endif %} href="{{ link_href }}" title="{{ link.name }}">
81
-
82
- {%- endif -%}
83
- {%- endcapture -%}
84
-
85
- {%- assign link_styleclass = "" -%}
1
+ {%- assign link_valid = false -%}
2
+ {%- if link.live -%}
3
+ {%- if include.link_type == "live" -%}
4
+ {%- assign link_valid = true -%}
5
+ {%- endif -%}
6
+ {%- elsif link.icon or link.file or link.video -%}
7
+ {%- if include.link_type == "icon" -%}
8
+ {%- assign link_valid = true -%}
9
+ {%- endif -%}
10
+ {%- else -%}
11
+ {%- if include.link_type == "regular" -%}
12
+ {%- assign link_valid = true -%}
13
+ {%- endif -%}
14
+ {%- endif -%}
15
+
16
+ {%- assign link_disabled = link.disabled -%}
17
+ {%- assign link_icon = link.icon -%}
18
+ {%- assign link_iframe = link.iframe -%}
19
+
20
+ {%- if link.absolute_url -%}
21
+ {%- assign link_href = link.absolute_url -%}
22
+
23
+ {%- elsif link.relative_url -%}
24
+ {%- assign link_href = link.relative_url | prepend: site.baseurl -%}
25
+
26
+ {%- elsif link.file -%}
27
+ {%- assign link_icon = link.icon | default: "file-alt" -%}
28
+
29
+ {%- if talk -%}
30
+ {%- assign link_href = link.file | prepend: '/documents/slides/' | prepend: site.baseurl -%}
31
+
32
+ {%- elsif speaker -%}
33
+ {%- assign link_href = link.file | prepend: '/documents/bio/' | prepend: site.baseurl -%}
34
+
35
+ {%- else -%}
36
+ {%- assign link_href = link.file | prepend: '/documents/' | prepend: site.baseurl -%}
37
+
38
+ {%- endif -%}
39
+
40
+ {%- elsif link.video -%}
41
+ {%- assign link_href = link.video -%}
42
+ {%- assign link_icon = link.icon | default: "video" -%}
43
+ {%- assign link_iframe = link.iframe | default: true -%}
44
+
45
+ {%- if talk -%}
46
+ {%- capture modal_title -%}
47
+ {%- if talk.hide -%}
48
+ {{ talk.name }}
49
+ {%- else -%}
50
+ <a class="text-reset" href="{{ talk.url | prepend: site.baseurl }}">
51
+ {{ talk.name }}
52
+ </a>
53
+ {%- endif -%}
54
+ {%- endcapture -%}
55
+ {%- capture modal_subtitle -%}
56
+ {%- include partials/list_speakers.html -%}
57
+ {%- endcapture -%}
58
+
59
+ {%- elsif speaker -%}
60
+ {%- capture modal_title -%}
61
+ {%- if speaker.hide -%}
62
+ {{ speaker.first_name }} {{ speaker.last_name }}
63
+ {%- else -%}
64
+ <a class="text-reset" href="{{ speaker.url | prepend: site.baseurl }}">
65
+ {{ speaker.first_name }} {{ speaker.last_name }}
66
+ </a>
67
+ {%- endif -%}
68
+ {%- endcapture -%}
69
+ {%- assign modal_footer = link.name -%}
70
+
71
+ {%- endif -%}
72
+
73
+ {%- else -%}
74
+ {%- assign link_disabled = true -%}
75
+
76
+ {%- endif -%}
77
+
78
+ {%- capture link_tag -%}
79
+ {%- if link.disabled -%}
80
+ <a class="disabled{% if link_styleclass %} {{ link_styleclass }}{% endif %}" href="#">
81
+
82
+ {%- elsif link_iframe -%}
83
+ <a {% if link_styleclass %}class="{{ link_styleclass }}"{% endif %} title="{{ link.name }}" data-toggle="modal" data-target="#link-modal" data-href="{{ link_href }}" href="#" {% if modal_title -%}
84
+ data-format='html' data-title="{{ modal_title | strip_newlines | escape }}" {%- if modal_subtitle %} data-subtitle="{{ modal_subtitle | strip_newlines | escape }}"{%- endif -%}
85
+ {%- elsif link.name -%}
86
+ data-format='text' data-title="{{ link.name }}"
87
+ {%- endif %} {% if modal_footer -%}
88
+ data-format='html' data-footer="{{ modal_footer | strip_newlines | escape }}"
89
+ {%- elsif link.description -%}
90
+ data-format='text' data-footer="{{ link.description }}"
91
+ {%- endif %}>
92
+
93
+ {%- else -%}
94
+ <a{% if link_styleclass %} class="{{ link_styleclass }}"{% endif %} href="{{ link_href }}" title="{{ link.name }}">
95
+
96
+ {%- endif -%}
97
+ {%- endcapture -%}
98
+
99
+ {%- assign link_styleclass = "" -%}
@@ -4,12 +4,15 @@
4
4
  {%- assign links = speaker.links -%}
5
5
  {%- endif -%}
6
6
 
7
- {%- assign has_icon_links = false -%}
8
- {%- assign has_regular_links = false -%}
7
+ {%- assign has_live_links = 0 -%}
8
+ {%- assign has_icon_links = 0 -%}
9
+ {%- assign has_regular_links = 0 -%}
9
10
  {%- for link in links -%}
10
- {%- if link.icon or link.file or link.video -%}
11
- {%- assign has_icon_links = true -%}
11
+ {%- if link.live -%}
12
+ {%- assign has_live_links = has_live_links | plus: 1 -%}
13
+ {%- elsif link.icon or link.file or link.video -%}
14
+ {%- assign has_icon_links = has_icon_links | plus: 1 -%}
12
15
  {%- else -%}
13
- {%- assign has_regular_links = true -%}
16
+ {%- assign has_regular_links = has_regular_links | plus: 1 -%}
14
17
  {%- endif -%}
15
18
  {%- endfor -%}
@@ -0,0 +1,13 @@
1
+ {% assign tag_icon = "" %}
2
+ {% for tag_prop in site.conference.talks.tags %}
3
+ {% if tag == tag_prop.name %}
4
+ {% if tag_prop.icon %}
5
+ {% assign tag_icon = tag_prop.icon %}
6
+ {% endif %}
7
+ {% endif %}
8
+ {% endfor %}
9
+
10
+ {% assign tag_html = tag %}
11
+ {% if tag_icon.size > 0 %}
12
+ {% assign tag_html = '<i class="fas fa-' | append: tag_icon | append: '"></i>'' %}
13
+ {% endif %}
@@ -0,0 +1,81 @@
1
+ <li class="pl-2 mb-2 border-soft-{{ track.color | default: 'light' }}">
2
+ <p class="mb-0">
3
+ {% include partials/show_talk.html %}
4
+ </p>
5
+ <p class="font-weight-light mb-0">
6
+ {% include partials/list_speakers.html %}
7
+ </p>
8
+
9
+ {% if talk.hide -%}
10
+ {%- assign talk_scheduled = false -%}
11
+ {%- for d in site.data.program.days -%}
12
+ {%- include partials/get_day_hash.html -%}
13
+ {%- for r in d.rooms -%}
14
+ {%- assign room = site.rooms | where: 'name', r.name | first -%}
15
+ {%- for t in r.talks -%}
16
+ {%- if talk.name == t.name -%}
17
+ <p class="mb-0">
18
+
19
+ {%- if site.conference.live -%}
20
+ {%- include partials/get_talk_timestamp.html -%}
21
+ <span class="live-hide" data-start="{{ timestamp_start }}" data-end="{{ timestamp_end }}">
22
+ {%- endif -%}
23
+
24
+ {%- include partials/get_time_pronoun.html -%}
25
+ {%- include partials/get_talk_time.html -%}
26
+ {{- time_pronoun }} {% include partials/show_talk_time.html %}
27
+
28
+ {%- if site.conference.live -%}
29
+ </span>
30
+ {%- include partials/show_live_button.html -%}
31
+ {%- endif %}
32
+
33
+ {{ site.data.lang[site.conference.lang].pronoun.in | default: "in" }} {% include partials/show_room.html -%}
34
+ </p>
35
+
36
+ {%- assign talk_scheduled = true -%}
37
+ {%- break -%}
38
+ {%- endif -%}
39
+ {%- endfor -%}
40
+
41
+ {%- if talk_scheduled -%}
42
+ {%- break -%}
43
+ {%- endif -%}
44
+ {%- endfor -%}
45
+
46
+ {%- if talk_scheduled -%}
47
+ {%- break -%}
48
+ {%- endif -%}
49
+ {%- endfor -%}
50
+ {%- endif %}
51
+
52
+ <p class="mb-0">
53
+ {%- if site.conference.live and talk.hide != true -%}
54
+ {% for d in site.data.program.days -%}
55
+ {%- for r in d.rooms -%}
56
+ {%- for t in r.talks -%}
57
+ {%- if talk.name == t.name -%}
58
+ {%- assign live_button_styleclass = "mr-1" -%}
59
+ {%- include partials/show_live_button.html -%}
60
+ {%- endif -%}
61
+ {%- endfor -%}
62
+ {%- endfor -%}
63
+ {%- endfor -%}
64
+ {%- endif -%}
65
+ {%- include partials/list_tags.html -%}
66
+
67
+ {%- include partials/get_link_types.html -%}
68
+ {%- if has_icon_links > 0 and site.conference.talks.hide_link_icons != true -%}
69
+ {% for link in talk.links -%}
70
+ {%- assign link_styleclass = "badge badge-light text-reset font-weight-normal mr-1" -%}
71
+ {%- include partials/get_link.html link_type="icon" -%}
72
+ {%- if link_valid -%}
73
+ {{- link_tag -}}
74
+ <i class="fas fa-{{ link_icon }} text-secondary"></i>
75
+ </a>
76
+ {%- endif -%}
77
+ {%- endfor %}
78
+ {%- endif %}
79
+ </p>
80
+
81
+ </li>
@@ -0,0 +1,6 @@
1
+ {%- for track in site.conference.talks.tracks -%}
2
+ {%- if talk.track == track.name -%}
3
+ {%- assign track_color = track.color | default: 'light' -%}
4
+ {%- break -%}
5
+ {%- endif -%}
6
+ {%- endfor -%}
@@ -0,0 +1,7 @@
1
+ {%- assign has_tags = false -%}
2
+
3
+ {%- for tag in talk.tags -%}
4
+ {%- assign has_tags = true -%}
5
+ {%- include partials/get_tag_icon.html -%}
6
+ <span class="badge badge-light text-reset font-weight-normal">{{ tag_html }}</span>&nbsp;
7
+ {%- endfor -%}
@@ -31,42 +31,57 @@
31
31
  {%- elsif link.live -%}
32
32
  {%- include partials/get_live_timestamps.html -%}
33
33
 
34
- {%- if link.name_inactive -%}
35
- <li class="nav-item live-hide" data-start="{{ live_starts }}" data-end="{{ live_ends }}">
36
- <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">
37
- {{ link.name_inactive }}
38
- </a>
39
- </li>
34
+ {%- if link.name == blank -%}
35
+ {%- assign link_name = site.data.lang[site.conference.lang].live.stream | default: "Live Stream" -%}
36
+ {%- elsif link.name -%}
37
+ {%- assign link_name = link.name -%}
38
+ {%- else -%}
39
+ {%- assign link_name = nil -%}
40
40
  {%- endif -%}
41
41
 
42
- <li class="nav-item live-show d-none" data-start="{{ live_starts }}" data-end="{{ live_ends }}">
43
- {%- if site.conference.live.streaming.enable %}
44
- <a class="nav-link" title="
45
- {%- if link.name -%}
46
- {{- link.name -}}
47
- {%- else -%}
48
- {{- site.data.lang[site.conference.lang].live.stream | default: "Live Stream" -}}
49
- {%- endif -%}
50
- " {% if site.conference.live.streaming.external -%}
42
+ {%- if link_name -%}
43
+ <li class="nav-item live-show d-none" data-start="{{ live_starts }}" data-end="{{ live_ends }}">
44
+ {%- if site.conference.live.streaming.enable %}
45
+ <a
46
+ class="nav-link"
47
+ title="{{ link_name }}"
48
+ {%- if site.conference.live.streaming.external %}
51
49
  href="{{ site.conference.live.streaming.external }}"
52
- {%- else -%}
50
+ {%- else %}
53
51
  data-toggle="modal" data-target="#stream-modal" data-room="{{ r.name }}" href="#"
54
52
  {%- endif -%}
55
53
  >
56
- {%- else %}
57
- {%- assign link_styleclass = "nav-link" -%}
58
- {%- include partials/get_link.html %}
59
- {{ link_tag }}
60
- {%- endif %}
54
+ {%- else %}
55
+ {%- assign link_styleclass = "nav-link" -%}
56
+ {%- include partials/get_link.html %}
57
+ {{ link_tag }}
58
+ {%- endif %}
61
59
 
62
- {{ link.name | default: "" }}
60
+ {{ link_name }}
63
61
 
64
- <span class="live-button badge badge-dark font-weight-normal text-left">
65
- <object data="{{ site.baseurl }}/assets/icons/live.svg" type="image/svg+xml">!</object>
66
- {{ site.data.lang[site.conference.lang].live.live | default: "Live" }}
67
- </span>
68
- </a>
69
- </li>
62
+ <span class="live-button badge badge-dark font-weight-normal text-left">
63
+ <object data="{{ site.baseurl }}/assets/icons/live.svg" type="image/svg+xml">!</object>
64
+ {{ site.data.lang[site.conference.lang].live.live | default: "Live" }}
65
+ </span>
66
+ </a>
67
+ </li>
68
+ {%- endif -%}
69
+
70
+ {%- if link.name_inactive == blank -%}
71
+ {%- assign link_name_inactive = site.data.lang[site.conference.lang].live.stream | default: "Live Stream" -%}
72
+ {%- elsif link.name_inactive -%}
73
+ {%- assign link_name_inactive = link.name_inactive -%}
74
+ {%- else -%}
75
+ {%- assign link_name_inactive = nil -%}
76
+ {%- endif -%}
77
+
78
+ {%- if link_name_inactive -%}
79
+ <li class="nav-item live-hide" data-start="{{ live_starts }}" data-end="{{ live_ends }}">
80
+ <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">
81
+ {{ link_name_inactive }}
82
+ </a>
83
+ </li>
84
+ {%- endif -%}
70
85
 
71
86
  {%- else %}
72
87
  <li class="nav-item {% if page.url contains link.relative_url %}active{% endif %}">
data/_layouts/data.html CHANGED
@@ -82,8 +82,8 @@
82
82
  "href": "",
83
83
  {%- endunless -%}
84
84
 
85
- {%- include partials/get_main_category.html %}
86
- "color": "{{ main_cat_color }}",
85
+ {%- include partials/get_track_properties.html %}
86
+ "color": "{{ track_color }}",
87
87
  "speakers": [
88
88
  {%- for speaker_name in talk.speakers %}
89
89
  "{{ speaker_name}}"{%- unless forloop.last -%},{%- endunless -%}
@@ -94,19 +94,25 @@
94
94
  "start": {{ timestamp_start }},
95
95
  "end": {{ timestamp_end }}
96
96
 
97
- {%- if talk.live.links -%},
97
+ {% include partials/get_link_types.html %}
98
+ {%- if has_live_links > 0 -%},
98
99
  "live_links": [
99
- {%- for link in talk.live.links %}
100
+ {%- for link in talk.links -%}
101
+ {%- include partials/get_link.html link_type="live" -%}
102
+ {%- if link_valid %},
100
103
  {
101
104
  "name": "{{ link.name | replace: '"', '\"' }}",
102
- "href": "{{ link.absolute_url | replace: '"', '%22' }}"
103
- {%- if link.icon -%},
104
- "icon": "{{ link.icon | replace: '"', '\"' }}"
105
- {%- endif %}
106
- {%- if link.disabled -%},
105
+ "href": "{{ link_href | replace: '"', '%22' }}"
106
+ {%- if link_icon -%},
107
+ "icon": "{{ link_icon | replace: '"', '\"' }}"
108
+ {%- endif %}
109
+ {%- if link_disabled -%},
107
110
  "disabled": true
111
+ {%- endif -%}
108
112
  {%- endif %}
109
- }{%- unless forloop.last -%},{%- endunless -%}
113
+ }
114
+ {%- assign has_live_links = has_live_links | minus: 1 -%}
115
+ {%- if has_live_links > 0 -%},{%- endif -%}
110
116
  {%- endfor %}
111
117
  ]
112
118
  {%- endif %}