var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; import { getEvent, getMyAccount, unhideElementById } from './generalUseHelpers.js'; const queryString = window.location.search; const urlParams = new URLSearchParams(queryString); const eventId = urlParams.get('event'); function modifyEvent() { return __awaiter(this, void 0, void 0, function* () { // Pobieranie danych z formularza const title = document.getElementById('title').value; const location = document.getElementById('location').value; const description = document.getElementById('description').value; const imageURL = document.getElementById('imageURL').value; const eventDateRaw = document.getElementById('eventDate').value; // Walidacja prostych pól if (!title || !location || !eventDateRaw) { alert("Please fill out all of the required fields!"); return; } const eventDate = new Date(eventDateRaw).toISOString(); const payload = { title, location, imageURL, description, eventDate, }; try { const response = yield fetch('/api/events/' + eventId, { method: 'PUT', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(payload) }); if (!response.ok) { const errorText = yield response.text(); throw new Error(errorText); } alert("Event modified!"); window.location.href = "/"; // Przekierowanie do strony głównej } catch (error) { console.error("Error occurred while trying to modify event:", error); alert("Couldn't modify event, an error occurred: " + error); } }); } document.addEventListener("DOMContentLoaded", () => __awaiter(void 0, void 0, void 0, function* () { var container = document.getElementById("mainContainer"); const saveBtn = document.getElementById("saveBtn"); try { var user = yield getMyAccount(); if (user) { if (user.isOrganisation) { unhideElementById(document, "mainContainer"); } unhideElementById(document, "logout-btn"); } } catch (_a) { unhideElementById(document, "joinnow-btn"); unhideElementById(document, "signin-btn"); } if (saveBtn) { saveBtn.addEventListener("click", (e) => { e.preventDefault(); modifyEvent(); }); } if (eventId !== null && container !== null) { try { const titleInput = document.getElementById('title'); const locationInput = document.getElementById('location'); const descriptionInput = document.getElementById('description'); const dateInput = document.getElementById('eventDate'); const imageInput = document.getElementById('imageURL'); var ev = yield getEvent(eventId); if (ev === null) { container.innerHTML = "

Failed to load event data.

"; return; } else { titleInput.value = ev.title || ''; locationInput.value = ev.location || ''; descriptionInput.value = ev.description || ''; dateInput.value = ev.eventDate.slice(0, 16) || ''; imageInput.value = ev.imageURL || ''; } } catch (err) { console.log(err); container.innerHTML = `

` + err + `

`; } } }));