INSERT INTO `cp_filejs` (`id`,`app`,`path`,`modul`,`file_name`,`content`) VALUES ('326','4','u8/manager','discover','js/venue-view.js---','import {\r\n fetchVenue,\r\n maybeFollowVenue\r\n} from \\\\\\\\\\\\\\\"./api/discover.js\\\\\\\\\\\\\\\";\r\nimport app from \\\\\\\\\\\\\\\"./app.js\\\\\\\\\\\\\\\";\r\n\r\nvar $ = Dom7;\r\n\r\n//DISCOVER - VIEW EVENT\r\n$(document).on(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'page:init\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'.page[data-name=\\\\\\\\\\\\\\\"discover-view-venue\\\\\\\\\\\\\\\"]\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', async function (e) {\r\n var venueId = e.detail.route.params.id\r\n\r\n if (!venueId || venueId === \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'-1\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\') {\r\n return;\r\n }\r\n\r\n $(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'.loading-fullscreen\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\').show()\r\n const venueData = await fetchVenue(venueId);\r\n\r\n $(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'.loading-fullscreen\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\').hide()\r\n\r\n $(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'#copy-venue-link\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\').attr(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'data-venue-id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', venueId);\r\n $(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'#share-email-venue-link\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\').attr(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'data-venue-id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', venueId);\r\n\r\n const mainContainer = $(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'.discover-view-event\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');\r\n\r\n if (!venueData) {\r\n mainContainer.html(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
No event found
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');\r\n return;\r\n }\r\n\r\n // Populating the Event Title\r\n mainContainer.find(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'.event-detail-title\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\').text(venueData.title);\r\n\r\n // Populating the Event Location\r\n mainContainer.find(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'.event-time-address span\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\').text(venueData.location);\r\n\r\n // Populating the Cover Image\r\n mainContainer.find(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'.event-detail-img-box .swiper-slide .swiper-image\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')\r\n .css(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'background-image\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', `url(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'${venueData.cover_photo.url}\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')`)\r\n .attr(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'alt\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', venueData.cover_photo.alt);\r\n\r\n // Populating the \\\\\\\\\\\\\\\"About\\\\\\\\\\\\\\\" Tab Content\r\n mainContainer.find(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'#tab-about .event-des-wrap\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\').html(`${venueData.description}
`);\r\n\r\n // Populating the \\\\\\\\\\\\\\\"Follow\\\\\\\\\\\\\\\" button state\r\n const followButton = mainContainer.find(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'.event-list-btn .btn.bg-dark\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');\r\n if (venueData.is_following) {\r\n followButton.text(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'Following\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');\r\n } else {\r\n followButton.text(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'Follow\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');\r\n }\r\n\r\n // Populating the \\\\\\\\\\\\\\\"Upcoming Events\\\\\\\\\\\\\\\" Tab (if there are any events)\r\n const eventsContainer = mainContainer.find(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'#tab-events .grid.event-listing\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');\r\n eventsContainer.empty(); // Clear any placeholder content\r\n\r\n if (venueData.events.length > 0) {\r\n venueData.events.forEach(event => {\r\n const startDate = new Date(event.start_date);\r\n const endDate = new Date(event.end_date);\r\n\r\n const startMonth = startDate.toLocaleString(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'default\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', {\r\n month: \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'short\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'\r\n });\r\n const startDay = startDate.getDate();\r\n\r\n let endDateString = \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\';\r\n\r\n if (startDate.getDate() !== endDate.getDate()) {\r\n endDateString = `\r\n\r\n
\r\n `\r\n }\r\n\r\n const eventItem = `\r\n \r\n ${endDate.toLocaleString(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'default\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', { month: \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'short\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' })}
\r\n${endDate.getDate()}
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n ${endDateString}\r\n ${startMonth}
\r\n${startDay}
\r\n\r\n
\r\n \r\n `;\r\n eventsContainer.append(eventItem);\r\n });\r\n } else {\r\n eventsContainer.html(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'${event.title}
\r\nStarts ${event.start_date}
\r\n${event.location}
\r\n No upcoming events
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');\r\n }\r\n\r\n // follow button\r\n const is_following = venueData.is_following\r\n\r\n if (is_following) {\r\n mainContainer.find(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'.venue-follow-btn\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\').text(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'Following\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\')\r\n }\r\n\r\n mainContainer.find(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'.venue-follow-btn\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\').on(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'click\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', async function () {\r\n const followButton = $(this);\r\n const isFollowing = followButton.text() === \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'Following\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\';\r\n\r\n // change the button text\r\n followButton.text(isFollowing ? \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'Follow\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' : \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'Following\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');\r\n const response = await maybeFollowVenue(venueId)\r\n });\r\n})\r\n\r\n$(document).on(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'click\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'#copy-venue-link\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', function () {\r\n const venueId = $(this).attr(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'data-venue-id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');\r\n const eventLink = `${window.location.origin}/discover-view-venue/${venueId}`;\r\n\r\n navigator.clipboard.writeText(eventLink);\r\n\r\n app.toast.create({\r\n text: \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'Link copied to clipboard\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\',\r\n closeTimeout: 2000\r\n }).open()\r\n});\r\n\r\n// #share-email-venue-link click event\r\n$(document).on(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'click\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'#share-email-venue-link\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\', function () {\r\n const venueId = $(this).attr(\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'data-venue-id\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\');\r\n const eventLink = `${window.location.origin}/discover-view-venue/${venueId}`;\r\n\r\n window.open(`mailto:?subject=Check out this venue&body=${eventLink}`);\r\n});');