diff --git a/frontend/www/scripts/exercise.js b/frontend/www/scripts/exercise.js
index 7671d258a6282fe41a4b32d82e9fd0fb7adbcbcc..2ea49bb0e62f7728677d371123d2890410d6120b 100644
--- a/frontend/www/scripts/exercise.js
+++ b/frontend/www/scripts/exercise.js
@@ -11,7 +11,8 @@ const CALORIES = "calories";
 const MUSCLE_GROUP = "muscleGroup";
 const UNIT = "unit";
 
-const validTypes = ["Legs", "Chest", "Back", "Arms", "Abdomen", "Shoulders"];
+        this.type = this.validTypes.includes(type) ? type : undefined;
+    }
 
 const deleteFormData = () => {
     oldFormData.delete(NAME);
@@ -22,6 +23,19 @@ 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", "")
@@ -42,6 +56,13 @@ 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() {
@@ -114,7 +135,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;
@@ -122,10 +143,6 @@ 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);
@@ -148,14 +165,12 @@ 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();
@@ -179,7 +194,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");
 
@@ -189,4 +204,4 @@ window.addEventListener("DOMContentLoaded", async () => {
 
     okButton.addEventListener("click", async () => createExercise());
     cancelButton.addEventListener("click", handleCancelButtonDuringCreate);
-});
+});
\ No newline at end of file