download_file_ok

This commit is contained in:
Pascal 2024-11-26 16:45:00 +01:00
parent 979f2e56a5
commit fbd635cec6

View File

@ -1073,31 +1073,36 @@ function newRequest(params: RequestParams) {
function handleFiles(files: FileList) {
Array.from(files).forEach(file => {
// Vérifier si le fichier n'est pas déjà dans la liste
const existingFiles = fileList.querySelectorAll('.file-name');
const isDuplicate = Array.from(existingFiles).some(
existingFile => existingFile.textContent === file.name
);
const reader = new FileReader();
reader.onload = (e) => {
const fileContent = e.target?.result;
// Vérifier si le fichier n'est pas déjà dans la liste
const existingFiles = fileList.querySelectorAll('.file-name');
const isDuplicate = Array.from(existingFiles).some(
existingFile => existingFile.textContent === file.name
);
if (!isDuplicate) {
const fileItem = document.createElement('div');
fileItem.className = 'file-item';
fileItem.innerHTML = `
<div class="file-info">
<span class="file-name">${file.name}</span>
<span class="file-size">(${(file.size / 1024).toFixed(1)} KB)</span>
</div>
<button type="button" class="remove-file">×</button>
`;
if (!isDuplicate) {
const fileItem = document.createElement('div');
fileItem.className = 'file-item';
fileItem.innerHTML = `
<div class="file-info">
<span class="file-name">${file.name}</span>
<span class="file-size">(${(file.size / 1024).toFixed(1)} KB)</span>
</div>
<button type="button" class="remove-file">×</button>
`;
fileItem.dataset.content = fileContent as string;
// Ajouter l'événement de suppression
const removeBtn = fileItem.querySelector('.remove-file');
if (removeBtn) {
removeBtn.addEventListener('click', () => fileItem.remove());
const removeBtn = fileItem.querySelector('.remove-file');
if (removeBtn) {
removeBtn.addEventListener('click', () => fileItem.remove());
}
fileList.appendChild(fileItem);
}
fileList.appendChild(fileItem);
}
};
reader.readAsDataURL(file);
});
}
}
@ -1128,7 +1133,7 @@ function submitNewDocument(event: Event) {
const fileName = fileItem.querySelector('.file-name')?.textContent || '';
return {
name: fileName,
url: '#', // URL simulée pour le prototype
url: (fileItem as HTMLElement).dataset.content || '#',
};
});
@ -1263,7 +1268,7 @@ function submitCommonDocument(event: Event) {
const fileName = fileItem.querySelector('.file-name')?.textContent || '';
return {
name: fileName,
url: '#', // URL simulée pour le prototype
url: (fileItem as HTMLElement).dataset.content || '#',
};
});
@ -1575,11 +1580,9 @@ function signDocument(documentId: number, processId: number, isCommonDocument: b
<div class="file-item">
<span class="file-icon">📄</span>
<span class="file-name">${file.name}</span>
${file.url ? `
<a href="${file.url}" class="download-link" target="_blank">
<span class="download-icon"></span>
</a>
` : ''}
<a href="${file.url}" class="download-link" download="${file.name}">
<span class="download-icon"></span>
</a>
</div>
`).join('')
: '<p>Aucun fichier joint</p>'