diff --git a/ipi-survey-platform/src/pages/Admin/configuration/CompanyProfile.jsx b/ipi-survey-platform/src/pages/Admin/configuration/CompanyProfile.jsx index 6db8f5b..230f7cd 100644 --- a/ipi-survey-platform/src/pages/Admin/configuration/CompanyProfile.jsx +++ b/ipi-survey-platform/src/pages/Admin/configuration/CompanyProfile.jsx @@ -854,24 +854,34 @@ const CompanyProfile = () => { }; const handleFileChange = async (e) => { - if (e.target.files && e.target.files[0]) { - const selectedFile = e.target.files[0]; - - try { - setImportError(''); - setValidationResults(null); - - const validation = await validateFile(selectedFile); - setFile(selectedFile); - setValidationResults(validation); - - } catch (error) { - setImportError(error.message); - setFile(null); - setValidationResults(null); - } + const fileInput = e.target; + + if (fileInput.files && fileInput.files[0]) { + const selectedFile = fileInput.files[0]; + + try { + // Reset UI states + setImportError(''); + setValidationResults(null); + + // Validate new file + const validation = await validateFile(selectedFile); + + // Save new file + validation + setFile(selectedFile); + setValidationResults(validation); + + } catch (error) { + setImportError(error.message); + setFile(null); + setValidationResults(null); + } finally { + // IMPORTANT: Reset file input so re-upload works even with same file name + fileInput.value = null; } - }; + } +}; + const handleDrop = async (e) => { e.preventDefault();