From 90fa1046415db7cf99f30514833a7ab0cd943ee6 Mon Sep 17 00:00:00 2001 From: Fawwaz Anugrah Wiradhika Dharmasatya <13520086.std.stei.itb.ac.id> Date: Fri, 2 Dec 2022 14:39:01 +0700 Subject: [PATCH] fix: fix cancel and delete button --- View/Pages/EditLagu.php | 14 +-- static/css/form.css | 4 + static/js/editLaguPage.js | 20 ++++ static/js/modifylagu.js | 197 +------------------------------------- 4 files changed, 33 insertions(+), 202 deletions(-) diff --git a/View/Pages/EditLagu.php b/View/Pages/EditLagu.php index 3f1eaa1..a9b9ed7 100644 --- a/View/Pages/EditLagu.php +++ b/View/Pages/EditLagu.php @@ -13,7 +13,7 @@ $this->layout("Templates/PageTemplate", [ ], ]); ?> -<p id="status"><?= $status ?? "" ?></p> +<div id="status_"></div> <div class="container__lagu"> <h1>Edit Lagu</h1> <label for="image">Pilih Gambar: @@ -33,11 +33,13 @@ $this->layout("Templates/PageTemplate", [ <input id="genre" name="genre" type="text" placeholder="<?= $genre ?>"> </label> <p id="duration">Durasi: <?= $duration ?></p> - <?php if (isset($auth) && $auth->is_admin) { - echo <<<XYZ - <button id="edit" type="submit">Edit Lagu</button> - XYZ; - } ?> + <?php if (isset($auth) && $auth->is_admin) { ?> + <div> + <button id="cancel" type="submit">Batalkan</button> + <button id="edit" type="submit">Edit Lagu</button> + <button id="delete" type="submit">Hapus Lagu</button> + </div> + <?php } ?> </div> <input id="songId" type="hidden" name="id" value=<?= $id ?>> \ No newline at end of file diff --git a/static/css/form.css b/static/css/form.css index 45e3b75..922228c 100644 --- a/static/css/form.css +++ b/static/css/form.css @@ -18,4 +18,8 @@ } button{ color: black; +} + +#delete{ + background-color: red; } \ No newline at end of file diff --git a/static/js/editLaguPage.js b/static/js/editLaguPage.js index cba776e..6df8cbe 100644 --- a/static/js/editLaguPage.js +++ b/static/js/editLaguPage.js @@ -1,4 +1,6 @@ const editButton = document.querySelector("#edit") +const cancelButton = document.querySelector("#cancel") +const deleteButton = document.querySelector("#delete") const image = document.querySelector("#image") const audio = document.querySelector("#audio") const title = document.querySelector("#title") @@ -37,4 +39,22 @@ editButton.onclick = async () => { let data = status_update["data"] console.log(status_update) +} +cancelButton.onclick = () => { + window.location = "/lagu/" + document.querySelector("input[name='id'").value +} + +deleteButton.onclick = async (e) => { + let status = await http.delete("/lagu/delete/" + document.querySelector("input[name='id'").value) + console.log(status) + let sta = status["data"]["deleted"] + if (sta === true) { + document.querySelector(".container__lagu").innerHTML = + ` + <h1> Lagu Berhasil Dihapus!</h1> + <a href="/"> + <button id="returnButton"> Kembali ke halaman awal</button> + </a> + ` + } } \ No newline at end of file diff --git a/static/js/modifylagu.js b/static/js/modifylagu.js index c2e720a..212d209 100644 --- a/static/js/modifylagu.js +++ b/static/js/modifylagu.js @@ -1,200 +1,5 @@ const editButton = document.querySelector("button#edit"); const idInput = document.querySelector("#songId") -// const image = document.querySelector("#image") -// const audio = document.querySelector("#audio") -// const title = document.querySelector("#title") -// const singer_name = document.querySelector("#singer_name") -// const release_date = document.querySelector("#release_date") -// const genre = document.querySelector("#genre") -// const imageContainer = document.querySelector("#imageContainer") -// const audioPlayer = document.querySelector("audio") -// const duration = document.querySelector("#duration") -// const content_div = title.parentNode -// let initialData = {} -// let modifiedData = {} editButton.onclick = ()=>{ window.location = `/lagu/${idInput.value}/edit` -} -// function getContent(parent) { -// let text = parent.innerHTML.split(" ") -// parent.innerHTML = text.shift() -// let contentText = "" -// if (text.length > 1) { -// contentText = text.join(" ") -// } -// else if (text.length === 1) { -// contentText = text[0] -// } -// return contentText; -// } -// editButton.onclick = (e) => { -// //edit gambar -// const inputGambar = document.createElement("input") -// inputGambar.type = "file" -// inputGambar.accept = "image/*" -// imageContainer.appendChild(inputGambar) -// let srcc = image.src.split('/') -// for (i = 0; i < 3; i++) { -// srcc.shift() -// } -// initialData["image_path"] = ('/' + srcc.join("/")).replace("%20", " ") -// //edit lagu -// const inputLagu = document.createElement("input") -// inputLagu.accept = "audio/*" -// inputLagu.type = "file" -// audioPlayer.parentNode.insertBefore(inputLagu, audioPlayer.nextSibling) -// srcc = audio.src.split('/') -// for (i = 0; i < 3; i++) { -// srcc.shift() -// } -// initialData["audio_path"] = ('/' + srcc.join("/")).replace("%20", " ") -// //edit judul -// let titleText = getContent(title) -// const ubahJudul = document.createElement("input") -// ubahJudul.type = "text" -// ubahJudul.value = titleText -// title.parentNode.insertBefore(ubahJudul, title.nextSibling) - -// initialData["title"] = titleText - -// //edit tanggal rilis -// let dateText = release_date.getAttribute("data-date-type") -// console.log(dateText) -// const ubahDate = document.createElement("input") -// ubahDate.type = "date" -// ubahDate.value = dateText -// release_date.parentNode.insertBefore(ubahDate, release_date.nextSibling) -// initialData["release_date"] = dateText -// //edit genre -// let genreText = getContent(genre) -// const ubahGenre = document.createElement("input") -// ubahGenre.type = "text" -// ubahGenre.value = genreText -// genre.parentNode.insertBefore(ubahGenre, genre.nextSibling) -// initialData["genre"] = genreText -// //tambahin tombol cancel dan update -// let buttonsList = document.createElement("div") -// buttonsList.id = "list__button" -// duration.parentNode.insertBefore(buttonsList, duration.nextSibling) -// //button cancel -// let cancelButton = document.createElement("button") -// cancelButton.innerText = "Batalkan" -// cancelButton.onclick = (e) => { -// status.innerHTML = '' -// title.innerHTML = title.innerHTML + " " + initialData["title"] -// genre.innerHTML = genre.innerHTML + " " + initialData["genre"] -// //hapus input field -// imageContainer.removeChild(inputGambar) -// audioPlayer.parentNode.removeChild(inputLagu) -// content_div.removeChild(ubahJudul) -// content_div.removeChild(ubahDate) -// content_div.removeChild(ubahGenre) -// //hapus tombol -// buttonsList.innerHTML = '' -// buttonsList.parentNode.removeChild(buttonsList) -// //tampilin lagi edit button -// editButton.style.display = "inline-block" -// } - -// buttonsList.appendChild(cancelButton) -// //button update -// let updateButton = document.createElement("button") -// updateButton.innerText = "Ubah" -// buttonsList.appendChild(updateButton) - -// updateButton.onclick = async (e) => { -// modifiedData["title"] = ubahJudul.value -// modifiedData["release_date"] = ubahDate.value -// modifiedData["genre"] = ubahGenre.value -// modifiedData["id"] = document.querySelector("input[name='id'").value -// modifiedData["audio"] = inputLagu.files[0]; -// modifiedData["image"] = inputGambar.files[0]; - -// console.log(modifiedData) -// //bikin form data -// let formData = new FormData() -// if (modifiedData["title"] !== initialData["title"]) { -// formData.append("title", modifiedData["title"]) -// } -// if (modifiedData["release_date"] !== initialData["release_date"]) { -// formData.append("release_date", modifiedData["release_date"]) -// } -// if (modifiedData["genre"] !== initialData["genre"]) { -// formData.append("genre", modifiedData["genre"]) -// } -// formData.append("id", modifiedData["id"]) -// if (modifiedData["release_date"] !== initialData["release_date"]) { -// formData.append("release_date", modifiedData["release_date"]) -// } -// if (modifiedData["image"] !== null && modifiedData["image"] !== undefined) { -// formData.append("image", modifiedData["image"]) -// } -// if (modifiedData["audio"] !== null && modifiedData["audio"] !== undefined) { -// formData.append("audio", modifiedData["audio"]) -// } -// console.log(formData) -// console.log("/lagu/" + document.querySelector("input[name='id'").value) -// const status_update = await http.post("/lagu/" + document.querySelector("input[name='id'").value, formData, { -// json: false, -// // headers: { -// // "Content-Type": "multipart/form-data" -// // }, -// }); -// let data = status_update["data"] -// console.log(status_update) -// console.log(data) -// //update -// audio.src = data["audio_path"] -// audio.type = data["sound_type"] -// image.src = data["image_path"] -// title.innerHTML = title.innerHTML + " " + data["title"] -// getContent(release_date) -// release_date.innerHTML = "Tanggal Rilis: " + data["release_date"] -// genre.innerHTML = genre.innerHTML + " " + data["genre"] -// release_date.dataset.dateType = data["date"] -// let status_ = document.querySelector("#status") -// status_.innerText = data["status"] -// status_.classList.add("success__added") -// //hapus input field -// imageContainer.removeChild(inputGambar) -// audioPlayer.parentNode.removeChild(inputLagu) -// content_div.removeChild(ubahJudul) -// content_div.removeChild(ubahDate) -// content_div.removeChild(ubahGenre) -// //hapus tombol -// buttonsList.innerHTML = '' -// buttonsList.parentNode.removeChild(buttonsList) -// //tampilin lagi edit button -// editButton.style.display = "inline-block" - -// } -// //button delete -// let deleteButton = document.createElement("button") -// deleteButton.innerText = "Hapus Lagu" -// deleteButton.classList.add("remove__button") -// deleteButton.style.backgroundColor = "red" -// buttonsList.appendChild(deleteButton) -// deleteButton.onclick = async (e) => { -// let status = await http.delete("/lagu/delete/" + document.querySelector("input[name='id'").value) -// console.log(status) -// let sta = status["data"]["deleted"] -// if (sta === true) { -// let contess = document.querySelector(".content") -// contess.innerHTML = ` -// <h1> Lagu Berhasil Dihapus!</h1> -// <a href="/"> -// <button id="returnButton"> Kembali ke halaman awal</button> -// </a> -// ` -// } -// } -// //tulisan kalau lagi di mode edit -// let status = document.querySelector("#status") -// status.innerText = "Edit Lagu" -// imageContainer.parentNode.insertBefore(status, imageContainer) - -// //hapus edit button -// //editButton.parentElement.removeChild(editButton) -// editButton.style.display = "none" -// console.log(initialData) -// } \ No newline at end of file +} \ No newline at end of file -- GitLab