@@ -401,73 +401,4 @@ layout: base.njk
401401 </div >
402402</div >
403403
404- <script >
405- document .addEventListener (' DOMContentLoaded' , () => {
406- const cards = document .querySelectorAll (' .schedule-card' );
407- const contents = document .querySelectorAll (' .schedule-content' );
408- let selectedCard = null ;
409-
410- // Function to reset all card backgrounds
411- const resetCardBackgrounds = () => {
412- cards .forEach (card => {
413- const highlightDiv = card .querySelector (' .card-grid' );
414- highlightDiv .classList .remove (' pycon-bg-lime' );
415- highlightDiv .style .backgroundColor = ' #FFFFFF' ;
416- });
417- };
418-
419- // Function to hide all schedules
420- const hideAllSchedules = () => {
421- contents .forEach (content => content .classList .add (' hidden' ));
422- };
423-
424- // Initial state: Highlight the first card and show the first schedule
425- if (cards .length > 0 && contents .length > 0 ) {
426- selectedCard = cards[0 ];
427- const firstContentId = selectedCard .getAttribute (' data-schedule' );
428-
429- // Highlight the first card
430- const firstHighlightDiv = selectedCard .querySelector (' .card-grid' );
431- firstHighlightDiv .classList .add (' bg:pycon-bg-lime' );
432- firstHighlightDiv .style .backgroundColor = ' #CDFF89' ;
433-
434- // Show the first schedule
435- document .getElementById (firstContentId).classList .remove (' hidden' );
436- }
437-
438- // Add event listeners to all cards
439- cards .forEach (card => {
440- const highlightDiv = card .querySelector (' .card-grid' );
441-
442- card .addEventListener (' click' , () => {
443- // Reset previous selection
444- resetCardBackgrounds ();
445- hideAllSchedules ();
446-
447- // Highlight the clicked card
448- highlightDiv .classList .add (' pycon-bg-lime' );
449- highlightDiv .style .backgroundColor = ' #CDFF89' ; // Lime background
450-
451- // Show the corresponding schedule
452- const scheduleId = card .getAttribute (' data-schedule' );
453- document .getElementById (scheduleId).classList .remove (' hidden' );
454-
455- // Update the selected card
456- selectedCard = card;
457- });
458-
459- // Handle hover for unselected cards
460- card .addEventListener (' mouseenter' , () => {
461- if (card !== selectedCard) {
462- highlightDiv .style .backgroundColor = ' #CDFF89' ; // Hover lime background
463- }
464- });
465-
466- card .addEventListener (' mouseleave' , () => {
467- if (card !== selectedCard) {
468- highlightDiv .style .backgroundColor = ' #FFFFFF' ; // Default white background
469- }
470- });
471- });
472- });
473- </script >
404+ <script src =" {{ env.baseUrl ~ 'js/schedule.js'}}" defer ></script >
0 commit comments