Skip to content

Commit 189a8fc

Browse files
committed
update
1 parent 21627a1 commit 189a8fc

1 file changed

Lines changed: 40 additions & 16 deletions

File tree

_layouts/events.html

Lines changed: 40 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -31,26 +31,50 @@ <h2 class="text-2xl font-semibold mb-3">Agenda</h2>
3131
{% endif %}
3232

3333
{% if page.speakers %}
34-
<h2 class="text-2xl font-semibold mb-3">Speakers</h2>
35-
<ul class="space-y-2 mb-6">
36-
{% for sp in page.speakers %}
37-
<li>
38-
<strong>{{ sp.name }}</strong>
39-
{% if sp.url and sp.url contains "linkedin.com" %}
40-
<a href="{{ sp.url }}" target="_blank" rel="noopener noreferrer" class="inline-block ml-2">
41-
<!-- LinkedIn Icon (SVG) -->
42-
<svg class="w-5 h-5 text-blue-600 hover:text-blue-800" xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24">
43-
<path d="M4.98 3.5C4.98 4.88 3.87 6 2.5 6S0 4.88 0 3.5 1.12 1 2.5 1s2.48 1.12 2.48 2.5zM.4 8.34h4.18V24H.4V8.34zm7.95 0h4.01v2.13h.06c.56-1.06 1.93-2.18 3.98-2.18 4.25 0 5.03 2.8 5.03 6.44V24h-4.18v-7.73c0-1.84-.03-4.2-2.56-4.2-2.56 0-2.95 2-2.95 4.06V24H8.35V8.34z"/>
44-
</svg>
45-
</a>
46-
{% endif %}
47-
{% if sp.topic %} — {{ sp.topic }}{% endif %}
48-
</li>
34+
{% assign sorted_speakers = page.speakers | sort: "name" %}
4935

36+
<h2 class="text-2xl font-semibold mb-3">Speakers</h2>
37+
<div class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 gap-4 mb-6">
38+
{% for sp in sorted_speakers %}
39+
{% if sp.url and sp.url contains "linkedin.com/in/" %}
40+
{% assign slug = sp.url | split: "/" | last %}
41+
{% assign base = slug | split: "-" | first | downcase %}
42+
{% else %}
43+
{% assign base = sp.name | split: " " | first | downcase %}
44+
{% endif %}
45+
46+
{% assign file_jpeg = "../assets/lombokdev/speakers/" | append: base | append: ".jpeg" %}
47+
{% assign file_jpg = "../assets/lombokdev/speakers/" | append: base | append: ".jpg" %}
48+
{% assign file_png = "../assets/lombokdev/speakers/" | append: base | append: ".png" %}
49+
50+
<div class="relative rounded-xl overflow-hidden shadow-lg">
51+
<img src="{{ file_jpeg }}"
52+
alt="{{ sp.name | escape }}"
53+
class="w-full h-56 object-cover"
54+
onerror="this.onerror=null;
55+
this.src='{{ file_jpg }}';
56+
this.onerror=function(){this.src='{{ file_png }}'};
57+
this.onerror=function(){this.src='../assets/lombokdev/speakers/placeholder.png'};">
58+
59+
<div class="absolute bottom-0 left-0 right-0 bg-black bg-opacity-60 text-white p-3 flex items-center justify-between">
60+
<span class="font-semibold">{{ sp.name }}</span>
61+
{% if sp.url and sp.url contains "linkedin.com" %}
62+
<a href="{{ sp.url }}" target="_blank" rel="noopener noreferrer" class="ml-2">
63+
<!-- LinkedIn Icon -->
64+
<svg class="w-5 h-5 text-blue-400 hover:text-blue-600" xmlns="http://www.w3.org/2000/svg" fill="currentColor" viewBox="0 0 24 24">
65+
<path d="M4.98 3.5C4.98 4.88 3.87 6 2.5 6S0 4.88 0 3.5 1.12 1 2.5 1s2.48 1.12 2.48 2.5zM.4 8.34h4.18V24H.4V8.34zm7.95 0h4.01v2.13h.06c.56-1.06 1.93-2.18 3.98-2.18 4.25 0 5.03 2.8 5.03 6.44V24h-4.18v-7.73c0-1.84-.03-4.2-2.56-4.2-2.56 0-2.95 2-2.95 4.06V24H8.35V8.34z"/>
66+
</svg>
67+
</a>
68+
{% endif %}
69+
</div>
70+
</div>
5071
{% endfor %}
51-
</ul>
72+
</div>
5273
{% endif %}
5374

75+
76+
77+
5478
{% if page.registration_url %}
5579
<a href="{{ page.registration_url }}" class="px-6 py-3 bg-blue-600 text-white rounded-lg hover:bg-blue-700">Register</a>
5680
{% endif %}

0 commit comments

Comments
 (0)