diff --git a/frontend/www/scripts/exercise.js b/frontend/www/scripts/exercise.js index 2ea49bb0e62f7728677d371123d2890410d6120b..7671d258a6282fe41a4b32d82e9fd0fb7adbcbcc 100644 --- a/frontend/www/scripts/exercise.js +++ b/frontend/www/scripts/exercise.js @@ -11,8 +11,7 @@ const CALORIES = "calories"; const MUSCLE_GROUP = "muscleGroup"; const UNIT = "unit"; - this.type = this.validTypes.includes(type) ? type : undefined; - } +const validTypes = ["Legs", "Chest", "Back", "Arms", "Abdomen", "Shoulders"]; const deleteFormData = () => { oldFormData.delete(NAME); @@ -23,19 +22,6 @@ const deleteFormData = () => { oldFormData.delete(UNIT); } - } - - getMuscleGroupType = () => { - return this.type; - } -} - -const NAME = "name"; -const DESCRIPTION = "description"; -const DURATION = "duration"; -const CALORIES = "calories"; -const MUSCLEGROUP = "muscleGroup"; -const UNIT = "unit"; function handleCancelButtonDuringEdit() { setReadOnly(true, "#form-exercise"); document.querySelector("select").setAttribute("disabled", "") @@ -56,13 +42,6 @@ function handleCancelButtonDuringEdit() { deleteFormData(); -function deleteFormData() { - oldFormData.delete(NAME); - oldFormData.delete(DESCRIPTION); - oldFormData.delete(DURATION); - oldFormData.delete(CALORIES); - oldFormData.delete(MUSCLEGROUP); - oldFormData.delete(UNIT); } function handleCancelButtonDuringCreate() { @@ -135,7 +114,7 @@ async function retrieveExercise(id) { const formData = new FormData(form); for (const key of formData.keys()) { - const selector = key !== MUSCLEGROUP ? `input[name="${key}"], textarea[name="${key}"]` : `select[name=${key}]` + const selector = key !== "muscleGroup" ? `input[name="${key}"], textarea[name="${key}"]` : `select[name=${key}]` const input = form.querySelector(selector); const newVal = exerciseData[key]; input.value = newVal; @@ -143,6 +122,10 @@ async function retrieveExercise(id) { document.querySelector("select").setAttribute("disabled", "") } +const getMuscleGroupType = (type) => { + return validTypes.includes(type) ? type : undefined; +} + async function updateExercise(id) { const form = document.querySelector("#form-exercise"); const formData = new FormData(form); @@ -165,12 +148,14 @@ async function updateExercise(id) { return; } muscleGroupSelector.setAttribute("disabled", "") + // duplicate code from handleCancelButtonDuringEdit + // you should refactor this setReadOnly(true, "#form-exercise"); okButton.className += " hide"; deleteButton.className += " hide"; cancelButton.className += " hide"; editButton.className = editButton.className.replace(" hide", ""); - + cancelButton.removeEventListener("click", handleCancelButtonDuringEdit); deleteFormData(); @@ -194,7 +179,7 @@ window.addEventListener("DOMContentLoaded", async () => { deleteButton.addEventListener("click", (async (id) => deleteExercise(id)).bind(undefined, exerciseId)); okButton.addEventListener("click", (async (id) => updateExercise(id)).bind(undefined, exerciseId)); return; - } + } //create setReadOnly(false, "#form-exercise"); @@ -204,4 +189,4 @@ window.addEventListener("DOMContentLoaded", async () => { okButton.addEventListener("click", async () => createExercise()); cancelButton.addEventListener("click", handleCancelButtonDuringCreate); -}); \ No newline at end of file +});