@@ -23,7 +23,12 @@
-
+
diff --git a/gestion_employe/views.py b/gestion_employe/views.py
index 0d25298..0de134f 100644
--- a/gestion_employe/views.py
+++ b/gestion_employe/views.py
@@ -15,7 +15,7 @@ from django.utils import timezone
from fonction_utilitaire import fonctions_utilitaire
from .forms import AffectationForm, ContratForm, FormationForm
-from .models import Affectation, Contrat, Employe, Formation
+from .models import Affectation, Contrat, Departement, Employe, Formation
@login_required
@@ -42,7 +42,8 @@ def index(request):
'nombre_stage': nombre_stage,
'nombre_expirants': nombre_expirants,
'affectation_form': AffectationForm(),
- 'contrat_form': ContratForm()
+ 'contrat_form': ContratForm(),
+ 'departements': Departement.objects.all()
})
@login_required
@@ -285,7 +286,7 @@ def creation_contrat(request):
contrat_actif = Contrat.objects.filter(
employe=employe,
- date_fin__gte=datetime.date.today()
+ date_fin__gte=timezone.now().date()
).exists()
if request.method == "POST":
@@ -360,10 +361,30 @@ def enregistrer_detail_employe(request):
except Employe.DoesNotExist:
return JsonResponse({"error": "Employé non trouvé."}, status=404)
- employe.fonction = data['fonction']
- employe.date_embauche = data['date_embauche']
- employe.matricule = data['matricule']
+ employe.fonction = data.get('fonction')
+ employe.date_embauche = data.get('date_embauche')
+ employe.matricule = data.get('matricule')
+
+ # Traiter le département
+ dept_value = data.get('departement')
+ print(f"[DEBUG] Département brut: {dept_value!r}")
+ print(f"[DEBUG] Type département: {type(dept_value).__name__}")
+ print(f"[DEBUG] Est vide: {not dept_value}")
+
+ if dept_value and str(dept_value).strip():
+ try:
+ dept_id = int(dept_value)
+ departement = Departement.objects.get(id=dept_id)
+ employe.departement = departement
+ except Departement.DoesNotExist:
+ employe.departement = None
+ except (ValueError, TypeError) as e:
+ employe.departement = None
+ else:
+ employe.departement = None
+
employe.save()
+
return JsonResponse({"message": "Détails de l'employé mis à jour avec succès."})
else:
return JsonResponse({"message": "Méthode non autorisée."}, status=405)
@@ -426,7 +447,7 @@ def liste_employe(request):
"affectations": affectations,
"projet": projets,
"contrats": contrats,
- "departement": employe.departement.nom if employe.departement else "",
+ "departement": employe.departement.id if employe.departement else "",
"fonction": employe.fonction,
"date_embauche": employe.date_embauche,
"adresse": employe.adresse,
diff --git a/gestion_projet/__pycache__/urls.cpython-310.pyc b/gestion_projet/__pycache__/urls.cpython-310.pyc
index 008995a..a117096 100644
Binary files a/gestion_projet/__pycache__/urls.cpython-310.pyc and b/gestion_projet/__pycache__/urls.cpython-310.pyc differ
diff --git a/gestion_projet/__pycache__/views.cpython-310.pyc b/gestion_projet/__pycache__/views.cpython-310.pyc
index e919e1d..0f79339 100644
Binary files a/gestion_projet/__pycache__/views.cpython-310.pyc and b/gestion_projet/__pycache__/views.cpython-310.pyc differ
diff --git a/gestion_projet/migrations/0001_initial.py b/gestion_projet/migrations/0001_initial.py
index 090b4f1..8ca4443 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-09-01 10:51
+# Generated by Django 5.2.13 on 2026-09-03 14:33
import django.db.models.deletion
from django.db import migrations, models
diff --git a/gestion_projet/static/gestion_projet/js/enregistrement_bailleur.js b/gestion_projet/static/gestion_projet/js/enregistrement_bailleur.js
index b01e3c8..aa5e918 100644
--- a/gestion_projet/static/gestion_projet/js/enregistrement_bailleur.js
+++ b/gestion_projet/static/gestion_projet/js/enregistrement_bailleur.js
@@ -1,4 +1,5 @@
const btnEnregistrerBailleur = document.getElementById('btnEnregistrerBailleur');
+let table;
let table;
@@ -45,4 +46,4 @@ table = new Tabulator("#table-bailleurs", {
supprimerBailleur(data.id);
}
}
-});
\ No newline at end of file
+});
diff --git a/gestion_projet/templates/gestion_projet/parts/creation_bailleur.html b/gestion_projet/templates/gestion_projet/parts/creation_bailleur.html
index 6fe4194..2f31a37 100644
--- a/gestion_projet/templates/gestion_projet/parts/creation_bailleur.html
+++ b/gestion_projet/templates/gestion_projet/parts/creation_bailleur.html
@@ -1,20 +1,51 @@
-
+
-
-
-
-
+
+ -
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
Liste des bailleurs
+
+
+
+
+
diff --git a/gestion_projet/urls.py b/gestion_projet/urls.py
index ff20f0d..fe18f32 100644
--- a/gestion_projet/urls.py
+++ b/gestion_projet/urls.py
@@ -19,6 +19,12 @@ urlpatterns = [
views.creation_projet,
name='creation-projet'
),
+ path(
+ 'bailleurs/',
+ views.liste_bailleur,
+ name='liste-bailleurs'
+ ),
+
path(
'projet/modifier/
/',
views.modification_projet,
@@ -114,4 +120,6 @@ urlpatterns = [
views.mises_a_jour_projet,
name='mises-a-jour-projet'
)
-]
\ No newline at end of file
+
+]
+
diff --git a/gestion_projet/views.py b/gestion_projet/views.py
index 8d2295c..3973d10 100644
--- a/gestion_projet/views.py
+++ b/gestion_projet/views.py
@@ -146,6 +146,22 @@ def creation_bailleur(request):
return JsonResponse({'success': True})
return JsonResponse({'success': False})
+@login_required
+def liste_bailleur(request):
+ """ Vue pour retourner la liste de tous les bailleurs """
+ bailleurs = Bailleur.objects.all().order_by('-id')
+ data = []
+ for b in bailleurs:
+ data.append({
+ "id": b.id,
+ "nom_organisme": b.nom_organisme,
+ "contact": b.contact,
+ "email": b.email,
+ "pays": b.pays,
+ })
+ return JsonResponse(data, safe=False)
+
+
@login_required
def ajouter_financement_projet(request):
"""Ajoute un financement à un projet en vérifiant que le total ne dépasse pas 100%"""
@@ -321,6 +337,7 @@ def activites_projet(request):
}
return render(request, 'gestion_projet/suivi_activite.html', context)
+
@login_required
def ajouter_activite_projet(request):
"""Vue pour ajouter une activité à un projet spécifique via un formulaire"""
diff --git a/gestion_salle/__pycache__/views.cpython-310.pyc b/gestion_salle/__pycache__/views.cpython-310.pyc
index 4d7528b..c5ea120 100644
Binary files a/gestion_salle/__pycache__/views.cpython-310.pyc and b/gestion_salle/__pycache__/views.cpython-310.pyc differ
diff --git a/gestion_salle/migrations/0001_initial.py b/gestion_salle/migrations/0001_initial.py
index 7bbd5c3..8f23c7a 100644
--- a/gestion_salle/migrations/0001_initial.py
+++ b/gestion_salle/migrations/0001_initial.py
@@ -1,4 +1,4 @@
-# Generated by Django 5.2.13 on 2026-09-01 10:51
+# Generated by Django 5.2.13 on 2026-09-03 14:33
import django.db.models.deletion
from django.db import migrations, models
diff --git a/gestion_salle/static/gestion_salle/js/index.js b/gestion_salle/static/gestion_salle/js/index.js
index c777aeb..4eef819 100644
--- a/gestion_salle/static/gestion_salle/js/index.js
+++ b/gestion_salle/static/gestion_salle/js/index.js
@@ -12,7 +12,12 @@ const calendrier = Schedule(document.getElementById('planning-reservation'), {
const modal = new bootstrap.Modal($("modalDetailReservation"));
modal.show();
fetch (`/gestion-salle/revervation/details/${event.guid}`)
- .then(response => response.json())
+ .then(response => {
+ if (!response.ok) {
+ throw new Error(`Erreur HTTP ${response.status}`);
+ }
+ return response.json();
+ })
.then(data => {
currentReservationId = data.id_reservation;
$("id_reservation_detail").value = data.id_reservation;
@@ -21,7 +26,7 @@ const calendrier = Schedule(document.getElementById('planning-reservation'), {
$("employe").value=data.employe;
$("salle").value=data.salle;
$("statut-reservation").innerHTML=data.statut;
- $("date_evenement").value=data.date_evenement;
+ $("date_debut").value=data.date_debut;
$("heure_debut").value=data.heure_debut;
$("heure_fin").value=data.heure_fin;
$("motif_reservation").value=data.motif_reservation;
@@ -40,6 +45,7 @@ const calendrier = Schedule(document.getElementById('planning-reservation'), {
}
})
+ .catch(error => console.error("Impossible de charger les détails de la réservation :", error));
}
});
diff --git a/gestion_salle/templates/gestion_salle/index.html b/gestion_salle/templates/gestion_salle/index.html
index db35f40..70e6408 100644
--- a/gestion_salle/templates/gestion_salle/index.html
+++ b/gestion_salle/templates/gestion_salle/index.html
@@ -55,5 +55,5 @@
{% block 'js' %}
-
+
{% endblock %}
\ No newline at end of file
diff --git a/gestion_salle/views.py b/gestion_salle/views.py
index 6b43056..fa01d30 100644
--- a/gestion_salle/views.py
+++ b/gestion_salle/views.py
@@ -108,6 +108,7 @@ def liste_reservation(request:HttpRequest):
"""Vue d'affichage des creneaux disponibles"""
reservations = Reservation.objects.filter(statut = "validee")
liste_reservation = []
+
for reservation in reservations:
print(reservation.statut)
color = None
@@ -118,6 +119,8 @@ def liste_reservation(request:HttpRequest):
else:
color = "#dc3545"
+ print(dict(Reservation.TYPE_CHOICES).get(reservation.salle))
+
liste_reservation.append({
"guid": reservation.pk,
"title": dict(Reservation.TYPE_CHOICES).get(reservation.salle),
diff --git a/requirements.txt b/requirements.txt
index 7f19068..b4b76bc 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,4 +1,3 @@
-<<<<<<< HEAD
asgiref==3.11.1
certifi==2026.4.22
charset-normalizer==3.4.7
@@ -21,159 +20,3 @@ tzdata==2026.2
urllib3==2.6.3
webservices==0.7
webservices.naudit==0.7.2
-python-decouple
-gunicorn
-=======
-anyio==4.13.0
-argon2-cffi==25.1.0
-argon2-cffi-bindings==25.1.0
-arrow==1.4.0
-asgiref==3.11.0
-asttokens==3.0.1
-async-lru==2.3.0
-attrs==26.1.0
-Automat==20.2.0
-babel==2.18.0
-bcrypt==3.2.0
-beautifulsoup4==4.14.3
-bleach==6.3.0
-blinker==1.4
-certifi==2026.2.25
-cffi==2.0.0
-chardet==4.0.0
-charset-normalizer==3.4.7
-click==8.0.3
-cloud-init==25.3
-colorama==0.4.4
-comm==0.2.3
-command-not-found==0.3
-configobj==5.0.6
-constantly==15.1.0
-cryptography==3.4.8
-dbus-python==1.2.18
-debugpy==1.8.20
-decorator==5.2.1
-defusedxml==0.7.1
-distlib==0.4.0
-distro==1.7.0
-distro-info==1.1+ubuntu0.2
-Django==5.2.10
-et_xmlfile==2.0.0
-exceptiongroup==1.3.1
-executing==2.2.1
-fastjsonschema==2.21.2
-filelock==3.20.3
-fqdn==1.5.1
-h11==0.16.0
-httpcore==1.0.9
-httplib2==0.20.2
-httpx==0.28.1
-hyperlink==21.0.0
-idna==3.3
-importlib-metadata==4.6.4
-incremental==21.3.0
-ipykernel==7.2.0
-ipython==8.39.0
-isoduration==20.11.0
-jedi==0.19.2
-jeepney==0.7.1
-Jinja2==3.0.3
-json5==0.14.0
-jsonpatch==1.32
-jsonpointer==2.0
-jsonschema==4.26.0
-jsonschema-specifications==2025.9.1
-jupyter-events==0.12.0
-jupyter-lsp==2.3.1
-jupyter_client==8.8.0
-jupyter_core==5.9.1
-jupyter_server==2.17.0
-jupyter_server_terminals==0.5.4
-jupyterlab==4.5.6
-jupyterlab_pygments==0.3.0
-jupyterlab_server==2.28.0
-keyring==23.5.0
-lark==1.3.1
-launchpadlib==1.10.16
-lazr.restfulclient==0.14.4
-lazr.uri==1.0.6
-MarkupSafe==2.0.1
-matplotlib-inline==0.2.1
-mistune==3.2.0
-more-itertools==8.10.0
-nbclient==0.10.4
-nbconvert==7.17.0
-nbformat==5.10.4
-nest-asyncio==1.6.0
-netifaces==0.11.0
-notebook_shim==0.2.4
-numpy==2.2.6
-oauthlib==3.2.0
-openpyxl==3.1.5
-overrides==7.7.0
-packaging==26.0
-pandas==2.3.3
-pandocfilters==1.5.1
-parso==0.8.6
-pexpect==4.9.0
-platformdirs==4.5.1
-prometheus_client==0.24.1
-prompt_toolkit==3.0.52
-psutil==7.2.2
-ptyprocess==0.7.0
-pure_eval==0.2.3
-pyasn1==0.4.8
-pyasn1-modules==0.2.1
-pycparser==3.0
-pycurl==7.44.1
-Pygments==2.20.0
-PyGObject==3.42.1
-PyHamcrest==2.0.2
-PyJWT==2.3.0
-pyOpenSSL==21.0.0
-pyparsing==2.4.7
-pyrsistent==0.18.1
-pyserial==3.5
-python-apt==2.4.0+ubuntu4.1
-python-dateutil==2.9.0.post0
-python-json-logger==4.1.0
-pytz==2022.1
-PyYAML==5.4.1
-pyzmq==27.1.0
-referencing==0.37.0
-requests==2.33.1
-rfc3339-validator==0.1.4
-rfc3986-validator==0.1.1
-rfc3987-syntax==1.1.0
-rpds-py==0.30.0
-SecretStorage==3.3.1
-Send2Trash==2.1.0
-service-identity==18.1.0
-six==1.16.0
-soupsieve==2.8.3
-sqlparse==0.5.5
-ssh-import-id==5.11
-stack-data==0.6.3
-systemd-python==234
-terminado==0.18.1
-tinycss2==1.4.0
-tomli==2.4.1
-tornado==6.5.5
-traitlets==5.14.3
-Twisted==22.1.0
-typing_extensions==4.15.0
-tzdata==2025.3
-ubuntu-pro-client==8001
-ufw==0.36.1
-unattended-upgrades==0.1
-uri-template==1.3.0
-urllib3==1.26.5
-virtualenv==20.13.0+ds
-wadllib==1.3.6
-wcwidth==0.6.0
-webcolors==25.10.0
-webencodings==0.5.1
-websocket-client==1.9.0
-zipp==1.0.0
-zope.interface==5.4.0
->>>>>>> c28b14f (clean: remove pycache from tracking)
diff --git a/staticfiles/gestion_conge/js/index.js b/staticfiles/gestion_conge/js/index.js
index 2fd742e..5eb1de6 100644
--- a/staticfiles/gestion_conge/js/index.js
+++ b/staticfiles/gestion_conge/js/index.js
@@ -3,6 +3,7 @@ const $ = (element) => document.getElementById(element);
const url_liste_conge_attente = $("liste-demande-conges").dataset.url
const tableau_liste_demande_conge = new Tabulator("#liste-demande-conges", {
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -16,6 +17,9 @@ const tableau_liste_demande_conge = new Tabulator("#liste-demande-conges", {
=======
layout : "fitColumns",
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+ // layout : "fitColumns",
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
columns: [
{"title": "Nom et Prénom", "field": "prenom_nom"},
{"title": "Date de début", "field": "date_debut", formatter:"datetime", formatterParams:{
@@ -27,6 +31,7 @@ const tableau_liste_demande_conge = new Tabulator("#liste-demande-conges", {
outputFormat:"dd/MM/yy",
}},
{"title": "Type de congé", "field": "type"},
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -40,6 +45,9 @@ const tableau_liste_demande_conge = new Tabulator("#liste-demande-conges", {
=======
{"title": "Date de la demande", "field": "date_demande"},
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+ {"title": "Date de la demande", "field": "date_demande", responsive: 1},
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
{"title": "Validation par supérieur hiérarchique", "field": "validation_hierarchique", formatter:"tickCross", formatterParams :{
allowEmpty : true ,
}},
@@ -48,6 +56,7 @@ const tableau_liste_demande_conge = new Tabulator("#liste-demande-conges", {
}},
],
pagination: true,
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -61,6 +70,9 @@ const tableau_liste_demande_conge = new Tabulator("#liste-demande-conges", {
=======
paginationSize: 5
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+ paginationSize: 5,
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
})
const bouton_demande_conges = $("bouton-demande-conge");
diff --git a/staticfiles/gestion_employe/js/index.js b/staticfiles/gestion_employe/js/index.js
index 53a0b74..bfed7f5 100644
--- a/staticfiles/gestion_employe/js/index.js
+++ b/staticfiles/gestion_employe/js/index.js
@@ -12,6 +12,7 @@ const tableau_liste_employe = new Tabulator("#tableau_liste_employe", {
// ajaxURL: url_liste_employe,
pagination: true,
paginationSize: 10,
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -22,6 +23,9 @@ const tableau_liste_employe = new Tabulator("#tableau_liste_employe", {
>>>>>>> f6b90e7 (Verification du statut avant la creation d'un contrat)
=======
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+ responsiveLayout : "hide"
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
})
fetch(url_liste_employe)
diff --git a/staticfiles/gestion_employe/js/mon_profil.js b/staticfiles/gestion_employe/js/mon_profil.js
index c872808..032642b 100644
--- a/staticfiles/gestion_employe/js/mon_profil.js
+++ b/staticfiles/gestion_employe/js/mon_profil.js
@@ -16,6 +16,7 @@ const tableau_certificat = new Tabulator("#tableau-certificat", {
],
ajaxURL: url_certificat,
})
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -53,28 +54,35 @@ enregistrerProfil.addEventListener("click", (e) => {
=======
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
const enregistrerProfil = $("enregistrerProfil");
+
enregistrerProfil.addEventListener("click", (e) => {
+
const url = $("information-personnelles").dataset.url;
const csrftoken = document.querySelector("[name='csrfmiddlewaretoken']").value;
+
+ 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);
+
fetch(url, {
- method: 'POST',
+ method: "POST",
headers: {
- 'Content-Type': 'application/json',
- 'X-CSRFToken': csrftoken
+ "X-CSRFToken": csrftoken
},
- body: JSON.stringify({
- "nom": $("nom").value,
- "prenom": $("prenom").value,
- "email": $("email").value,
- "telephone": $("telephone").value,
- "adresse": $("adresse").value,
- "sexe": $("sexe").value,
- "date_naissance": $("date_naissance").value,
- })
+ body: formData
})
.then(response => response.json())
.then(data => alert(data.message))
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
})
@@ -85,3 +93,7 @@ enregistrerProfil.addEventListener("click", (e) => {
=======
})
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+ .catch(error => console.error("Erreur:", error));
+});
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
diff --git a/staticfiles/gestion_projet/js/enregistrement_bailleur.js b/staticfiles/gestion_projet/js/enregistrement_bailleur.js
index aab677f..fd00399 100644
--- a/staticfiles/gestion_projet/js/enregistrement_bailleur.js
+++ b/staticfiles/gestion_projet/js/enregistrement_bailleur.js
@@ -1,4 +1,5 @@
const btnEnregistrerBailleur = document.getElementById('btnEnregistrerBailleur');
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -9,6 +10,9 @@ let table;
>>>>>>> f6b90e7 (Verification du statut avant la creation d'un contrat)
=======
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+let table;
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
btnEnregistrerBailleur.addEventListener('click', function() {
const form = document.getElementById('formBailleur');
@@ -30,9 +34,12 @@ btnEnregistrerBailleur.addEventListener('click', function() {
alert('Ce bailleur existe déjà dans la base de données.');
}
});
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
+=======
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
});
document.addEventListener("DOMContentLoaded", function () {
@@ -61,6 +68,7 @@ document.addEventListener("DOMContentLoaded", function () {
});
+<<<<<<< HEAD
=======
});
>>>>>>> 0047b1f (Ajout de la prise en charge des photos de profil)
@@ -70,3 +78,5 @@ document.addEventListener("DOMContentLoaded", function () {
=======
});
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
diff --git a/staticfiles/gestion_salle/js/index.js b/staticfiles/gestion_salle/js/index.js
index f12c563..04a50d6 100644
--- a/staticfiles/gestion_salle/js/index.js
+++ b/staticfiles/gestion_salle/js/index.js
@@ -15,6 +15,7 @@ const calendrier = Schedule(document.getElementById('planning-reservation'), {
.then(response => response.json())
.then(data => {
currentReservationId = data.id_reservation;
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -27,6 +28,8 @@ const calendrier = Schedule(document.getElementById('planning-reservation'), {
=======
console.log(data);
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
$("id_reservation_detail").value = data.id_reservation;
$("id_reservation_refus").value = data.id_reservation;
$("id_reservation_zoom").value = data.id_reservation;
@@ -41,6 +44,7 @@ const calendrier = Schedule(document.getElementById('planning-reservation'), {
$("besoin_ordinateur").checked=data.besoin_ordinateur;
$("lien_zoom").value=data.lien_zoom;
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -65,6 +69,12 @@ const calendrier = Schedule(document.getElementById('planning-reservation'), {
>>>>>>> f6b90e7 (Verification du statut avant la creation d'un contrat)
=======
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+ if (data.besoin_zoom === false){
+ $("lien_zoom_container").className = "d-none";
+ }
+
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
})
}
});
@@ -110,20 +120,26 @@ $("bouton-annuler").addEventListener("click", (e) => {
const csrf = document.querySelector("[name=csrfmiddlewaretoken]").value;
const url_annuler = $("formulaire-details").dataset.urlannuler;
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
+=======
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
console.log("URL d'annulation :");
console.log($("formulaire-details"))
e.preventDefault();
+<<<<<<< HEAD
=======
>>>>>>> 0047b1f (Ajout de la prise en charge des photos de profil)
=======
>>>>>>> f6b90e7 (Verification du statut avant la creation d'un contrat)
=======
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
fetch(
url_annuler,
{
@@ -174,6 +190,7 @@ if($("refuserReservation")){
const url = e.currentTarget.dataset.lienrefus;
const idRes = $("id_reservation_detail").value;
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -186,6 +203,11 @@ if($("refuserReservation")){
>>>>>>> f6b90e7 (Verification du statut avant la creation d'un contrat)
=======
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+ console.log(idRes);
+ e.preventDefault();
+
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
fetch(url, {
method: "POST",
headers: {
@@ -217,6 +239,7 @@ const tableau_reservation_attente = new Tabulator("#tableau-reservation-attente"
tableau_reservation_attente.on("rowClick", (row, rowData) => {
const data = rowData.getData();
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -232,10 +255,13 @@ tableau_reservation_attente.on("rowClick", (row, rowData) => {
console.log(data);
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
if(data.besoin_zoom === false){
$("lien_zoom_container").className = 'd-none';
}
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -256,6 +282,9 @@ tableau_reservation_attente.on("rowClick", (row, rowData) => {
>>>>>>> f6b90e7 (Verification du statut avant la creation d'un contrat)
=======
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+ const id_user = $("current-user-id").dataset.userid;
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
$("id_reservation_detail").value = data.id;
$("id_reservation_refus").value = data.id;
$("id_reservation_zoom").value = data.id;
@@ -263,6 +292,7 @@ tableau_reservation_attente.on("rowClick", (row, rowData) => {
$("employe").value=data.employe;
$("salle").value=data.salle;
$("statut-reservation").innerHTML=data.statut;
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
@@ -277,19 +307,27 @@ tableau_reservation_attente.on("rowClick", (row, rowData) => {
=======
$("date_evenement").value=data.date_debut;
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+ $("date_debut").value = data.date_debut;
+ $("date_fin").value = data.date_fin;
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
$("heure_debut").value=data.heure_debut;
$("heure_fin").value=data.heure_fin;
$("motif_reservation").value=data.motif_reservation;
$("besoin_zoom").checked=data.besoin_zoom;
$("besoin_ordinateur").checked=data.besoin_ordi;
$("lien_zoom").value=data.lien_zoom;
+<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
<<<<<<< HEAD
+=======
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
if (id_user != data.employe_id){
$("bouton-annuler").className = "d-none";
}
+<<<<<<< HEAD
=======
$("motif_refus").value=data.motif_refus;
>>>>>>> 0047b1f (Ajout de la prise en charge des photos de profil)
@@ -299,6 +337,8 @@ tableau_reservation_attente.on("rowClick", (row, rowData) => {
=======
$("motif_refus").value=data.motif_refus;
>>>>>>> 6026af5 (Bug : Affichages des conges)
+=======
+>>>>>>> 3b587d2a1a4376551b4b694a38e0e24a1c4cf4c5
const modal = new bootstrap.Modal($("modalDetailReservation"));
bootstrap.Modal.getOrCreateInstance($("modalReservationAttente")).hide();