@@ -8,6 +8,44 @@ title: "<b><center>Goethe University - Tel Aviv University Winterschool <br> Ada
8
8
excerpt : <p style="color:white;text-align:center;font-weight:bold;">Goethe University Frankfurt, Dec. 2 - Dec. 5 2024</p>
9
9
---
10
10
<style >
11
+ <style >
12
+ .speaker-cards {
13
+ margin-bottom : 2rem ;
14
+ }
15
+
16
+ .custom-card {
17
+ cursor : pointer ;
18
+ transition : transform 0.3s ease , box-shadow 0.3s ease ;
19
+ border : 2px solid transparent ;
20
+ }
21
+
22
+ .custom-card :hover {
23
+ transform : translateY (-5px );
24
+ box-shadow : 0 5px 15px rgba (0 ,0 ,0 ,0.1 );
25
+ }
26
+
27
+ .custom-card.active {
28
+ border-color : var (--primary-color );
29
+ }
30
+
31
+ .speaker-details {
32
+ background : white ;
33
+ padding : 2rem ;
34
+ border-radius : 10px ;
35
+ margin-top : 2rem ;
36
+ box-shadow : 0 5px 15px rgba (0 ,0 ,0 ,0.1 );
37
+ display : none ;
38
+ animation : fadeIn 0.3s ease ;
39
+ }
40
+
41
+ .speaker-details.show {
42
+ display : block ;
43
+ }
44
+
45
+ @keyframes fadeIn {
46
+ from { opacity : 0 ; transform : translateY (-20px ); }
47
+ to { opacity : 1 ; transform : translateY (0 ); }
48
+ }
11
49
:root {
12
50
--primary-color : #00618F ;
13
51
--secondary-color : #00618F ;
60
98
border-color : #004d70 ;
61
99
}
62
100
.icon-feature {
63
- font-size : 1.5 rem ;
101
+ font-size : 2 rem ;
64
102
color : var (--accent-color );
65
103
margin-bottom : 1rem ;
66
104
}
@@ -139,7 +177,7 @@ body {
139
177
}
140
178
141
179
.speaker-image {
142
- height : 1.5 rem ;
180
+ height : 2 rem ;
143
181
width : auto ;
144
182
}
145
183
.container {
@@ -207,31 +245,38 @@ body {
207
245
<div class="col-md-12">
208
246
<h5 class="section-title">Speakers</h5>
209
247
<div class="row">
210
- {% for speaker in site.data.winter_school_speakers %}
211
- <div class="col-md-3 mb-3">
212
- <div class="card custom-card">
213
- <div class="card-body text-center">
214
- {% if speaker.picture %}
215
- <img src="{{ speaker.picture }}" class="img-fluid rounded-circle speaker-image" alt="{{ speaker.name }}">
216
- {% else %}
217
- <i class="fas fa-user-circle icon-feature"></i>
218
- {% endif %}
219
- <h6> {{ speaker.name }}</h6>
220
- <p class="text-muted"> {{ speaker.affiliation }}</p>
221
- </div>
222
- <button class="btn btn-primary" type="button" data-toggle="collapse" data-target="#collapse{{ forloop.index }}" aria-expanded="false" aria-controls="collapse{{ forloop.index }}">
223
- More Info
224
- </button>
225
- <div class="collapse" id="collapse{{ forloop.index }}">
226
- <div class="card card-body mt-3">
227
- <p>{{ speaker.bio }}</p>
228
- <h6>{{ speaker.title }}</h6>
229
- <p>{{ speaker.abstract }}</p>
230
- </div>
231
- </div>
248
+ {% for speaker in site.data.winter_school_speakers %}
249
+ <div class="col-md-3 mb-3">
250
+ <div class="custom-card" data-speaker-id="{{ forloop.index }}">
251
+ <div class="card-body text-center">
252
+ {% if speaker.picture %}
253
+ <img src="{{ speaker.picture }}" class="img-fluid rounded-circle speaker-image mb-3" alt="{{ speaker.name }}">
254
+ {% else %}
255
+ <i class="fas fa-user-circle icon-feature"></i>
256
+ {% endif %}
257
+ <h6>{{ speaker.name }}</h6>
258
+ <p class="text-muted">{{ speaker.affiliation }}</p>
232
259
</div>
233
260
</div>
234
- {% endfor %}
261
+ </div>
262
+ {% endfor %}
263
+ </div>
264
+ <!-- Speaker Details Section -->
265
+ {% for speaker in site.data.winter_school_speakers %}
266
+ <div id="speaker-details-{{ forloop.index }}" class="speaker-details">
267
+ <h4>{{ speaker.name }}</h4>
268
+ <p class="text-muted">{{ speaker.affiliation }}</p>
269
+ <div class="mt-4">
270
+ <p>{{ speaker.bio }}</p>
271
+ {% if speaker.title %}
272
+ <h5 class="mt-4">{{ speaker.title }}</h5>
273
+ {% endif %}
274
+ {% if speaker.abstract %}
275
+ <p class="mt-3">{{ speaker.abstract }}</p>
276
+ {% endif %}
277
+ </div>
278
+ </div>
279
+ {% endfor %}
235
280
</div>
236
281
</div>
237
282
</div>
@@ -328,10 +373,10 @@ document.addEventListener('DOMContentLoaded', function() {
328
373
});
329
374
});
330
375
document .addEventListener (' DOMContentLoaded' , function () {
331
- var buttons = document .querySelectorAll (' .btn [data-toggle="collapse"]' );
332
- buttons .forEach (function (button ) {
333
- button .addEventListener (' click' , function () {
334
- var target = document .querySelector (button .getAttribute (' data-target' ));
376
+ var cards = document .querySelectorAll (' .card [data-toggle="collapse"]' );
377
+ cards .forEach (function (card ) {
378
+ card .addEventListener (' click' , function () {
379
+ var target = document .querySelector (card .getAttribute (' data-target' ));
335
380
if (target .classList .contains (' show' )) {
336
381
target .classList .remove (' show' );
337
382
} else {
0 commit comments