fix: Uniformisation des Modales et Popup [#35]

This commit is contained in:
Luc SORIGNET
2025-05-17 11:38:26 +02:00
parent c6bc0d0b51
commit f252efdef4
9 changed files with 467 additions and 427 deletions

View File

@ -96,146 +96,143 @@ const FilesModal = ({
{title}
</span>
}
ContentComponent={() => (
<div className="space-y-6">
{/* Section Fiche élève */}
{files.registrationFile && (
<div>
<h3 className="text-lg font-semibold text-gray-800 mb-4">
Fiche élève
</h3>
<div className="flex items-center gap-2">
<FileText className="w-5 h-5 text-gray-500" />
<a
href={files.registrationFile.url}
target="_blank"
rel="noopener noreferrer"
className="text-blue-500 hover:text-blue-700 underline"
>
{files.registrationFile.name}
</a>
</div>
>
<div className="space-y-6">
{/* Section Fiche élève */}
{files.registrationFile && (
<div>
<h3 className="text-lg font-semibold text-gray-800 mb-4">
Fiche élève
</h3>
<div className="flex items-center gap-2">
<FileText className="w-5 h-5 text-gray-500" />
<a
href={files.registrationFile.url}
target="_blank"
rel="noopener noreferrer"
className="text-blue-500 hover:text-blue-700 underline"
>
{files.registrationFile.name}
</a>
</div>
)}
</div>
)}
{/* Section Documents fusionnés */}
{files.fusionFile && (
<div>
<h3 className="text-lg font-semibold text-gray-800 mb-4">
Documents fusionnés
</h3>
<div className="flex items-center gap-2">
<FileText className="w-5 h-5 text-gray-500" />
<a
href={files.fusionFile.url}
target="_blank"
rel="noopener noreferrer"
className="text-blue-500 hover:text-blue-700 underline"
>
{files.fusionFile.name}
</a>
</div>
{/* Section Documents fusionnés */}
{files.fusionFile && (
<div>
<h3 className="text-lg font-semibold text-gray-800 mb-4">
Documents fusionnés
</h3>
<div className="flex items-center gap-2">
<FileText className="w-5 h-5 text-gray-500" />
<a
href={files.fusionFile.url}
target="_blank"
rel="noopener noreferrer"
className="text-blue-500 hover:text-blue-700 underline"
>
{files.fusionFile.name}
</a>
</div>
)}
<hr className="border-t border-gray-300" />
{/* Section Fichiers École */}
<div>
<h3 className="text-lg font-semibold text-gray-800 mb-4">
Formulaires de l&apos;établissement
</h3>
<ul className="space-y-2">
{files.schoolFiles.length > 0 ? (
files.schoolFiles.map((file, index) => (
<li key={index} className="flex items-center gap-2">
<FileText className="w-5 h-5 text-gray-500" />
{file.url ? (
<a
href={file.url}
target="_blank"
rel="noopener noreferrer"
className="text-blue-500 hover:text-blue-700 underline"
>
{file.name}
</a>
) : (
<span className="text-gray-400">
{file.name} (Non disponible)
</span>
)}
</li>
))
) : (
<p className="text-gray-500">
Aucun fichier scolaire disponible.
</p>
)}
</ul>
</div>
)}
<hr className="border-t border-gray-300" />
<hr className="border-t border-gray-300" />
{/* Section Fichiers Parent */}
<div>
<h3 className="text-lg font-semibold text-gray-800 mb-4">
Pièces fournies
</h3>
<ul className="space-y-2">
{files.parentFiles.length > 0 ? (
files.parentFiles.map((file, index) => (
<li key={index} className="flex items-center gap-2">
<FileText className="w-5 h-5 text-gray-500" />
{file.url ? (
<a
href={file.url}
target="_blank"
rel="noopener noreferrer"
className="text-blue-500 hover:text-blue-700 underline"
>
{file.name}
</a>
) : (
<span className="text-gray-400">
{file.name} (Non disponible)
</span>
)}
</li>
))
) : (
<p className="text-gray-500">
Aucun fichier parent disponible.
</p>
)}
</ul>
</div>
<hr className="border-t border-gray-300" />
{/* Section Mandat SEPA */}
<div>
<h3 className="text-lg font-semibold text-gray-800 mb-4">
Mandat SEPA
</h3>
{files.sepaFile ? (
<div className="flex items-center gap-2">
<FileText className="w-5 h-5 text-gray-500" />
<a
href={files.sepaFile.url}
target="_blank"
rel="noopener noreferrer"
className="text-blue-500 hover:text-blue-700 underline"
>
{files.sepaFile.name}
</a>
</div>
{/* Section Fichiers École */}
<div>
<h3 className="text-lg font-semibold text-gray-800 mb-4">
Formulaires de l&apos;établissement
</h3>
<ul className="space-y-2">
{files.schoolFiles.length > 0 ? (
files.schoolFiles.map((file, index) => (
<li key={index} className="flex items-center gap-2">
<FileText className="w-5 h-5 text-gray-500" />
{file.url ? (
<a
href={file.url}
target="_blank"
rel="noopener noreferrer"
className="text-blue-500 hover:text-blue-700 underline"
>
{file.name}
</a>
) : (
<span className="text-gray-400">
{file.name} (Non disponible)
</span>
)}
</li>
))
) : (
<p className="text-gray-500">Aucun mandat SEPA disponible.</p>
<p className="text-gray-500">
Aucun fichier scolaire disponible.
</p>
)}
</div>
</ul>
</div>
)}
/>
<hr className="border-t border-gray-300" />
{/* Section Fichiers Parent */}
<div>
<h3 className="text-lg font-semibold text-gray-800 mb-4">
Pièces fournies
</h3>
<ul className="space-y-2">
{files.parentFiles.length > 0 ? (
files.parentFiles.map((file, index) => (
<li key={index} className="flex items-center gap-2">
<FileText className="w-5 h-5 text-gray-500" />
{file.url ? (
<a
href={file.url}
target="_blank"
rel="noopener noreferrer"
className="text-blue-500 hover:text-blue-700 underline"
>
{file.name}
</a>
) : (
<span className="text-gray-400">
{file.name} (Non disponible)
</span>
)}
</li>
))
) : (
<p className="text-gray-500">Aucun fichier parent disponible.</p>
)}
</ul>
</div>
<hr className="border-t border-gray-300" />
{/* Section Mandat SEPA */}
<div>
<h3 className="text-lg font-semibold text-gray-800 mb-4">
Mandat SEPA
</h3>
{files.sepaFile ? (
<div className="flex items-center gap-2">
<FileText className="w-5 h-5 text-gray-500" />
<a
href={files.sepaFile.url}
target="_blank"
rel="noopener noreferrer"
className="text-blue-500 hover:text-blue-700 underline"
>
{files.sepaFile.name}
</a>
</div>
) : (
<p className="text-gray-500">Aucun mandat SEPA disponible.</p>
)}
</div>
</div>
</Modal>
);
};