Skip to content

Commit 7d1e9c3

Browse files
nimbinatusjerdog
andauthored
feat(speakers): add speaker wall for Austin (#14981)
Signed-off-by: Laura Santamaria <nimbinatus@users.noreply.github.com> Co-authored-by: Jeremy Meiss <jeremy.meiss@gmail.com>
1 parent 81afa76 commit 7d1e9c3

2 files changed

Lines changed: 64 additions & 1 deletion

File tree

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
+++
2+
Title = "Speakers"
3+
Type = "speakers"
4+
Description = "Meet our speakers for DevOpsDays Austin 2025"
5+
+++
6+
7+
8+
<h2>Review some of the talks from these speakers as we finalize details!</h2>
9+
<h3><a href="https://talks.devopsdays.org/devopsdays-austin-2025/featured/">Explore the featured talks here.</a></h3>
10+
<div id="speakers" class="row"></div>
11+
<noscript>
12+
<div class="pretalx-widget">
13+
<div class="pretalx-widget-info-message">
14+
JavaScript is disabled in your browser. To access our speaker list without JavaScript,
15+
please <a target="_blank" href="https://talks.devopsdays.org/devopsdays-austin-2025/speakers/">click here</a>.
16+
</div>
17+
</div>
18+
</noscript>
19+
20+
<script>
21+
const ul = document.getElementById('speakers');
22+
const list = document.createDocumentFragment();
23+
const url = 'https://talks.devopsdays.org/api/events/devopsdays-austin-2025/speakers/?limit=50';
24+
25+
fetch(url)
26+
.then((response) => {
27+
return response.json();
28+
})
29+
.then((data) => {
30+
let speakers = data.results;
31+
32+
speakers.map(function(speaker) {
33+
let li = document.createElement('div');
34+
li.className = `col-lg-3 col-md-6 p-3`;
35+
let name = document.createElement('h3');
36+
let pic = document.createElement('img');
37+
let bio = document.createElement('details');
38+
bio.className = `p-1`;
39+
//let talk = document.createElement('a');
40+
41+
name.innerHTML = `${speaker.name}`;
42+
pic.src = speaker.avatar.length != 0 ? `${speaker.avatar}`: '/img/speaker-default.jpg';
43+
pic.className = `speakers-page`;
44+
bio.innerHTML = `<summary><b>About ${speaker.name}</b></summary><p>${speaker.biography ? `${speaker.biography}`: `Ipsum`}</p>`;
45+
//talk.setAttribute('href', speaker.submissions[0] ? `https://talks.devopsdays.org/devopsdays-austin-2025/talk/${speaker.submissions[0]}` : ``);
46+
//talk.setAttribute('target', '_blank');
47+
//talk.className = `btn btn-primary`;
48+
//talk.innerHTML = `Link to talk`;
49+
50+
li.appendChild(name);
51+
li.appendChild(pic);
52+
li.appendChild(bio);
53+
//li.appendChild(talk);
54+
list.appendChild(li);
55+
});
56+
})
57+
.catch(function(error) {
58+
console.log(error);
59+
})
60+
.finally(() => {
61+
ul.appendChild(list);
62+
});
63+
</script>

data/events/2025/austin/main.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ nav_elements: # List of pages you want to show up in the navigation of your page
4141
- name: register
4242
url: https://tickets.devopsdays.org/devopsdays-austin/2025/
4343
# - name: program
44-
# - name: speakers
44+
- name: speakers
4545
- name: sponsor
4646
- name: contact
4747
- name: conduct

0 commit comments

Comments
 (0)