stop spinner on fail + prettier

This commit is contained in:
Constantin Simonis 2025-01-30 19:20:29 +01:00
parent cb297074d2
commit 6c38cf774c
Signed by: csimonis
GPG Key ID: 3878FF77C24AF4D2
3 changed files with 25 additions and 23 deletions

View File

@ -2,7 +2,7 @@ import { Controller } from "@hotwired/stimulus";
import { loadStripe } from "@stripe/stripe-js"; import { loadStripe } from "@stripe/stripe-js";
export default class extends Controller { export default class extends Controller {
static targets = ['key', 'submit', 'firstname', 'lastname', 'email', 'phone']; static targets = ["key", "submit", "firstname", "lastname", "email", "phone"];
stripe; stripe;
@ -36,8 +36,8 @@ export default class extends Controller {
submit(event) { submit(event) {
event.preventDefault(); event.preventDefault();
this.submitTarget.querySelector('span').remove(); this.submitTarget.querySelector("span").classList.add("hidden");
this.submitTarget.querySelector('svg').classList.remove('hidden'); this.submitTarget.querySelector("svg").classList.remove("hidden");
const forms = document.querySelectorAll("form"); const forms = document.querySelectorAll("form");
const personalData = this.getPersonalData(); const personalData = this.getPersonalData();
@ -46,7 +46,7 @@ export default class extends Controller {
const formData = { const formData = {
personal: personalData, personal: personalData,
tickets: ticketData, tickets: ticketData,
} };
fetch("/ticket/submit", { fetch("/ticket/submit", {
method: "POST", method: "POST",
@ -56,6 +56,8 @@ export default class extends Controller {
}, },
}).then((response) => { }).then((response) => {
if (!response.ok) { if (!response.ok) {
this.submitTarget.querySelector("svg").classList.add("hidden");
this.submitTarget.querySelector("span").classList.remove("hidden");
alert("An error occurred"); alert("An error occurred");
} else { } else {
response.json().then((data) => { response.json().then((data) => {
@ -90,6 +92,6 @@ export default class extends Controller {
ticket: parseInt(form.querySelector('select[name="ticket"]').value), ticket: parseInt(form.querySelector('select[name="ticket"]').value),
food: parseInt(form.querySelector('select[name="food"]').value), food: parseInt(form.querySelector('select[name="food"]').value),
note: form.querySelector('input[name="note"]').value, note: form.querySelector('input[name="note"]').value,
} };
} }
} }