mirror of
https://git.v0id.ovh/n3wt-innov/n3wt-school.git
synced 2026-01-28 23:43:22 +00:00
fix: remove lint error
This commit is contained in:
@ -154,8 +154,8 @@ export default function DashboardPage() {
|
|||||||
|
|
||||||
<div className="flex flex-wrap">
|
<div className="flex flex-wrap">
|
||||||
{classes.map((classe) => (
|
{classes.map((classe) => (
|
||||||
<div className="lg:col-span-2 bg-white p-6 rounded-lg shadow-sm border border-gray-100 mr-4">
|
<div key={classe.id} className="lg:col-span-2 bg-white p-6 rounded-lg shadow-sm border border-gray-100 mr-4">
|
||||||
<ClasseDetails key={classe.id} classe={classe} />
|
<ClasseDetails classe={classe} />
|
||||||
</div>
|
</div>
|
||||||
))}
|
))}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -7,7 +7,7 @@ export default function NotFound() {
|
|||||||
<div className='text-center p-6 '>
|
<div className='text-center p-6 '>
|
||||||
<Logo className="w-32 h-32 mx-auto mb-4" />
|
<Logo className="w-32 h-32 mx-auto mb-4" />
|
||||||
<h2 className='text-2xl font-bold text-emerald-900 mb-4'>404 | Page non trouvée</h2>
|
<h2 className='text-2xl font-bold text-emerald-900 mb-4'>404 | Page non trouvée</h2>
|
||||||
<p className='text-emerald-900 mb-4'>La ressource que vous souhaitez consulter n'existe pas ou plus.</p>
|
<p className='text-emerald-900 mb-4'>La ressource que vous souhaitez consulter n'existe pas ou plus.</p>
|
||||||
<Link className="text-gray-900 hover:underline" href="/">Retour Accueil</Link>
|
<Link className="text-gray-900 hover:underline" href="/">Retour Accueil</Link>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -75,7 +75,7 @@ const Calendar = ({ onDateClick, onEventClick }) => {
|
|||||||
onClick={() => setCurrentDate(new Date())}
|
onClick={() => setCurrentDate(new Date())}
|
||||||
className="px-3 py-1.5 text-sm font-medium text-gray-700 hover:text-gray-900 bg-gray-100 hover:bg-gray-200 rounded-md transition-colors"
|
className="px-3 py-1.5 text-sm font-medium text-gray-700 hover:text-gray-900 bg-gray-100 hover:bg-gray-200 rounded-md transition-colors"
|
||||||
>
|
>
|
||||||
Aujourd'hui
|
Aujourd'hui
|
||||||
</button>
|
</button>
|
||||||
<button onClick={() => navigateDate('prev')} className="p-2 hover:bg-gray-100 rounded-full">
|
<button onClick={() => navigateDate('prev')} className="p-2 hover:bg-gray-100 rounded-full">
|
||||||
<ChevronLeft className="w-5 h-5" />
|
<ChevronLeft className="w-5 h-5" />
|
||||||
|
|||||||
@ -385,7 +385,7 @@ const InscriptionForm = ( { students, registrationDiscounts, tuitionDiscounts, r
|
|||||||
) : (
|
) : (
|
||||||
<p className="bg-orange-100 border border-orange-400 text-orange-700 px-4 py-3 rounded relative" role="alert">
|
<p className="bg-orange-100 border border-orange-400 text-orange-700 px-4 py-3 rounded relative" role="alert">
|
||||||
<strong className="font-bold">Information</strong>
|
<strong className="font-bold">Information</strong>
|
||||||
<span className="block sm:inline"> Aucune réduction n'a été créée sur les frais d'inscription.</span>
|
<span className="block sm:inline"> Aucune réduction n'a été créée sur les frais d'inscription.</span>
|
||||||
</p>
|
</p>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
@ -408,7 +408,7 @@ const InscriptionForm = ( { students, registrationDiscounts, tuitionDiscounts, r
|
|||||||
) : (
|
) : (
|
||||||
<p className="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative" role="alert">
|
<p className="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative" role="alert">
|
||||||
<strong className="font-bold">Attention!</strong>
|
<strong className="font-bold">Attention!</strong>
|
||||||
<span className="block sm:inline"> Aucun frais d'inscription n'a été créé.</span>
|
<span className="block sm:inline"> Aucun frais d'inscription n'a été créé.</span>
|
||||||
</p>
|
</p>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
@ -440,7 +440,7 @@ const InscriptionForm = ( { students, registrationDiscounts, tuitionDiscounts, r
|
|||||||
) : (
|
) : (
|
||||||
<p className="bg-orange-100 border border-orange-400 text-orange-700 px-4 py-3 rounded relative" role="alert">
|
<p className="bg-orange-100 border border-orange-400 text-orange-700 px-4 py-3 rounded relative" role="alert">
|
||||||
<strong className="font-bold">Information</strong>
|
<strong className="font-bold">Information</strong>
|
||||||
<span className="block sm:inline"> Aucune réduction n'a été créée sur les frais de scolarité.</span>
|
<span className="block sm:inline"> Aucune réduction n'a été créée sur les frais de scolarité.</span>
|
||||||
</p>
|
</p>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
@ -463,7 +463,7 @@ const InscriptionForm = ( { students, registrationDiscounts, tuitionDiscounts, r
|
|||||||
) : (
|
) : (
|
||||||
<p className="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative" role="alert">
|
<p className="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative" role="alert">
|
||||||
<strong className="font-bold">Attention!</strong>
|
<strong className="font-bold">Attention!</strong>
|
||||||
<span className="block sm:inline"> Aucun frais de scolarité n'a été créé.</span>
|
<span className="block sm:inline"> Aucun frais de scolarité n'a été créé.</span>
|
||||||
</p>
|
</p>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
@ -501,7 +501,7 @@ const InscriptionForm = ( { students, registrationDiscounts, tuitionDiscounts, r
|
|||||||
) : (
|
) : (
|
||||||
<p className="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative" role="alert">
|
<p className="bg-red-100 border border-red-400 text-red-700 px-4 py-3 rounded relative" role="alert">
|
||||||
<strong className="font-bold">Attention!</strong>
|
<strong className="font-bold">Attention!</strong>
|
||||||
<span className="block sm:inline"> Aucun groupe de documents n'a été créé.</span>
|
<span className="block sm:inline"> Aucun groupe de documents n'a été créé.</span>
|
||||||
</p>
|
</p>
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -249,7 +249,7 @@ export default function InscriptionFormShared({
|
|||||||
<DjangoCSRFToken csrfToken={csrfToken}/>
|
<DjangoCSRFToken csrfToken={csrfToken}/>
|
||||||
{/* Section Élève */}
|
{/* Section Élève */}
|
||||||
<div className="bg-white p-6 rounded-lg shadow-sm border border-gray-200">
|
<div className="bg-white p-6 rounded-lg shadow-sm border border-gray-200">
|
||||||
<h2 className="text-xl font-bold mb-4 text-gray-800">Informations de l'élève</h2>
|
<h2 className="text-xl font-bold mb-4 text-gray-800">Informations de l'élève</h2>
|
||||||
<div className="grid grid-cols-1 md:grid-cols-2 gap-4">
|
<div className="grid grid-cols-1 md:grid-cols-2 gap-4">
|
||||||
<InputText
|
<InputText
|
||||||
name="last_name"
|
name="last_name"
|
||||||
|
|||||||
@ -10,7 +10,7 @@ export default function RegistrationFileGroupList() {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<div>
|
<div>
|
||||||
<h2>Groupes de fichiers d'inscription</h2>
|
<h2>Groupes de fichiers d'inscription</h2>
|
||||||
<ul>
|
<ul>
|
||||||
{groups.map(group => (
|
{groups.map(group => (
|
||||||
<li key={group.id}>{group.name}</li>
|
<li key={group.id}>{group.name}</li>
|
||||||
|
|||||||
@ -7,7 +7,8 @@ import SelectChoice from '@/components/SelectChoice';
|
|||||||
import TeacherItem from '@/components/Structure/Configuration/TeacherItem';
|
import TeacherItem from '@/components/Structure/Configuration/TeacherItem';
|
||||||
import MultiSelect from '@/components/MultiSelect';
|
import MultiSelect from '@/components/MultiSelect';
|
||||||
import LevelLabel from '@/components/CustomLabels/LevelLabel';
|
import LevelLabel from '@/components/CustomLabels/LevelLabel';
|
||||||
import { DndProvider, HTML5Backend, useDrop } from 'react-dnd';
|
import { DndProvider, useDrop } from 'react-dnd';
|
||||||
|
import { HTML5Backend } from 'react-dnd-html5-backend';
|
||||||
import { ESTABLISHMENT_ID } from '@/utils/Url';
|
import { ESTABLISHMENT_ID } from '@/utils/Url';
|
||||||
|
|
||||||
const ItemTypes = {
|
const ItemTypes = {
|
||||||
@ -105,20 +106,20 @@ const ClassesSection = ({ classes, setClasses, teachers, handleCreate, handleEdi
|
|||||||
{ id: 3, name: 'MS', age: 4 },
|
{ id: 3, name: 'MS', age: 4 },
|
||||||
{ id: 4, name: 'GS', age: 5 },
|
{ id: 4, name: 'GS', age: 5 },
|
||||||
];
|
];
|
||||||
|
|
||||||
const niveauxSecondCycle = [
|
const niveauxSecondCycle = [
|
||||||
{ id: 5, name: 'CP', age: 6 },
|
{ id: 5, name: 'CP', age: 6 },
|
||||||
{ id: 6, name: 'CE1', age: 7 },
|
{ id: 6, name: 'CE1', age: 7 },
|
||||||
{ id: 7, name: 'CE2', age: 8 },
|
{ id: 7, name: 'CE2', age: 8 },
|
||||||
];
|
];
|
||||||
|
|
||||||
const niveauxTroisiemeCycle = [
|
const niveauxTroisiemeCycle = [
|
||||||
{ id: 8, name: 'CM1', age: 9 },
|
{ id: 8, name: 'CM1', age: 9 },
|
||||||
{ id: 9, name: 'CM2', age: 10 },
|
{ id: 9, name: 'CM2', age: 10 },
|
||||||
];
|
];
|
||||||
|
|
||||||
const allNiveaux = [...niveauxPremierCycle, ...niveauxSecondCycle, ...niveauxTroisiemeCycle];
|
const allNiveaux = [...niveauxPremierCycle, ...niveauxSecondCycle, ...niveauxTroisiemeCycle];
|
||||||
|
|
||||||
const getNiveauxLabels = (levels) => {
|
const getNiveauxLabels = (levels) => {
|
||||||
return levels.map(niveauId => {
|
return levels.map(niveauId => {
|
||||||
const niveau = allNiveaux.find(n => n.id === niveauId);
|
const niveau = allNiveaux.find(n => n.id === niveauId);
|
||||||
@ -131,10 +132,10 @@ const ClassesSection = ({ classes, setClasses, teachers, handleCreate, handleEdi
|
|||||||
const currentDate = new Date();
|
const currentDate = new Date();
|
||||||
const currentYear = currentDate.getFullYear();
|
const currentYear = currentDate.getFullYear();
|
||||||
const currentMonth = currentDate.getMonth() + 1; // Les mois sont indexés à partir de 0
|
const currentMonth = currentDate.getMonth() + 1; // Les mois sont indexés à partir de 0
|
||||||
|
|
||||||
// Si nous sommes avant septembre, l'année scolaire en cours a commencé l'année précédente
|
// Si nous sommes avant septembre, l'année scolaire en cours a commencé l'année précédente
|
||||||
const startYear = currentMonth >= 9 ? currentYear : currentYear - 1;
|
const startYear = currentMonth >= 9 ? currentYear : currentYear - 1;
|
||||||
|
|
||||||
const choices = [];
|
const choices = [];
|
||||||
for (let i = 0; i < 3; i++) {
|
for (let i = 0; i < 3; i++) {
|
||||||
const year = startYear + i;
|
const year = startYear + i;
|
||||||
@ -232,7 +233,7 @@ const ClassesSection = ({ classes, setClasses, teachers, handleCreate, handleEdi
|
|||||||
|
|
||||||
const handleMultiSelectChange = (selectedOptions) => {
|
const handleMultiSelectChange = (selectedOptions) => {
|
||||||
const levels = selectedOptions.map(option => option.id);
|
const levels = selectedOptions.map(option => option.id);
|
||||||
|
|
||||||
if (editingClass) {
|
if (editingClass) {
|
||||||
setFormData((prevData) => ({
|
setFormData((prevData) => ({
|
||||||
...prevData,
|
...prevData,
|
||||||
@ -348,7 +349,7 @@ const ClassesSection = ({ classes, setClasses, teachers, handleCreate, handleEdi
|
|||||||
const levelLabels = Array.isArray(classe.levels) ? getNiveauxLabels(classe.levels) : [];
|
const levelLabels = Array.isArray(classe.levels) ? getNiveauxLabels(classe.levels) : [];
|
||||||
return (
|
return (
|
||||||
<div className="flex flex-wrap justify-center items-center space-x-2">
|
<div className="flex flex-wrap justify-center items-center space-x-2">
|
||||||
{levelLabels.length > 0
|
{levelLabels.length > 0
|
||||||
? levelLabels.map((label, index) => (
|
? levelLabels.map((label, index) => (
|
||||||
<LevelLabel key={index} label={label} index={index} />
|
<LevelLabel key={index} label={label} index={index} />
|
||||||
))
|
))
|
||||||
|
|||||||
@ -6,14 +6,14 @@ import PaymentModeSelector from '@/components/PaymentModeSelector';
|
|||||||
import { BE_SCHOOL_FEES_URL, BE_SCHOOL_DISCOUNTS_URL, BE_SCHOOL_PAYMENT_PLANS_URL, BE_SCHOOL_PAYMENT_MODES_URL } from '@/utils/Url';
|
import { BE_SCHOOL_FEES_URL, BE_SCHOOL_DISCOUNTS_URL, BE_SCHOOL_PAYMENT_PLANS_URL, BE_SCHOOL_PAYMENT_MODES_URL } from '@/utils/Url';
|
||||||
import { set } from 'lodash';
|
import { set } from 'lodash';
|
||||||
|
|
||||||
const FeesManagement = ({ registrationDiscounts,
|
const FeesManagement = ({ registrationDiscounts,
|
||||||
setRegistrationDiscounts,
|
setRegistrationDiscounts,
|
||||||
tuitionDiscounts,
|
tuitionDiscounts,
|
||||||
setTuitionDiscounts,
|
setTuitionDiscounts,
|
||||||
registrationFees,
|
registrationFees,
|
||||||
setRegistrationFees,
|
setRegistrationFees,
|
||||||
tuitionFees,
|
tuitionFees,
|
||||||
setTuitionFees,
|
setTuitionFees,
|
||||||
registrationPaymentPlans,
|
registrationPaymentPlans,
|
||||||
setRegistrationPaymentPlans,
|
setRegistrationPaymentPlans,
|
||||||
tuitionPaymentPlans,
|
tuitionPaymentPlans,
|
||||||
@ -22,20 +22,20 @@ const FeesManagement = ({ registrationDiscounts,
|
|||||||
setRegistrationPaymentModes,
|
setRegistrationPaymentModes,
|
||||||
tuitionPaymentModes,
|
tuitionPaymentModes,
|
||||||
setTuitionPaymentModes,
|
setTuitionPaymentModes,
|
||||||
handleCreate,
|
handleCreate,
|
||||||
handleEdit,
|
handleEdit,
|
||||||
handleDelete }) => {
|
handleDelete }) => {
|
||||||
|
|
||||||
const handleDiscountDelete = (id, type) => {
|
const handleDiscountDelete = (id, type) => {
|
||||||
if (type === 0) {
|
if (type === 0) {
|
||||||
setRegistrationFees(prevFees =>
|
setRegistrationFees(prevFees =>
|
||||||
prevFees.map(fee => ({
|
prevFees.map(fee => ({
|
||||||
...fee,
|
...fee,
|
||||||
discounts: fee.discounts.filter(discountId => discountId !== id)
|
discounts: fee.discounts.filter(discountId => discountId !== id)
|
||||||
}))
|
}))
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
setTuitionFees(prevFees =>
|
setTuitionFees(prevFees =>
|
||||||
prevFees.map(fee => ({
|
prevFees.map(fee => ({
|
||||||
...fee,
|
...fee,
|
||||||
discounts: fee.discounts.filter(discountId => discountId !== id)
|
discounts: fee.discounts.filter(discountId => discountId !== id)
|
||||||
@ -47,7 +47,7 @@ const FeesManagement = ({ registrationDiscounts,
|
|||||||
return (
|
return (
|
||||||
<div className="w-full mx-auto p-2 mt-6 space-y-6">
|
<div className="w-full mx-auto p-2 mt-6 space-y-6">
|
||||||
<div className="bg-white p-2 rounded-lg shadow-md">
|
<div className="bg-white p-2 rounded-lg shadow-md">
|
||||||
<h2 className="text-2xl font-semibold mb-4">Frais d'inscription</h2>
|
<h2 className="text-2xl font-semibold mb-4">Frais d'inscription</h2>
|
||||||
<div className="grid grid-cols-1 md:grid-cols-2 gap-6">
|
<div className="grid grid-cols-1 md:grid-cols-2 gap-6">
|
||||||
<div className="col-span-1 p-6 rounded-lg shadow-inner mt-4">
|
<div className="col-span-1 p-6 rounded-lg shadow-inner mt-4">
|
||||||
<FeesSection
|
<FeesSection
|
||||||
|
|||||||
Reference in New Issue
Block a user