index.pug 3.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. section
  2. div(class="hero-section mb-16 pt-16")
  3. ImageSlider(
  4. :slides="heroSlides"
  5. :autoplay="true"
  6. :duration="6000"
  7. @slide-click="handleSlideClick"
  8. )
  9. section(class="py-16 bg-white dark:bg-gray-800")
  10. div(class="container mx-auto px-4")
  11. h2(class="text-3xl font-bold text-center mb-12 text-gray-800 dark:text-white") Ближайшие мероприятия
  12. FilterSort(
  13. :items="events"
  14. :filters="eventFilters"
  15. :sortOptions="eventSortOptions"
  16. @filter-changed="handleFilterChange"
  17. @sort-changed="handleSortChange"
  18. )
  19. div(class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 mt-8")
  20. div(
  21. v-for="event in filteredEvents"
  22. :key="event._id"
  23. class="event-card bg-gray-50 dark:bg-gray-700 rounded-xl shadow-md overflow-hidden card-hover cursor-pointer animate-fade-in-up"
  24. :class="'animation-delay-' + (($index % 6) * 100)"
  25. @click="openEventModal(event)"
  26. )
  27. img(:src="event.image" :alt="event.title" class="w-full h-48 object-cover")
  28. div(class="p-6")
  29. h3(class="text-xl font-bold text-gray-800 dark:text-white mb-2") {{ event.title }}
  30. p(class="text-gray-600 dark:text-gray-300 mb-4") {{ event.date }}
  31. p(class="text-gray-700 dark:text-gray-200 line-clamp-2") {{ event.description }}
  32. button(class="mt-4 bg-accent text-white px-4 py-2 rounded-lg hover:bg-yellow-600 transition-colors") Подробнее
  33. section(class="py-16 bg-gray-100 dark:bg-gray-900")
  34. div(class="container mx-auto px-4")
  35. div(class="grid grid-cols-1 lg:grid-cols-2 gap-12 items-center")
  36. div(class="about-content")
  37. h2(class="text-3xl font-bold mb-6 text-gray-800 dark:text-white") Легендарный зал "Кохи Борбад"
  38. p(class="text-gray-700 dark:text-gray-300 mb-4 leading-relaxed") Концертный зал "Кохи Борбад" - одна из главных культурных площадок Душанбе, известная своей богатой историей и выдающейся акустикой.
  39. p(class="text-gray-700 dark:text-gray-300 mb-6 leading-relaxed") Здесь выступают лучшие артисты Таджикистана и зарубежные звезды.
  40. button(
  41. @click="$router.push('/about')"
  42. class="bg-primary text-white px-6 py-3 rounded-lg hover:bg-gray-800 transition-colors"
  43. ) Узнать историю
  44. div(class="about-image")
  45. img(src="https://avatars.mds.yandex.net/i?id=cc968d84ec5c27e85f59f49fc0daeb8004e348f8-10243924-images-thumbs&n=13" alt="Интерьер зала" class="rounded-xl shadow-2xl")
  46. section(class="py-16 bg-accent text-white")
  47. div(class="container mx-auto px-4 text-center")
  48. h2(class="text-3xl font-bold mb-4") Будьте в курсе мероприятий
  49. p(class="text-xl mb-8 text-yellow-100") Подпишитесь на рассылку и получайте анонсы концертов
  50. div(class="max-w-md mx-auto")
  51. FormValidator(
  52. placeholder="Введите ваш email"
  53. buttonText="Подписаться"
  54. :fields="{ email: true }"
  55. @form-submitted="handleSubscription"
  56. )
  57. EventDetailModal(
  58. v-if="selectedEvent"
  59. :isVisible="showEventModal"
  60. :event="selectedEvent"
  61. @update:isVisible="showEventModal = false"
  62. @ticket-booking="handleTicketBooking"
  63. )