whenever i click on view details button it should open a page showing all the details of taht event and about how manybpoeple attending what kind of clothes they need to wear and about your interestv to join the event and a buttion of join event should show that ask for you informationa nd when you comlete fillng up the information and submitn it should show suucesfully registered with differeent emojis everytime you submit a event and it should then accesible on ypur dashboard after registereing as registered event
Browse files- event-details.html +167 -0
- index.html +47 -49
event-details.html
ADDED
|
@@ -0,0 +1,167 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
```html
|
| 2 |
+
<!DOCTYPE html>
|
| 3 |
+
<html lang="en">
|
| 4 |
+
<head>
|
| 5 |
+
<meta charset="UTF-8">
|
| 6 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
| 7 |
+
<title>Event Details - SparkMeet</title>
|
| 8 |
+
<script src="https://cdn.tailwindcss.com"></script>
|
| 9 |
+
<script src="https://unpkg.com/feather-icons"></script>
|
| 10 |
+
<style>
|
| 11 |
+
.gradient-bg {
|
| 12 |
+
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
|
| 13 |
+
}
|
| 14 |
+
.btn-primary {
|
| 15 |
+
background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
|
| 16 |
+
}
|
| 17 |
+
.btn-primary:hover {
|
| 18 |
+
background: linear-gradient(135deg, #f5576c 0%, #f093fb 100%);
|
| 19 |
+
}
|
| 20 |
+
.attendee-avatar {
|
| 21 |
+
transition: transform 0.2s ease;
|
| 22 |
+
}
|
| 23 |
+
.attendee-avatar:hover {
|
| 24 |
+
transform: scale(1.1);
|
| 25 |
+
}
|
| 26 |
+
.dress-code-item {
|
| 27 |
+
transition: all 0.3s ease;
|
| 28 |
+
}
|
| 29 |
+
.dress-code-item:hover {
|
| 30 |
+
transform: translateY(-2px);
|
| 31 |
+
box-shadow: 0 4px 12px rgba(0,0,0,0.1);
|
| 32 |
+
}
|
| 33 |
+
</style>
|
| 34 |
+
</head>
|
| 35 |
+
<body class="bg-gray-50 font-sans">
|
| 36 |
+
<!-- Navigation -->
|
| 37 |
+
<nav class="bg-white shadow-sm sticky top-0 z-50">
|
| 38 |
+
<div class="max-w-6xl mx-auto px-4">
|
| 39 |
+
<div class="flex justify-between items-center py-4">
|
| 40 |
+
<a href="index.html" class="flex items-center space-x-2">
|
| 41 |
+
<span class="text-2xl font-bold text-indigo-600">SparkMeet</span>
|
| 42 |
+
</a>
|
| 43 |
+
<div class="flex items-center space-x-4">
|
| 44 |
+
<a href="index.html" class="text-gray-600 hover:text-indigo-600 font-medium flex items-center">
|
| 45 |
+
<i data-feather="home" class="mr-2"></i> Events
|
| 46 |
+
</a>
|
| 47 |
+
<a href="dashboard.html" class="text-gray-600 hover:text-indigo-600 font-medium flex items-center">
|
| 48 |
+
<i data-feather="user" class="mr-2"></i> Dashboard
|
| 49 |
+
</a>
|
| 50 |
+
</div>
|
| 51 |
+
</div>
|
| 52 |
+
</div>
|
| 53 |
+
</nav>
|
| 54 |
+
|
| 55 |
+
<!-- Event Header -->
|
| 56 |
+
<div class="relative h-96 overflow-hidden">
|
| 57 |
+
<img id="event-image" src="" alt="Event" class="w-full h-full object-cover">
|
| 58 |
+
<div class="absolute inset-0 bg-gradient-to-t from-black/60 via-transparent to-transparent"></div>
|
| 59 |
+
<div class="absolute bottom-8 left-8 right-8 text-white">
|
| 60 |
+
<div class="flex items-center space-x-2 mb-2">
|
| 61 |
+
<span id="event-category" class="px-3 py-1 bg-white/20 backdrop-blur rounded-full text-sm"></span>
|
| 62 |
+
<span class="px-3 py-1 bg-white/20 backdrop-blur rounded-full text-sm flex items-center">
|
| 63 |
+
<i data-feather="users" class="w-4 h-4 mr-1"></i>
|
| 64 |
+
<span id="attendee-count">127</span> attending
|
| 65 |
+
</span>
|
| 66 |
+
</div>
|
| 67 |
+
<h1 id="event-title" class="text-4xl font-bold mb-2"></h1>
|
| 68 |
+
<div class="flex items-center space-x-4 text-sm">
|
| 69 |
+
<span class="flex items-center">
|
| 70 |
+
<i data-feather="map-pin" class="w-4 h-4 mr-1"></i>
|
| 71 |
+
<span id="event-location"></span>
|
| 72 |
+
</span>
|
| 73 |
+
<span class="flex items-center">
|
| 74 |
+
<i data-feather="calendar" class="w-4 h-4 mr-1"></i>
|
| 75 |
+
<span id="event-date"></span>
|
| 76 |
+
</span>
|
| 77 |
+
<span class="flex items-center">
|
| 78 |
+
<i data-feather="clock" class="w-4 h-4 mr-1"></i>
|
| 79 |
+
7:00 PM - 11:00 PM
|
| 80 |
+
</span>
|
| 81 |
+
</div>
|
| 82 |
+
</div>
|
| 83 |
+
</div>
|
| 84 |
+
|
| 85 |
+
<!-- Main Content -->
|
| 86 |
+
<div class="max-w-4xl mx-auto px-4 py-8">
|
| 87 |
+
<div class="grid grid-cols-1 lg:grid-cols-3 gap-8">
|
| 88 |
+
<!-- Left Column -->
|
| 89 |
+
<div class="lg:col-span-2 space-y-8">
|
| 90 |
+
<!-- About Section -->
|
| 91 |
+
<div class="bg-white rounded-xl shadow-sm p-6">
|
| 92 |
+
<h2 class="text-2xl font-bold mb-4">About This Event</h2>
|
| 93 |
+
<p id="event-description" class="text-gray-700 leading-relaxed"></p>
|
| 94 |
+
</div>
|
| 95 |
+
|
| 96 |
+
<!-- Dress Code Section -->
|
| 97 |
+
<div class="bg-white rounded-xl shadow-sm p-6">
|
| 98 |
+
<h2 class="text-2xl font-bold mb-4">What to Wear 👗</h2>
|
| 99 |
+
<div id="dress-code" class="grid grid-cols-1 sm:grid-cols-2 gap-4">
|
| 100 |
+
<!-- Dress code items will be dynamically added -->
|
| 101 |
+
</div>
|
| 102 |
+
</div>
|
| 103 |
+
|
| 104 |
+
<!-- Interest Matching Section -->
|
| 105 |
+
<div class="bg-white rounded-xl shadow-sm p-6">
|
| 106 |
+
<h2 class="text-2xl font-bold mb-4">Is This Event for You? 🤔</h2>
|
| 107 |
+
<div class="space-y-4">
|
| 108 |
+
<div class="flex items-start space-x-3">
|
| 109 |
+
<div class="w-6 h-6 bg-green-100 rounded-full flex items-center justify-center flex-shrink-0 mt-1">
|
| 110 |
+
<i data-feather="check" class="w-4 h-4 text-green-600"></i>
|
| 111 |
+
</div>
|
| 112 |
+
<div>
|
| 113 |
+
<h3 class="font-semibold">You'll love this if:</h3>
|
| 114 |
+
<p class="text-gray-600">You enjoy meeting new people and trying new experiences</p>
|
| 115 |
+
</div>
|
| 116 |
+
</div>
|
| 117 |
+
<div class="flex items-start space-x-3">
|
| 118 |
+
<div class="w-6 h-6 bg-blue-100 rounded-full flex items-center justify-center flex-shrink-0 mt-1">
|
| 119 |
+
<i data-feather="star" class="w-4 h-4 text-blue-600"></i>
|
| 120 |
+
</div>
|
| 121 |
+
<div>
|
| 122 |
+
<h3 class="font-semibold">Perfect for:</h3>
|
| 123 |
+
<p class="text-gray-600">Making new friends, networking, or just having fun!</p>
|
| 124 |
+
</div>
|
| 125 |
+
</div>
|
| 126 |
+
<div class="flex items-start space-x-3">
|
| 127 |
+
<div class="w-6 h-6 bg-purple-100 rounded-full flex items-center justify-center flex-shrink-0 mt-1">
|
| 128 |
+
<i data-feather="heart" class="w-4 h-4 text-purple-600"></i>
|
| 129 |
+
</div>
|
| 130 |
+
<div>
|
| 131 |
+
<h3 class="font-semibold">Why join:</h3>
|
| 132 |
+
<p class="text-gray-600">Create memorable experiences and expand your social circle</p>
|
| 133 |
+
</div>
|
| 134 |
+
</div>
|
| 135 |
+
</div>
|
| 136 |
+
</div>
|
| 137 |
+
|
| 138 |
+
<!-- Location Section -->
|
| 139 |
+
<div class="bg-white rounded-xl shadow-sm p-6">
|
| 140 |
+
<h2 class="text-2xl font-bold mb-4">Location 📍</h2>
|
| 141 |
+
<div class="bg-gray-100 rounded-lg h-64 flex items-center justify-center">
|
| 142 |
+
<div class="text-center">
|
| 143 |
+
<i data-feather="map-pin" class="w-12 h-12 text-gray-400 mx-auto mb-2"></i>
|
| 144 |
+
<p class="text-gray-600" id="event-location-full"></p>
|
| 145 |
+
<button class="mt-4 px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors">
|
| 146 |
+
Get Directions
|
| 147 |
+
</button>
|
| 148 |
+
</div>
|
| 149 |
+
</div>
|
| 150 |
+
</div>
|
| 151 |
+
</div>
|
| 152 |
+
|
| 153 |
+
<!-- Right Column -->
|
| 154 |
+
<div class="space-y-6">
|
| 155 |
+
<!-- Attendees Section -->
|
| 156 |
+
<div class="bg-white rounded-xl shadow-sm p-6">
|
| 157 |
+
<h3 class="text-lg font-bold mb-4">Who's Attending 🎉</h3>
|
| 158 |
+
<div class="flex flex-wrap gap-2 mb-4" id="attendees-list">
|
| 159 |
+
<!-- Attendee avatars will be dynamically added -->
|
| 160 |
+
</div>
|
| 161 |
+
<button class="w-full px-4 py-2 bg-gray-100 text-gray-700 rounded-lg hover:bg-gray-200 transition-colors">
|
| 162 |
+
View All Attendees
|
| 163 |
+
</button>
|
| 164 |
+
</div>
|
| 165 |
+
|
| 166 |
+
<!-- Event Organizer -->
|
| 167 |
+
<div class
|
index.html
CHANGED
|
@@ -135,11 +135,11 @@
|
|
| 135 |
<i data-feather="calendar" class="w-4 h-4 mr-2 text-indigo-600"></i>
|
| 136 |
<span class="text-sm">Oct 15, 2023</span>
|
| 137 |
</div>
|
| 138 |
-
<button class="view-details-btn px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors">
|
| 139 |
View Details
|
| 140 |
</button>
|
| 141 |
</div>
|
| 142 |
-
|
| 143 |
</div>
|
| 144 |
<!-- Event Card 2 -->
|
| 145 |
<div class="event-card bg-white rounded-xl shadow-md overflow-hidden transition-all duration-300" data-category="party">
|
|
@@ -161,11 +161,11 @@
|
|
| 161 |
<i data-feather="calendar" class="w-4 h-4 mr-2 text-indigo-600"></i>
|
| 162 |
<span class="text-sm">Nov 5, 2023</span>
|
| 163 |
</div>
|
| 164 |
-
<button class="view-details-btn px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors">
|
| 165 |
View Details
|
| 166 |
</button>
|
| 167 |
</div>
|
| 168 |
-
|
| 169 |
</div>
|
| 170 |
<!-- Event Card 3 -->
|
| 171 |
<div class="event-card bg-white rounded-xl shadow-md overflow-hidden transition-all duration-300" data-category="workshop">
|
|
@@ -187,11 +187,11 @@
|
|
| 187 |
<i data-feather="calendar" class="w-4 h-4 mr-2 text-indigo-600"></i>
|
| 188 |
<span class="text-sm">Dec 12, 2023</span>
|
| 189 |
</div>
|
| 190 |
-
<button class="view-details-btn px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors">
|
| 191 |
View Details
|
| 192 |
</button>
|
| 193 |
</div>
|
| 194 |
-
|
| 195 |
</div>
|
| 196 |
</div>
|
| 197 |
</div>
|
|
@@ -572,14 +572,14 @@ function createEventCard(event) {
|
|
| 572 |
</div>
|
| 573 |
<p class="text-gray-600 mb-4">${event.description}</p>
|
| 574 |
<div class="flex justify-between items-center">
|
| 575 |
-
|
| 576 |
-
|
| 577 |
-
|
| 578 |
-
</div>
|
| 579 |
-
<button class="view-details-btn px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors">
|
| 580 |
-
View Details
|
| 581 |
-
</button>
|
| 582 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
| 583 |
</div>
|
| 584 |
</div>
|
| 585 |
`;
|
|
@@ -590,13 +590,12 @@ function createEventCard(event) {
|
|
| 590 |
|
| 591 |
// Clear current grid
|
| 592 |
eventsGrid.innerHTML = '';
|
| 593 |
-
|
| 594 |
// Add food culture events
|
| 595 |
-
foodCultureEvents.forEach(event => {
|
| 596 |
-
|
|
|
|
| 597 |
});
|
| 598 |
-
|
| 599 |
-
// Re-attach event listeners to new buttons
|
| 600 |
attachEventListeners();
|
| 601 |
}
|
| 602 |
|
|
@@ -606,13 +605,12 @@ function createEventCard(event) {
|
|
| 606 |
|
| 607 |
// Clear current grid
|
| 608 |
eventsGrid.innerHTML = '';
|
| 609 |
-
|
| 610 |
// Add party events
|
| 611 |
-
partyEvents.forEach(event => {
|
| 612 |
-
|
|
|
|
| 613 |
});
|
| 614 |
-
|
| 615 |
-
// Re-attach event listeners to new buttons
|
| 616 |
attachEventListeners();
|
| 617 |
}
|
| 618 |
|
|
@@ -622,13 +620,12 @@ function createEventCard(event) {
|
|
| 622 |
|
| 623 |
// Clear current grid
|
| 624 |
eventsGrid.innerHTML = '';
|
| 625 |
-
|
| 626 |
// Add workshop events
|
| 627 |
-
workshopEvents.forEach(event => {
|
| 628 |
-
|
|
|
|
| 629 |
});
|
| 630 |
-
|
| 631 |
-
// Re-attach event listeners to new buttons
|
| 632 |
attachEventListeners();
|
| 633 |
}
|
| 634 |
|
|
@@ -638,13 +635,12 @@ function createEventCard(event) {
|
|
| 638 |
|
| 639 |
// Clear current grid
|
| 640 |
eventsGrid.innerHTML = '';
|
| 641 |
-
|
| 642 |
// Add sport events
|
| 643 |
-
sportEvents.forEach(event => {
|
| 644 |
-
|
|
|
|
| 645 |
});
|
| 646 |
-
|
| 647 |
-
// Re-attach event listeners to new buttons
|
| 648 |
attachEventListeners();
|
| 649 |
}
|
| 650 |
|
|
@@ -654,13 +650,12 @@ function createEventCard(event) {
|
|
| 654 |
|
| 655 |
// Clear current grid
|
| 656 |
eventsGrid.innerHTML = '';
|
| 657 |
-
|
| 658 |
// Add networking events
|
| 659 |
-
networkingEvents.forEach(event => {
|
| 660 |
-
|
|
|
|
| 661 |
});
|
| 662 |
-
|
| 663 |
-
// Re-attach event listeners to new buttons
|
| 664 |
attachEventListeners();
|
| 665 |
}
|
| 666 |
function showAllEvents() {
|
|
@@ -700,7 +695,7 @@ function showAllEvents() {
|
|
| 700 |
}
|
| 701 |
});
|
| 702 |
});
|
| 703 |
-
// Event details modal
|
| 704 |
const eventModal = document.getElementById('event-modal');
|
| 705 |
const closeModal = document.getElementById('close-modal');
|
| 706 |
const viewDetailsBtns = document.querySelectorAll('.view-details-btn');
|
|
@@ -715,18 +710,22 @@ function showAllEvents() {
|
|
| 715 |
const eventDescription = eventCard.querySelector('p').textContent;
|
| 716 |
const eventImage = eventCard.querySelector('img').src;
|
| 717 |
|
| 718 |
-
|
| 719 |
-
|
| 720 |
-
|
| 721 |
-
|
| 722 |
-
|
| 723 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 724 |
|
| 725 |
-
|
|
|
|
| 726 |
});
|
| 727 |
});
|
| 728 |
-
|
| 729 |
-
closeModal.addEventListener('click', () => {
|
| 730 |
eventModal.classList.add('hidden');
|
| 731 |
});
|
| 732 |
|
|
@@ -765,7 +764,6 @@ function showAllEvents() {
|
|
| 765 |
closeSuccessModal.addEventListener('click', () => {
|
| 766 |
successModal.classList.add('hidden');
|
| 767 |
});
|
| 768 |
-
|
| 769 |
// Close modals when clicking outside
|
| 770 |
const modals = document.querySelectorAll('.modal');
|
| 771 |
|
|
|
|
| 135 |
<i data-feather="calendar" class="w-4 h-4 mr-2 text-indigo-600"></i>
|
| 136 |
<span class="text-sm">Oct 15, 2023</span>
|
| 137 |
</div>
|
| 138 |
+
<button class="view-details-btn px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors" data-event-id="food-festival-2023">
|
| 139 |
View Details
|
| 140 |
</button>
|
| 141 |
</div>
|
| 142 |
+
</div>
|
| 143 |
</div>
|
| 144 |
<!-- Event Card 2 -->
|
| 145 |
<div class="event-card bg-white rounded-xl shadow-md overflow-hidden transition-all duration-300" data-category="party">
|
|
|
|
| 161 |
<i data-feather="calendar" class="w-4 h-4 mr-2 text-indigo-600"></i>
|
| 162 |
<span class="text-sm">Nov 5, 2023</span>
|
| 163 |
</div>
|
| 164 |
+
<button class="view-details-btn px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors" data-event-id="beach-party-2023">
|
| 165 |
View Details
|
| 166 |
</button>
|
| 167 |
</div>
|
| 168 |
+
</div>
|
| 169 |
</div>
|
| 170 |
<!-- Event Card 3 -->
|
| 171 |
<div class="event-card bg-white rounded-xl shadow-md overflow-hidden transition-all duration-300" data-category="workshop">
|
|
|
|
| 187 |
<i data-feather="calendar" class="w-4 h-4 mr-2 text-indigo-600"></i>
|
| 188 |
<span class="text-sm">Dec 12, 2023</span>
|
| 189 |
</div>
|
| 190 |
+
<button class="view-details-btn px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors" data-event-id="tech-workshop-2023">
|
| 191 |
View Details
|
| 192 |
</button>
|
| 193 |
</div>
|
| 194 |
+
</div>
|
| 195 |
</div>
|
| 196 |
</div>
|
| 197 |
</div>
|
|
|
|
| 572 |
</div>
|
| 573 |
<p class="text-gray-600 mb-4">${event.description}</p>
|
| 574 |
<div class="flex justify-between items-center">
|
| 575 |
+
<div class="flex items-center">
|
| 576 |
+
<i data-feather="calendar" class="w-4 h-4 mr-2 text-indigo-600"></i>
|
| 577 |
+
<span class="text-sm">${event.date}</span>
|
|
|
|
|
|
|
|
|
|
|
|
|
| 578 |
</div>
|
| 579 |
+
<button class="view-details-btn px-4 py-2 bg-indigo-600 text-white rounded-lg hover:bg-indigo-700 transition-colors" data-event-id="${event.id || event.title.toLowerCase().replace(/\s+/g, '-')}">
|
| 580 |
+
View Details
|
| 581 |
+
</button>
|
| 582 |
+
</div>
|
| 583 |
</div>
|
| 584 |
</div>
|
| 585 |
`;
|
|
|
|
| 590 |
|
| 591 |
// Clear current grid
|
| 592 |
eventsGrid.innerHTML = '';
|
|
|
|
| 593 |
// Add food culture events
|
| 594 |
+
foodCultureEvents.forEach((event, index) => {
|
| 595 |
+
const eventWithId = { ...event, id: `food-culture-${index + 1}` };
|
| 596 |
+
eventsGrid.innerHTML += createEventCard(eventWithId);
|
| 597 |
});
|
| 598 |
+
// Re-attach event listeners to new buttons
|
|
|
|
| 599 |
attachEventListeners();
|
| 600 |
}
|
| 601 |
|
|
|
|
| 605 |
|
| 606 |
// Clear current grid
|
| 607 |
eventsGrid.innerHTML = '';
|
|
|
|
| 608 |
// Add party events
|
| 609 |
+
partyEvents.forEach((event, index) => {
|
| 610 |
+
const eventWithId = { ...event, id: `party-${index + 1}` };
|
| 611 |
+
eventsGrid.innerHTML += createEventCard(eventWithId);
|
| 612 |
});
|
| 613 |
+
// Re-attach event listeners to new buttons
|
|
|
|
| 614 |
attachEventListeners();
|
| 615 |
}
|
| 616 |
|
|
|
|
| 620 |
|
| 621 |
// Clear current grid
|
| 622 |
eventsGrid.innerHTML = '';
|
|
|
|
| 623 |
// Add workshop events
|
| 624 |
+
workshopEvents.forEach((event, index) => {
|
| 625 |
+
const eventWithId = { ...event, id: `workshop-${index + 1}` };
|
| 626 |
+
eventsGrid.innerHTML += createEventCard(eventWithId);
|
| 627 |
});
|
| 628 |
+
// Re-attach event listeners to new buttons
|
|
|
|
| 629 |
attachEventListeners();
|
| 630 |
}
|
| 631 |
|
|
|
|
| 635 |
|
| 636 |
// Clear current grid
|
| 637 |
eventsGrid.innerHTML = '';
|
|
|
|
| 638 |
// Add sport events
|
| 639 |
+
sportEvents.forEach((event, index) => {
|
| 640 |
+
const eventWithId = { ...event, id: `sport-${index + 1}` };
|
| 641 |
+
eventsGrid.innerHTML += createEventCard(eventWithId);
|
| 642 |
});
|
| 643 |
+
// Re-attach event listeners to new buttons
|
|
|
|
| 644 |
attachEventListeners();
|
| 645 |
}
|
| 646 |
|
|
|
|
| 650 |
|
| 651 |
// Clear current grid
|
| 652 |
eventsGrid.innerHTML = '';
|
|
|
|
| 653 |
// Add networking events
|
| 654 |
+
networkingEvents.forEach((event, index) => {
|
| 655 |
+
const eventWithId = { ...event, id: `networking-${index + 1}` };
|
| 656 |
+
eventsGrid.innerHTML += createEventCard(eventWithId);
|
| 657 |
});
|
| 658 |
+
// Re-attach event listeners to new buttons
|
|
|
|
| 659 |
attachEventListeners();
|
| 660 |
}
|
| 661 |
function showAllEvents() {
|
|
|
|
| 695 |
}
|
| 696 |
});
|
| 697 |
});
|
| 698 |
+
// Event details modal
|
| 699 |
const eventModal = document.getElementById('event-modal');
|
| 700 |
const closeModal = document.getElementById('close-modal');
|
| 701 |
const viewDetailsBtns = document.querySelectorAll('.view-details-btn');
|
|
|
|
| 710 |
const eventDescription = eventCard.querySelector('p').textContent;
|
| 711 |
const eventImage = eventCard.querySelector('img').src;
|
| 712 |
|
| 713 |
+
// Store event details in localStorage for event-details page
|
| 714 |
+
const eventDetails = {
|
| 715 |
+
title: eventTitle,
|
| 716 |
+
category: eventCategory,
|
| 717 |
+
location: eventLocation,
|
| 718 |
+
date: eventDate,
|
| 719 |
+
description: eventDescription,
|
| 720 |
+
image: eventImage
|
| 721 |
+
};
|
| 722 |
+
localStorage.setItem('selectedEvent', JSON.stringify(eventDetails));
|
| 723 |
|
| 724 |
+
// Redirect to event details page
|
| 725 |
+
window.location.href = 'event-details.html';
|
| 726 |
});
|
| 727 |
});
|
| 728 |
+
closeModal.addEventListener('click', () => {
|
|
|
|
| 729 |
eventModal.classList.add('hidden');
|
| 730 |
});
|
| 731 |
|
|
|
|
| 764 |
closeSuccessModal.addEventListener('click', () => {
|
| 765 |
successModal.classList.add('hidden');
|
| 766 |
});
|
|
|
|
| 767 |
// Close modals when clicking outside
|
| 768 |
const modals = document.querySelectorAll('.modal');
|
| 769 |
|