document.head.insertAdjacentHTML('beforeend','<style type="text/tailwindcss">'+stylFns['app/pages/EventDetail/index.styl']+'</style>')

module.exports =
    name: 'EventDetail'
    render: (new Function '_ctx', '_cache', renderFns['app/pages/EventDetail/index.pug'])()
    data: ->
        event: null
        loading: true
        categoryLabels:
            classical: 'Классическая музыка'
            folk: 'Фольклор'
            jazz: 'Джаз'
            pop: 'Поп-музыка'
            dance: 'Танцевальное шоу'
    mounted: ->
        @loadEvent()
    methods:
        loadEvent: ->
            eventId = @$route.params.id
            _.couchDBService.getEventById(eventId)
            .then (event) =>
                @event = event
            .catch (error) =>
                debug.log "Ошибка загрузки мероприятия: "+error
                @event = null
            .finally =>
                @loading = false

        getCategoryLabel: (category) ->
            @categoryLabels[category] || category

        getCategoryBadgeClass: (category) ->
            classes =
                classical: 'bg-blue-500'
                folk: 'bg-green-500'
                jazz: 'bg-purple-500'
                pop: 'bg-pink-500'
                dance: 'bg-orange-500'
            
            classes[category] || 'bg-gray-500'

        formatDateTime: (dateString, timeString) ->
            try
                date = new Date(dateString)
                options = { 
                    weekday: 'long',
                    year: 'numeric', 
                    month: 'long', 
                    day: 'numeric'
                }
                formattedDate = date.toLocaleDateString('ru-RU', options)
                formattedDate + ", " + timeString
            catch
                dateString + ", " + timeString

        bookTickets: ->
            if @event?.availableTickets > 0
                _.openModal('SuccessModal', {
                    title: 'Билет забронирован!'
                    content: "Вы успешно забронировали билет на \""+@event.title+"\". Подробности отправлены на вашу почту."
                })
            else
                _.openModal('SuccessModal', {
                    title: 'Билеты распроданы'
                    content: 'К сожалению, все билеты на это мероприятие уже распроданы.'
                })
