From 6e2a7df44b37bb33120125eb83e9f562c01e58d9 Mon Sep 17 00:00:00 2001
From: irsyadnb <irsyadxd@gmail.com>
Date: Sun, 8 Oct 2023 17:47:20 +0700
Subject: [PATCH] fix: handle invalid input

---
 src/public/js/episode/handle_upload.js      | 10 ++++++----
 src/public/js/episode/handle_upload_edit.js | 10 +++++-----
 2 files changed, 11 insertions(+), 9 deletions(-)

diff --git a/src/public/js/episode/handle_upload.js b/src/public/js/episode/handle_upload.js
index 19747a5..8fbaa77 100644
--- a/src/public/js/episode/handle_upload.js
+++ b/src/public/js/episode/handle_upload.js
@@ -124,13 +124,13 @@ handleFormSubmit("add-episode-form", function () {
       imgFormData.append("filename", fileField.files[0].name);
       imgFormData.append("data", fileField.files[0]);
     } else {
-      imgFormData.append("data", null);
+      imgFormData = null;
     }
 
     try {
       let xhrImg = uploadEpsFile(imgUrl, true, imgFormData);
       xhrImg.onload = () => {
-        const response = JSON.parse(xhrImg.responseText);
+        
         if (xhrImg.status === 200) {
           formData.append("preview-poster-filename", xhrImg.responseText);
 
@@ -144,7 +144,7 @@ handleFormSubmit("add-episode-form", function () {
 
             let xhrAudio = uploadEpsFile(audioUrl, true, audioFormData);
             xhrAudio.onload = () => {
-              const response = JSON.parse(xhrAudio.responseText);
+
               if (xhrAudio.status === 200) {
                 formData.append("audio-filename", xhrAudio.responseText);
 
@@ -160,7 +160,7 @@ handleFormSubmit("add-episode-form", function () {
                           location.replace(response.redirect_url);
                         }, 3000);
                       } else {
-                        showNotificationDanger(response.status_message);
+                        showNotificationDanger(response.error_message);
                       }
                     } else {
                       console.error("Request failed with status:", xhr.status);
@@ -174,6 +174,7 @@ handleFormSubmit("add-episode-form", function () {
                   console.error("Error creating episode:", error);
                 }
               } else {
+                const response = JSON.parse(xhrAudio.responseText);
                 showNotificationDanger(response.error_message);
               }
             };
@@ -181,6 +182,7 @@ handleFormSubmit("add-episode-form", function () {
             console.error("Error uploading audio:", error);
           }
         } else {
+          const response = JSON.parse(xhrImg.responseText);
           showNotificationDanger(response.error_message);
         }
       };
diff --git a/src/public/js/episode/handle_upload_edit.js b/src/public/js/episode/handle_upload_edit.js
index a5a0d14..429b1a4 100644
--- a/src/public/js/episode/handle_upload_edit.js
+++ b/src/public/js/episode/handle_upload_edit.js
@@ -105,7 +105,7 @@ handleFormSubmit("edit-episode-form", function () {
       xhr.onload = () => {
 
         const response = JSON.parse(xhr.responseText);
-        
+
         if (xhr.status === 200) {
           // window.location.href = "/episode";
           if (response.success) {
@@ -114,7 +114,7 @@ handleFormSubmit("edit-episode-form", function () {
               location.replace(response.redirect_url);
             }, 3000);
           } else {
-            showNotificationDanger(response.status_message);
+            showNotificationDanger(response.error_message);
           }
         } else {
           console.error("Request failed with status:", xhr.status);
@@ -157,7 +157,6 @@ handleFormSubmit("edit-episode-form", function () {
         try {
           let xhrImg = uploadEditedEpsFile(imgUrl, true, imgFormData);
           xhrImg.onload = () => {
-            const response = JSON.parse(xhrImg.responseText);
 
             if(xhrImg.status === 200) {
               formData.append(
@@ -166,6 +165,7 @@ handleFormSubmit("edit-episode-form", function () {
               );
               resolve();
             } else {
+              const response = JSON.parse(xhrImg.responseText);
               showNotificationDanger(response.error_message);
             }
           };
@@ -190,12 +190,12 @@ handleFormSubmit("edit-episode-form", function () {
         try {
           let xhrAudio = uploadEditedEpsFile(audioUrl, true, audioFormData);
           xhrAudio.onload = () => {
-            const response = JSON.parse(xhrAudio.responseText);
-            console.log(xhrAudio.responseText);
+            
             if (xhrAudio.status === 200) {
               formData.append("edit-audio-filename", xhrAudio.responseText);
               resolve();
             } else {
+              const response = JSON.parse(xhrAudio.responseText);
               showNotificationDanger(response.error_message);
             }
           };
-- 
GitLab