From 8c6e59e15a6fc10c47c716e1f33512ba287effdc Mon Sep 17 00:00:00 2001 From: Soriba SYLLA Date: Tue, 14 Jul 2026 09:03:28 +0000 Subject: [PATCH] Correction enregistrement profil --- SIRH/__pycache__/__init__.cpython-310.pyc | Bin 126 -> 142 bytes SIRH/__pycache__/settings.cpython-310.pyc | Bin 3074 -> 3090 bytes SIRH/__pycache__/urls.cpython-310.pyc | Bin 1519 -> 1539 bytes SIRH/__pycache__/views.cpython-310.pyc | Bin 1249 -> 1265 bytes SIRH/__pycache__/wsgi.cpython-310.pyc | Bin 523 -> 539 bytes SIRH/urls.py | 2 +- .../fonctions_utilitaire.cpython-310.pyc | Bin 2234 -> 2270 bytes fonction_utilitaire/fonctions_utilitaire.py | 5 +- .../__pycache__/__init__.cpython-310.pyc | Bin 135 -> 151 bytes .../__pycache__/admin.cpython-310.pyc | Bin 176 -> 192 bytes .../__pycache__/apps.cpython-310.pyc | Bin 427 -> 443 bytes .../__pycache__/forms.cpython-310.pyc | Bin 861 -> 877 bytes .../__pycache__/models.cpython-310.pyc | Bin 1287 -> 1303 bytes .../__pycache__/urls.cpython-310.pyc | Bin 554 -> 570 bytes .../__pycache__/views.cpython-310.pyc | Bin 6053 -> 6069 bytes gestion_conge/migrations/0001_initial.py | 2 +- .../__pycache__/__init__.cpython-310.pyc | Bin 137 -> 153 bytes .../__pycache__/admin.cpython-310.pyc | Bin 628 -> 644 bytes .../__pycache__/forms.cpython-310.pyc | Bin 2742 -> 2758 bytes .../__pycache__/models.cpython-310.pyc | Bin 5607 -> 5623 bytes .../__pycache__/urls.cpython-310.pyc | Bin 1511 -> 1527 bytes .../__pycache__/views.cpython-310.pyc | Bin 14436 -> 14469 bytes gestion_employe/migrations/0001_initial.py | 6 +-- .../0002_alter_contrat_type_contrat.py | 18 ------- .../static/gestion_employe/js/mon_profil.js | 49 ++++++++++-------- .../templates/gestion_employe/monprofil.html | 24 ++++----- .../tags_personnaliser.cpython-310.pyc | Bin 1120 -> 1136 bytes gestion_employe/views.py | 25 ++++----- .../__pycache__/__init__.cpython-310.pyc | Bin 136 -> 152 bytes .../__pycache__/admin.cpython-310.pyc | Bin 441 -> 457 bytes .../__pycache__/forms.cpython-310.pyc | Bin 4554 -> 4570 bytes .../__pycache__/models.cpython-310.pyc | Bin 7657 -> 7673 bytes .../__pycache__/urls.cpython-310.pyc | Bin 2349 -> 2365 bytes .../__pycache__/views.cpython-310.pyc | Bin 16653 -> 16669 bytes gestion_projet/migrations/0001_initial.py | 2 +- .../__pycache__/__init__.cpython-310.pyc | Bin 135 -> 151 bytes .../__pycache__/admin.cpython-310.pyc | Bin 176 -> 192 bytes .../__pycache__/apps.cpython-310.pyc | Bin 370 -> 386 bytes .../__pycache__/forms.cpython-310.pyc | Bin 1556 -> 1572 bytes .../__pycache__/models.cpython-310.pyc | Bin 1502 -> 1518 bytes .../__pycache__/urls.cpython-310.pyc | Bin 929 -> 945 bytes .../__pycache__/views.cpython-310.pyc | Bin 7588 -> 7604 bytes gestion_salle/migrations/0001_initial.py | 2 +- 43 files changed, 63 insertions(+), 72 deletions(-) delete mode 100644 gestion_employe/migrations/0002_alter_contrat_type_contrat.py diff --git a/SIRH/__pycache__/__init__.cpython-310.pyc b/SIRH/__pycache__/__init__.cpython-310.pyc index 92d486cc0f049ea40a94cbcb8e03ab405436c939..754af56c5033ac96bfb9c8ad80abd338264be0f2 100644 GIT binary patch delta 51 zcmb>HW8}%_<>g`kf`A|HSrd7zWeoK*@^e%5i}Q<8bM%Wdi!yYR^NWg7lS?x5^Ckvs F0|0Vr5KsUB delta 35 pcmeBUtmDb&<>g`kg4%t5GAHs_^C;?PSyHVrs@~x7p3Ot7iSh_=qBeE6{RMZWaj5h Ij^ delta 38 scmbOv(Iml>&&$ij00bNM{mIhco1{FfxE(B*Vt0)l4!z`WgATsrtqFMX5RZ#hFDJy2<%P zMXAXpnfZB>Etzc@r8bu{XE8GJZ+^t$#>l9#S(B}ekLk0BIE`J^%m! delta 128 zcmca7xJytwpO=@50SG?s`;%G3!NBks#6bqEK#l_t7Z*&_ww{8H@k` diff --git a/fonction_utilitaire/fonctions_utilitaire.py b/fonction_utilitaire/fonctions_utilitaire.py index eb56ca3..3b53db8 100644 --- a/fonction_utilitaire/fonctions_utilitaire.py +++ b/fonction_utilitaire/fonctions_utilitaire.py @@ -7,7 +7,10 @@ QUOTA_CONGE_ANNUEL = 30 NOMBRE_PAGINATION = 8 DEBUT_RAPPEL = 60 DUREE_FIN_CONTRAT = 90 -EMAIL_ASSISTANTE_DE_DIRECTION = list(Employe.objects.filter(fonction="assistant_direction").values_list('user__email', flat=True)) +try: + EMAIL_ASSISTANTE_DE_DIRECTION = list(Employe.objects.filter(fonction="assistant_direction").values_list('user__email', flat=True)) +except: + pass def solde_conge(employe): """Fonction de calcul du solde de congé restant l'employé""" diff --git a/gestion_conge/__pycache__/__init__.cpython-310.pyc b/gestion_conge/__pycache__/__init__.cpython-310.pyc index 987b2f8dfd8e4b3bc3c7f842c2a83262f093ccf0..2e4e608cf6efd2f90ef7f703bf91c6e604597178 100644 GIT binary patch delta 52 zcmZo?oX*IT&&$ij00aR)+_NU~Sj$-HXXNLm>KEr1rRL}tXBK7XCg&Fwr6!kT=I2ce GHUR*4(hzk3 delta 36 qcmbQv*v`n4&&$ij00g!B{$x(%vF6dz&&bbB)i2I3O3j&=YytqRz6!zs diff --git a/gestion_conge/__pycache__/admin.cpython-310.pyc b/gestion_conge/__pycache__/admin.cpython-310.pyc index 2c9ad777d5c34794e494a638986f0fbec622f552..8403b94ffd2d0b8d26d3773d14b02d1f57365958 100644 GIT binary patch delta 52 zcmdnMcz}^7pO=@50SE$qxMxk|NtZF#&&bbB)i2I3O3l$P&MeB%P0lYWN=+`w%+H%x GZwLU5%n=y? delta 36 qcmX@WxPg%;pO=@50SIdM{mGojlg^{ApOK%Ns$ZO6l$tZK-w*)12n%Ka diff --git a/gestion_conge/__pycache__/apps.cpython-310.pyc b/gestion_conge/__pycache__/apps.cpython-310.pyc index 609f119ab8c7873be59ef4c65de73a91cca827b5..f5e111fe9091415038212291d3f3c1643d8be912 100644 GIT binary patch delta 54 zcmZ3@yqlRPpO=@50SE$qxMywTkz$lF)6dAyP1P^XFG|hPFU~B=&`r)SDoRZ*$;{82 IY{Xaz0GtO9|d0LNzwF#rGn diff --git a/gestion_conge/__pycache__/forms.cpython-310.pyc b/gestion_conge/__pycache__/forms.cpython-310.pyc index 647d2738bc434a280da5cd7a308fb110d9aa1423..a383b8547d244f5c41a41386074fb4710d5237fa 100644 GIT binary patch delta 54 zcmcc1_Lhw&pO=@50SE$qxMywTiD8m4*U!k$P1P^XFG|hPFU~B=&`r)SDoRZ*$;{82 IT*CAc0K9V&MF0Q* delta 38 scmaFMc9)GOpO=@50SIdM{mI`%f5%vH8 delta 39 tcmbQv)y~C}&&$ij00g!B{$y_CdBVh_p`VeTo2p-&UzD1&nTMI12>{sN3q$|_ diff --git a/gestion_conge/__pycache__/urls.cpython-310.pyc b/gestion_conge/__pycache__/urls.cpython-310.pyc index 13410875a806db51ac8d70b72271b52a8f77546b..1366049e324e1a8b19d05a572dacbd78b9954f20 100644 GIT binary patch delta 54 zcmZ3*vWtZ$pO=@50SE$qxMywT*}^Derk|0Yo2p-&UzD1oUz}N#p_`mvRFs-rl9``3 I`3z$m0J6pr{Qv*} delta 38 scmdnRvWkT#pO=@50SIdM{mIa=0KWqgdjJ3c delta 38 scmdn0zf_+)pO=@50SHRoFmB|Y&Ca8)pOK%Ns$ZO6l$x{o5c_9-0Lp<2^8f$< diff --git a/gestion_conge/migrations/0001_initial.py b/gestion_conge/migrations/0001_initial.py index 6a7e09d..fad7f87 100644 --- a/gestion_conge/migrations/0001_initial.py +++ b/gestion_conge/migrations/0001_initial.py @@ -1,4 +1,4 @@ -# Generated by Django 5.2.13 on 2026-04-17 12:03 +# Generated by Django 5.2.13 on 2026-07-03 18:13 import django.db.models.deletion from django.db import migrations, models diff --git a/gestion_employe/__pycache__/__init__.cpython-310.pyc b/gestion_employe/__pycache__/__init__.cpython-310.pyc index 7ef245dd2b37a82a6dda2dd1795392271af4053e..662a1501799f2866a8005bea244104414a67f875 100644 GIT binary patch delta 52 zcmeBVoXNKEr1rRL}tXBK7XCg&Fwr6!kT=I2ce GHUj{7-Vl8N delta 36 qcmbQq*vZI~&&$ij00g!B{$x(%vF6dy&&bbB)i2I3O3j&=Yz6?WY6{8# diff --git a/gestion_employe/__pycache__/admin.cpython-310.pyc b/gestion_employe/__pycache__/admin.cpython-310.pyc index b3b000c18fac3c453df9ed353d00dfc584c32426..363ddf70863937b8a8c82c4fa3ec4a237c67c475 100644 GIT binary patch delta 55 zcmeyu(!$D<&&$ij00aR)+_N_F7%|FN>SyHVrs@~x7p3Ot7iSh_=qBeE6{RMZWaj5> J_F~jx1OT=B5dHuF delta 39 tcmZo+{ldbN&&$ij00g!B{$y_CF=FJ=)X&JzP1P^XFG|hX9L1=`2msfr3rhe1 diff --git a/gestion_employe/__pycache__/forms.cpython-310.pyc b/gestion_employe/__pycache__/forms.cpython-310.pyc index a88d33a9d4cebc0bf9a758fa450c49f00b76fd77..97052b4d1228b60aee89a2173afebd19609ffdf4 100644 GIT binary patch delta 55 zcmdlcdQ6ljpO=@50SE$qxMywT31^bA)X&JzP1P^XFG|hPFU~B=&`r)SDoRZ*$;{8& JoX_OW0RY2T5t9G_ delta 39 tcmX>mx=oZPpO=@50SIdM{mIzHlk5iB&9WP1w{R~j z62T+_J&P`wK``*#M0B9znGWb2 z`w{a>de00vXR+FSjuPoUL+9~R5h1cQ?{WCT)V_LHkixz=*h{KZHj^%?M>G9Gwxk-! z2-g_(55sp>^1ES)g?(OTulcNbg5Q72wrZlrMbu}A=PVTP!V8uN^tgZWg{+msN(k6^ zYYyJJPH6(VEUg3{5SV4hf&&0-DVTs&tSi}SU9eZUxo*<>S7EGP&LV;8n%Agnh;;-` zE~J#_RZbt5FDrCQCmy})M8>)V(E#Pm?1A&JfLoH+wq%qdv;vo4+i?;+TK9B7>sK= z0^)f|j}}{N&M=L`t(CmANL2)Jjo2P)#|c|yCHFCw1*u>Hwr*eot%fbP00QV?8+nK^ zJ#hgvt5OWpcRS=l`zTnZxaxhb%Icb=2i$tdVFo`s4#NsM^NMtj$#DvBx!f$D&a*(8 zG|n?7I7|}Yo%}BNg1_=@x~ChNxTj!6_k^d+VVbivWy>pg$mxK2>~c2R)+ixpA}}!q z8MKWo+J;^&fV3blJI5GIq2JX3D*WK8*DY>{%icmO{8K-+W7xDsotI3<2B+EnlG7y) zuQ(`UR42wbjo%$+tS+*FOKvK9&!9$j?#u%?fcuMwU>4sNml3WN*T7M%D7gmD@J&gs zqZO!Ien53J^qh6wx^#pKS1Bd%XGwMKX34wUi5%{6c*J32x^A^Ha%qNpM+r{2nbggV zY3$!6)+_z?ar+&I+Z_Hc&3~Cq{lDsH^H^aTeV%IY$pfAX0MBu?bdrX8wX6#U-+)cXP`(p=sMWAbcy3#80*O{J?(c&R)S3w&8HhZQ~-jLR*)Fl5Jg0zVuQ T|L)QPheiClHv%^7skHwA1akcw diff --git a/gestion_employe/migrations/0001_initial.py b/gestion_employe/migrations/0001_initial.py index 26edccb..f5eaf71 100644 --- a/gestion_employe/migrations/0001_initial.py +++ b/gestion_employe/migrations/0001_initial.py @@ -1,4 +1,4 @@ -# Generated by Django 5.2.13 on 2026-04-17 12:03 +# Generated by Django 5.2.13 on 2026-07-03 18:13 import django.db.models.deletion from django.conf import settings @@ -27,7 +27,7 @@ class Migration(migrations.Migration): fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('matricule', models.CharField(blank=True, max_length=10, null=True, unique=True)), - ('fonction', models.CharField(blank=True, choices=[('directeur', 'Directeur'), ('assistant_direction', 'Assistante de direction'), ('comptable', 'Comptable'), ('raf', 'RAF'), ('data_manager', 'Data Manager'), ('logisticien', 'Logisticien'), ('post_doctorant', 'Post-Doctorant'), ('qualiticien', 'Qualiticien'), ('technicien_surface', 'Technicien de surface'), ('chauffeur', 'Chauffeur')], max_length=50, null=True)), + ('fonction', models.CharField(blank=True, choices=[('directeur', 'Directeur'), ('assistant_direction', 'Assistante de direction'), ('assistant_technique_recherche', 'Assistant technique de recherche'), ('comptable', 'Comptable'), ('raf', 'RAF'), ('data_manager', 'Data Manager'), ('logisticien', 'Logisticien'), ('post_doctorant', 'Post-Doctorant'), ('qualiticien', 'Qualiticien'), ('technicien_surface', 'Technicien de surface'), ('chauffeur', 'Chauffeur')], max_length=50, null=True)), ('date_embauche', models.DateField(blank=True, null=True)), ('adresse', models.CharField(blank=True, max_length=100, null=True)), ('telephone', models.CharField(blank=True, max_length=15, null=True)), @@ -48,7 +48,7 @@ class Migration(migrations.Migration): fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('numero_contrat', models.CharField(max_length=100, unique=True)), - ('type_contrat', models.CharField(choices=[('contrat_duree_determinee', 'Contrat à Durée Déterminée'), ('contrat_duree_indeterminee', 'Contrat à Durée Indéterminée'), ('contrat_prestation', 'Contrat de Prestation de Service'), ('contrat_stage', 'Contrat de Stage')], max_length=50)), + ('type_contrat', models.CharField(choices=[('contrat_duree_determinee', 'Contrat à Durée Déterminée'), ('contrat_duree_indeterminee', 'Contrat à Durée Indéterminée'), ('contrat_prestation', 'Contrat de Prestation de Service'), ('contrat_stage', 'Contrat de Stage'), ('convention_bourse_entretien', "Convention de bourse d'entretien")], max_length=50)), ('date_debut', models.DateField()), ('date_fin', models.DateField(blank=True, null=True)), ('salaire_mensuel', models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True)), diff --git a/gestion_employe/migrations/0002_alter_contrat_type_contrat.py b/gestion_employe/migrations/0002_alter_contrat_type_contrat.py deleted file mode 100644 index 4fd9717..0000000 --- a/gestion_employe/migrations/0002_alter_contrat_type_contrat.py +++ /dev/null @@ -1,18 +0,0 @@ -# Generated by Django 6.0.4 on 2026-04-29 10:42 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - dependencies = [ - ('gestion_employe', '0001_initial'), - ] - - operations = [ - migrations.AlterField( - model_name='contrat', - name='type_contrat', - field=models.CharField(choices=[('contrat_duree_determinee', 'Contrat à Durée Déterminée'), ('contrat_duree_indeterminee', 'Contrat à Durée Indéterminée'), ('contrat_prestation', 'Contrat de Prestation de Service'), ('contrat_stage', 'Contrat de Stage'), ('convention_bourse_entretien', "Convention de bourse d'entretien")], max_length=50), - ), - ] diff --git a/gestion_employe/static/gestion_employe/js/mon_profil.js b/gestion_employe/static/gestion_employe/js/mon_profil.js index 77178b4..8ffe818 100644 --- a/gestion_employe/static/gestion_employe/js/mon_profil.js +++ b/gestion_employe/static/gestion_employe/js/mon_profil.js @@ -18,29 +18,34 @@ const tableau_certificat = new Tabulator("#tableau-certificat", { }) const enregistrerProfil = $("enregistrerProfil"); -enregistrerProfil.addEventListener("click", (e) => { +// enregistrerProfil.addEventListener("click", (e) => { - const url = $("information-personnelles").dataset.url; - const csrftoken = document.querySelector("[name='csrfmiddlewaretoken']").value; +// const url = $("information-personnelles").dataset.url; +// const csrftoken = document.querySelector("[name='csrfmiddlewaretoken']").value; - const formData = new FormData(); +// const formData = new FormData(); - formData.append("nom", $("nom").value); - formData.append("prenom", $("prenom").value); - formData.append("email", $("email").value); - formData.append("telephone", $("telephone").value); - formData.append("adresse", $("adresse").value); - formData.append("sexe", $("sexe").value); - formData.append("date_naissance", $("date_naissance").value); +// formData.append("nom", $("nom").value); +// formData.append("prenom", $("prenom").value); +// formData.append("email", $("email").value); +// formData.append("telephone", $("telephone").value); +// formData.append("adresse", $("adresse").value); +// formData.append("sexe", $("sexe").value); +// formData.append("date_naissance", $("date_naissance").value); - fetch(url, { - method: "POST", - headers: { - "X-CSRFToken": csrftoken - }, - body: formData - }) - .then(response => response.json()) - .then(data => alert(data.message)) - .catch(error => console.error("Erreur:", error)); -}); \ No newline at end of file + +// console.log("---------------------------------------------") +// console.log("Données du formulaire:", url); +// console.log("Données du formulaire:", formData); + +// fetch(url, { +// method: "POST", +// headers: { +// "X-CSRFToken": csrftoken +// }, +// body: formData +// }) +// .then(response => response.json()) +// .then(data => alert(data.message)) +// .catch(error => console.error("Erreur:", error)); +// }); \ No newline at end of file diff --git a/gestion_employe/templates/gestion_employe/monprofil.html b/gestion_employe/templates/gestion_employe/monprofil.html index 3ca4fbf..95da162 100644 --- a/gestion_employe/templates/gestion_employe/monprofil.html +++ b/gestion_employe/templates/gestion_employe/monprofil.html @@ -38,7 +38,7 @@
-
+
{% csrf_token %}
@@ -50,19 +50,19 @@
- +
- +
- +
- @@ -72,27 +72,27 @@
- +
- +
- +
- +
- +
-
- + +
diff --git a/gestion_employe/templatetags/__pycache__/tags_personnaliser.cpython-310.pyc b/gestion_employe/templatetags/__pycache__/tags_personnaliser.cpython-310.pyc index b6fa4ab92c411df34eaf7e29c367f4670fa18e59..4b794287ccceaa905a75eedc1968a48a6e1be39b 100644 GIT binary patch delta 55 zcmaFB@qvRUpO=@50SE$qxMywTQD>3~*3Zb#P1P^XFG|hPFU~B=&`r)SDoRZ*$;{8& JY|o^~1OUr65nBKN delta 39 tcmeys@qmLTpO=@50SIdM{mI|Bv3#b49 diff --git a/gestion_employe/views.py b/gestion_employe/views.py index 80d902c..b30ac04 100644 --- a/gestion_employe/views.py +++ b/gestion_employe/views.py @@ -191,25 +191,26 @@ def modifier_employer(request): except Employe.DoesNotExist: return JsonResponse({"message": "Employé non trouvé."}) if request.method == "POST": - data = json.loads(request.body) user = User.objects.get(username=request.user) - user.last_name = data['nom'] - user.first_name = data['prenom'] - user.email = data['email'] - employe.telephone = data['telephone'] - employe.adresse = data['adresse'] - employe.sexe = data['sexe'] + user.last_name = request.POST['nom'] + user.first_name = request.POST['prenom'] + user.email = request.POST['email'] + employe.telephone = request.POST['telephone'] + employe.adresse = request.POST['adresse'] + employe.sexe = request.POST['sexe'] if request.FILES.get("photo"): employe.photo = request.FILES["photo"] - if data['date_naissance']: - difference = relativedelta(timezone.now().date(), datetime.strptime(data['date_naissance'], "%Y-%m-%d").date()) + if request.POST['date_naissance']: + difference = relativedelta(timezone.now().date(), datetime.strptime(request.POST['date_naissance'], "%Y-%m-%d").date()) if difference.years >= 18: - employe.date_naissance = data['date_naissance'] + employe.date_naissance = request.POST['date_naissance'] else: - return JsonResponse({"message": "Veuillez entrez une date de naissance correcte."}) + messages.error(request, "Veuillez entrez une date de naissance correcte.") employe.save() user.save() - return JsonResponse({"message": "Profil mis à jour avec succès."}) + messages.success(request, "Profil mis à jour avec succès.") + return redirect("gestion_employe:mon-profil") + def enregistrement_document(request): """Vue pour permettre à un utilisateur de télécharger et enregistrer des documents liés à son profil""" diff --git a/gestion_projet/__pycache__/__init__.cpython-310.pyc b/gestion_projet/__pycache__/__init__.cpython-310.pyc index 48bd83f6db8eee71c967ab168b4c0dcfb6fb8caf..6f58d4174a2dc54ac28a6b815ca47e77dfe4244b 100644 GIT binary patch delta 52 zcmeBRoWaPG&&$ij00aR)+_NU~Sj$-JXXNLm>KEr1rRL}tXBK7XCg&Fwr6!kT=I2ce GHU$89SP*#t delta 36 qcmbQi*ult?&&$ij00g!B{$x(%vF6d%&&bbB)i2I3O3j&=YzhFa6bi-w diff --git a/gestion_projet/__pycache__/admin.cpython-310.pyc b/gestion_projet/__pycache__/admin.cpython-310.pyc index 21dd0522e1c49e71433e49752baf8f6796002c25..07787b7688e793fa498066bb871eec0a8ec684fa 100644 GIT binary patch delta 54 zcmdnVe3F?bpO=@50SE$qxMywTVP=%E(9g)vP1P^XFG|hPFU~B=&`r)SDoRZ*$;{82 IEX_C%0G`ee`2YX_ delta 38 scmX@fypx$HpO=@50SIdM{mIDFDgn+F3HT# K+x&+`&;|hH8xqX` delta 40 ucmbQ+#Ms-!$eqv2%f$c$iC*j*xu3G|Xy|9;=ceix=NF~sZ02DVv;hFmD+-qY diff --git a/gestion_projet/migrations/0001_initial.py b/gestion_projet/migrations/0001_initial.py index c85eb6d..f4dad50 100644 --- a/gestion_projet/migrations/0001_initial.py +++ b/gestion_projet/migrations/0001_initial.py @@ -1,4 +1,4 @@ -# Generated by Django 5.2.13 on 2026-04-17 12:03 +# Generated by Django 5.2.13 on 2026-07-03 18:13 import django.db.models.deletion from django.db import migrations, models diff --git a/gestion_salle/__pycache__/__init__.cpython-310.pyc b/gestion_salle/__pycache__/__init__.cpython-310.pyc index 13c3ba84d63a8ade19232439883684daabf9254d..d70727cc102093109d9a31961e25c8981b0cf049 100644 GIT binary patch delta 52 zcmZo?oX*IT&&$ij00aR)+_NU~Sj$-HXXNLm>KEr1rRL}tXBK7XCg&Fwr6!kT=I2ce GHUR*4(hzk3 delta 36 qcmbQv*v`n4&&$ij00g!B{$x(%vF6dz&&bbB)i2I3O3j&=YytqRz6!zs diff --git a/gestion_salle/__pycache__/admin.cpython-310.pyc b/gestion_salle/__pycache__/admin.cpython-310.pyc index 4e1b01c12740533a9b523da869540435fb52eacb..b0a85f381e9655a5c95fd3ef73a0ecab80d0566a 100644 GIT binary patch delta 52 zcmdnMcz}^7pO=@50SE$qxMxk|NtZF#&&bbB)i2I3O3l$P&MeB%P0lYWN=+`w%+H%x GZwLU5%n=y? delta 36 qcmX@WxPg%;pO=@50SIdM{mGojlg^{ApOK%Ns$ZO6l$tZK-w*)12n%Ka diff --git a/gestion_salle/__pycache__/apps.cpython-310.pyc b/gestion_salle/__pycache__/apps.cpython-310.pyc index 8c518c83764c04a530cc77b3759a3e320b7f7e1b..e1f3990d324ac6ddd65e10f8b7d340302efc3b05 100644 GIT binary patch delta 52 zcmeyw)Wpn_&&$ij00aR)+_NU~JeD!j&&bbB)i2I3O3l$P&MeB%P0lYWN=+`w%+H(n GyBq+Z$P!%u delta 37 rcmZo-{=~$S&&$ij00g!B{$x(%dCa4xpOK%Ns$ZO6l$tY{o3R`K&La!0 diff --git a/gestion_salle/__pycache__/forms.cpython-310.pyc b/gestion_salle/__pycache__/forms.cpython-310.pyc index fdcd7e108a7602e75c576aec38f55e2d6193dc93..8d57e79cfe452474bd2998878c487941459a475a 100644 GIT binary patch delta 55 zcmbQjvxJ8ypO=@50SE$qxMywTdCe?iuAh;go2p-&UzD1oUz}N#p_`mvRFs-rl9`{k JnVCh92>`>}5h?%x delta 39 tcmZ3&GlhpIpO=@50SIdM{mIpOK%Ns$ZO6l$xVooLQ8io19-%l$u