diff --git a/electron/main/renderer.js b/electron/main/renderer.js index ad684ef..1bf23ea 100644 --- a/electron/main/renderer.js +++ b/electron/main/renderer.js @@ -16,15 +16,21 @@ uploadContainer.addEventListener("drop", (e) => { e.preventDefault() const files = e.dataTransfer.files const filePath = window.explorer.onFileDrop(files[0]) - var holdy = filePath + ""; - if(holdy.endsWith(".mp4") || holdy.endsWith(".mov") || holdy.endsWith(".avi") || holdy.endsWith( ".mkv")){ - console.log(filePath) + var holdy = String(filePath); + const lower = holdy.toLowerCase(); + const validExt = [".mp4", ".mov", ".avi", ".mkv"]; + + if(validExt.some(ext => lower.endsWith(ext))){ + console.log(filePath); const files1 = e.dataTransfer.files; handleFiles(files1); + }else{ + console.log('Video format invalid!'); } } catch (error) { console.log("Error in renderer.js with the listerner for the drop function"); + console.log(error); } diff --git a/electron/main/script.js b/electron/main/script.js index b947cdb..fac9960 100644 --- a/electron/main/script.js +++ b/electron/main/script.js @@ -6,7 +6,7 @@ manualUploadBtn.addEventListener('click', () => { } catch (error) { console.log("Error in manualBtn EventListener click"); } - + }); //function to check if one checkbox is at least klicked @@ -15,18 +15,24 @@ function checkBoxes() { const checkboxes = document.querySelectorAll('input[name="docFormat"]'); let isChecked = false; - checkboxes.forEach(function(checkbox){ - if(checkbox.checked){ + checkboxes.forEach(function (checkbox) { + if (checkbox.checked) { isChecked = true; } }); - if(isChecked){ + if (isChecked) { //Code to submit the video var pathTest = window.electronAPI.getFilePath(videoUpload.files[0]); - if(pathTest.endsWith(".mp4") || holdy.endsWith(".mov") || holdy.endsWith(".avi") || holdy.endsWith( ".mkv")){ - window.extractor.extract({inputVideoPath: pathTest, outputType:"wav"}) + + const lower = pathTest.toLowerCase(); + const validExt = [".mp4", ".mov", ".avi", ".mkv"]; + + if(validExt.some(ext => lower.endsWith(ext))){ + window.extractor.extract({ inputVideoPath: pathTest, outputType: "wav" }); } + + } else { //language only english at the moment alert('Please select at least one document type.'); @@ -34,43 +40,43 @@ function checkBoxes() { } catch (error) { console.log(error) } - -// mapFunctions.get("extraction-video-to-audio").function({inputVideoPath:"./a.mp4", outputType:"wav"}) + + // mapFunctions.get("extraction-video-to-audio").function({inputVideoPath:"./a.mp4", outputType:"wav"}) } //language changing feature function changeLanguage(language) { - if (language === 'en') { - document.getElementById('title').textContent = 'Video to document'; - document.getElementById('h1').textContent = 'Video to document'; - document.getElementById('p1').textContent = 'Drag and drop video file'; - document.getElementById('fileName').textContent = 'No video chosen'; - document.getElementById('manualUploadBtn').textContent = 'Search video'; - document.getElementById('checkbox_group').textContent = 'Choose prefered document style:'; - document.getElementById('label_format').textContent = 'Meeting report'; - document.getElementById('label_summary').textContent = 'Summary with timestamps'; - document.getElementById('submitButton').textContent = 'Submit'; - } else if (language === 'de') { - document.getElementById('title').textContent = 'Video zu Dokument'; - document.getElementById('h1').textContent = 'Video zu Dokument'; - document.getElementById('p1').textContent = 'Video per Drag & Drop ablegen'; - document.getElementById('fileName').textContent = 'Kein Video ausgewaehlt'; - document.getElementById('manualUploadBtn').textContent = 'Video suchen'; - document.getElementById('checkbox_group').textContent = 'Bevorzugte Dokumentvarianten:'; - document.getElementById('label_format').textContent = 'Meeting Bericht'; - document.getElementById('label_summary').textContent = 'Zusammenfassung mit Zeitstempeln'; - document.getElementById('submitButton').textContent = 'Absenden'; - } else if(language == "in") { - document.getElementById('title').textContent = 'दस्तावेज़ के लिए वीडियो'; - document.getElementById('h1').textContent = 'दस्तावेज़ के लिए वीडियो'; - document.getElementById('p1').textContent = 'वीडियो फ़ाइल खींचें और छोड़ें'; - document.getElementById('fileName').textContent = 'कोई वीडियो नहीं चुना गया'; - document.getElementById('manualUploadBtn').textContent = 'वीडियो खोजें'; - document.getElementById('checkbox_group').textContent = 'पसंदीदा दस्तावेज़ शैली चुनें:'; - document.getElementById('label_format').textContent = 'बैठक रिपोर्ट'; - document.getElementById('label_summary').textContent = 'टाइमस्टैम्प के साथ सारांश'; - document.getElementById('submitButton').textContent = 'जमा करना'; - } + if (language === 'en') { + document.getElementById('title').textContent = 'Video to document'; + document.getElementById('h1').textContent = 'Video to document'; + document.getElementById('p1').textContent = 'Drag and drop video file'; + document.getElementById('fileName').textContent = 'No video chosen'; + document.getElementById('manualUploadBtn').textContent = 'Search video'; + document.getElementById('checkbox_group').textContent = 'Choose prefered document style:'; + document.getElementById('label_format').textContent = 'Meeting report'; + document.getElementById('label_summary').textContent = 'Summary with timestamps'; + document.getElementById('submitButton').textContent = 'Submit'; + } else if (language === 'de') { + document.getElementById('title').textContent = 'Video zu Dokument'; + document.getElementById('h1').textContent = 'Video zu Dokument'; + document.getElementById('p1').textContent = 'Video per Drag & Drop ablegen'; + document.getElementById('fileName').textContent = 'Kein Video ausgewaehlt'; + document.getElementById('manualUploadBtn').textContent = 'Video suchen'; + document.getElementById('checkbox_group').textContent = 'Bevorzugte Dokumentvarianten:'; + document.getElementById('label_format').textContent = 'Meeting Bericht'; + document.getElementById('label_summary').textContent = 'Zusammenfassung mit Zeitstempeln'; + document.getElementById('submitButton').textContent = 'Absenden'; + } else if (language == "in") { + document.getElementById('title').textContent = 'दस्तावेज़ के लिए वीडियो'; + document.getElementById('h1').textContent = 'दस्तावेज़ के लिए वीडियो'; + document.getElementById('p1').textContent = 'वीडियो फ़ाइल खींचें और छोड़ें'; + document.getElementById('fileName').textContent = 'कोई वीडियो नहीं चुना गया'; + document.getElementById('manualUploadBtn').textContent = 'वीडियो खोजें'; + document.getElementById('checkbox_group').textContent = 'पसंदीदा दस्तावेज़ शैली चुनें:'; + document.getElementById('label_format').textContent = 'बैठक रिपोर्ट'; + document.getElementById('label_summary').textContent = 'टाइमस्टैम्प के साथ सारांश'; + document.getElementById('submitButton').textContent = 'जमा करना'; + } } @@ -81,7 +87,7 @@ videoUpload.addEventListener('change', () => { } catch (error) { console.log("Error in manualBtn EventListener change"); } - + }); @@ -99,11 +105,11 @@ function handleFiles(files) { } catch (error) { console.log("Error in script.js handleFiles function"); } - + } //function to regulate the progress on the progressbar -function updateProgressBar(bar, value){ +function updateProgressBar(bar, value) { try { value = Math.round(value); bar.querySelector(".progress_fill").style.width = `${value}%`; @@ -111,5 +117,5 @@ function updateProgressBar(bar, value){ } catch (error) { console.log("Error in scripts.js updateProgressBar function"); } - + } \ No newline at end of file