mirror of
https://github.com/GCMatters/hermes.git
synced 2026-02-04 13:40:13 +01:00
Apply to Event
This commit is contained in:
48
WebApp/wwwroot/js/applyToEvent.js
Normal file
48
WebApp/wwwroot/js/applyToEvent.js
Normal file
@@ -0,0 +1,48 @@
|
||||
"use strict";
|
||||
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());
|
||||
});
|
||||
};
|
||||
document.addEventListener("DOMContentLoaded", () => {
|
||||
const applyBtn = document.getElementById("applyBtn");
|
||||
if (!applyBtn)
|
||||
return;
|
||||
const eventId = getEventIdFromURL();
|
||||
if (!eventId) {
|
||||
console.error("Event ID not found.");
|
||||
return;
|
||||
}
|
||||
applyBtn.addEventListener("click", () => __awaiter(void 0, void 0, void 0, function* () {
|
||||
var _a;
|
||||
try {
|
||||
const response = yield fetch(`/api/events/join/${eventId}`, {
|
||||
method: "POST",
|
||||
headers: {
|
||||
"Content-Type": "application/json"
|
||||
},
|
||||
});
|
||||
const result = yield response.json();
|
||||
if (result.success) {
|
||||
applyBtn.disabled = true;
|
||||
applyBtn.textContent = "Applied Succesfully";
|
||||
}
|
||||
else {
|
||||
alert(`Error: ${(_a = result.error_msg) !== null && _a !== void 0 ? _a : "Unknown error occurred."}`);
|
||||
}
|
||||
}
|
||||
catch (error) {
|
||||
console.error("Failed to apply:", error);
|
||||
alert("Failed to apply due to a network or server error.");
|
||||
}
|
||||
}));
|
||||
function getEventIdFromURL() {
|
||||
const params = new URLSearchParams(window.location.search);
|
||||
const idParam = params.get("event");
|
||||
return idParam ? parseInt(idParam, 10) : null;
|
||||
}
|
||||
});
|
||||
Reference in New Issue
Block a user