const newReleaseBtn = document.getElementById("create-release");
const newArtistBtn = document.getElementById("create-artist");
const newTrackBtn = document.getElementById("create-track");

newReleaseBtn.addEventListener("click", event => {
    event.preventDefault();
    const id = prompt("Enter an ID for this release:");
    if (id == null || id == "") return;

    fetch("/api/v1/music", {
        method: "POST",
        headers: { "Content-Type": "application/json" },
        body: JSON.stringify({id})
    }).then(res => {
        if (res.ok) location = "/admin/release/" + id;
        else {
            res.text().then(err => {
                alert("Request failed: " + err);
                console.error(err);
            });
        }
    }).catch(err => {
        alert("Failed to create release. Check the console for details.");
        console.error(err);
    });
});

newArtistBtn.addEventListener("click", event => {
    event.preventDefault();
    const id = prompt("Enter an ID for this artist:");
    if (id == null || id == "") return;

    fetch("/api/v1/artist", {
        method: "POST",
        headers: { "Content-Type": "application/json" },
        body: JSON.stringify({id})
    }).then(res => {
        res.text().then(text => {
            if (res.ok) {
                location = "/admin/artist/" + id;
            } else {
                alert("Request failed: " + text);
                console.error(text);
            }
        })
    }).catch(err => {
        alert("Failed to create artist. Check the console for details.");
        console.error(err);
    });
});

newTrackBtn.addEventListener("click", event => {
    event.preventDefault();
    const title = prompt("Enter an title for this track:");
    if (title == null || title == "") return;

    fetch("/api/v1/track", {
        method: "POST",
        headers: { "Content-Type": "application/json" },
        body: JSON.stringify({title})
    }).then(res => {
        res.text().then(text => {
            if (res.ok) {
                location = "/admin/track/" + text;
            } else {
                alert("Request failed: " + text);
                console.error(text);
            }
        })
    }).catch(err => {
        alert("Failed to create track. Check the console for details.");
        console.error(err);
    });
});
