Commit graph

67 commits

Author SHA1 Message Date
isUnknown
bb71da081b Ajout du système de cache pour les notifications
Problème : Les notifications étaient collectées à chaque requête sur
projects.json, causant des problèmes de performance et de mémoire.

Solution : Mise en cache des notifications par projet et par utilisateur
- Nouvelle méthode getNotificationsLight() dans ProjectPage avec cache
- Cache invalidé automatiquement via les hooks existants (page/file update)
- Cache par utilisateur pour inclure le isRead spécifique

Performance : Les notifications sont calculées une fois puis servies depuis
le cache jusqu'à ce qu'un changement survienne (commentaire, brief, etc.)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-15 11:42:20 +01:00
isUnknown
0a980603a4 Ajout de collectLight() pour optimiser le chargement du listing des projets
Problème : projects.json.php causait un dépassement mémoire en collectant
toutes les notifications complètes (avec author, location, text, etc.) pour
tous les projets.

Solution : Nouvelle méthode collectLight() qui ne retourne que les données
minimales nécessaires au frontend pour afficher les indicateurs :
- id, type, isRead, date
- location.project.uri (pour le filtrage)

Les détails complets sont toujours chargés dans project.json.php individuel.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-15 11:18:59 +01:00
isUnknown
0250dc1487 Fix : problème de mémoire lors du chargement des projets
Problème : projects.json.php collectait les notifications dérivées pour TOUS
les projets d'un coup, ce qui causait un dépassement de mémoire (HTTP 500).

Solution :
- projects.json.php : Ne collecte plus les notifications (retourne [])
- project.json.php : Collecte les notifications uniquement pour le projet affiché

Les notifications seront chargées à la demande quand on ouvre un projet,
pas lors du listing initial.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-15 11:16:17 +01:00
isUnknown
a7d315942a Refonte du système de notifications : passage aux notifications dérivées
Remplace le système de notifications stockées par un système de providers
qui dérivent les notifications des données existantes (commentaires, réponses,
demandes de projet, demandes de rendez-vous, validations de brief).

- Ajout du NotificationCollector et de l'interface NotificationProvider
- Création de 5 providers : Comment, Reply, ProjectRequest, AppointmentRequest, Content
- Métadonnées de notifications stockées directement sur les entités source
- Nouvelles routes mark-as-read et mark-all-read
- Mise à jour du frontend pour le nouveau système
- Route de migration pour les données existantes

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-15 10:31:31 +01:00
isUnknown
443369ee23 front > account : start 2025-05-02 17:58:50 +02:00
isUnknown
de52c5e6be route /login managed through vue router 2025-04-30 16:09:24 +02:00
isUnknown
5b3549068b create login page 2025-04-30 15:27:01 +02:00
isUnknown
636a289d5b improve error handling 2025-03-26 17:02:23 +01:00
isUnknown
37a978763c #128 - add position check 2025-02-19 09:38:15 +01:00
isUnknown
c73b9d671b disable optimization request btn if already sent 2025-02-05 11:22:30 +01:00
isUnknown
a963f8aff6 Fix project isDTLEnabled 2025-01-27 18:28:26 +01:00
isUnknown
8e12988961 DTL page : fix dynamic background 2025-01-27 15:39:13 +01:00
isUnknown
30fbc0e4e8 kanban > steps : add dtl indicator 2025-01-23 17:39:40 +01:00
isUnknown
c75c5e1d8a project creation request notification working 2025-01-23 16:16:51 +01:00
isUnknown
25afb36e00 fix 2025-01-23 14:39:02 +01:00
isUnknown
ea6c304072 DTL panel - add thumb 2025-01-23 13:44:52 +01:00
isUnknown
28804ceba1 save DTL 2025-01-23 12:23:14 +01:00
isUnknown
0923c9ec01 design to light - add specific indicators 2025-01-22 17:08:32 +01:00
isUnknown
c2314e6b8e design to light button and panel working without indicators 2025-01-22 13:25:34 +01:00
isUnknown
5a80cfaa81 create design to light page structure and content 2025-01-21 17:50:59 +01:00
isUnknown
0b472988a2 comments working 2025-01-15 16:27:08 +01:00
isUnknown
375bed1d01 comment notification : dynamize target uri 2025-01-15 16:27:08 +01:00
isUnknown
9222069ef5 create and delete notification for a project working 2025-01-15 16:27:08 +01:00
isUnknown
8c6e21c707 start linking notification to project based of project page UUID 2025-01-15 16:27:08 +01:00
isUnknown
cd04c232a6 custom brief > do not automatically redirect to PDF dialog if there is a PDF 2025-01-07 18:34:04 +01:00
isUnknown
272a5898fe #83 - make proposal step optional 2025-01-07 11:54:53 +01:00
isUnknown
2909608b85 #42 - set first collection images 2024-12-17 16:13:16 +01:00
isUnknown
b4bc8e80fe fix brief and project without client 2024-12-09 18:32:41 +01:00
isUnknown
cf6ff8cbbb kanban : fix extended brief step 2024-12-04 14:34:38 +01:00
isUnknown
62a159fa9b change user project assignment system 2024-11-21 16:51:35 +01:00
isUnknown
837b741c47 home (projects) : dynamize steps 2024-11-21 11:27:14 +01:00
isUnknown
e9561e85c2 create steps redirections to dialogs 2024-11-20 08:39:26 +01:00
isUnknown
984c8b7737 prepare extended brief 2024-11-19 13:59:06 +01:00
isUnknown
3477a6f2fd add redirections projects > home 2024-11-18 14:53:26 +01:00
isUnknown
26369ad71b improve project dialog system
- project model : refactor getSteps() method
- create dialog store
- create DialogWrapper component that open the dialog corresponding to the URL query param
2024-11-16 11:33:28 +01:00
isUnknown
0fad9cf1d2 show only authorized projects 2024-11-11 17:12:26 +01:00
isUnknown
801db754d2 dynamize project 2024-11-05 14:26:37 +01:00
isUnknown
44361e614d redesign user data api 2024-10-28 17:50:49 +01:00
isUnknown
965c015c2c test 2024-10-16 17:32:36 +02:00
isUnknown
95064a39cd clientBriefImages => moodboard 2024-10-16 15:03:20 +02:00
isUnknown
4b71e9cf04 merge 2024-10-09 16:32:10 +02:00
isUnknown
c0db3f5238 dynamize image details description 2024-10-08 18:38:23 +02:00
isUnknown
d465fb3de7 resolve conflict 2024-10-08 17:31:18 +02:00
isUnknown
d4fe38e65a resolve conflict 2024-10-08 17:30:56 +02:00
isUnknown
fa34aed357 merge 2024-10-08 17:29:59 +02:00
isUnknown
13b6b371d7 Progression vue brief client
- l'étape courante est déterminée en fonction des données de la page
- les images sont ajoutées au champ
- les images déjà ajoutées sont affichées directement
- changement donnée briefClient -> clientBrief (cohérence avec le nommage front)
2024-10-02 15:29:31 +02:00
isUnknown
769639b241 add client brief page 2024-09-26 19:14:20 +02:00
isUnknown
8da0fb0e36 project blueprint - optional steps working 2024-09-26 17:21:24 +02:00
isUnknown
595c275100 project blueprint - add optional steps 2024-09-26 15:46:13 +02:00
isUnknown
13592a5869 fix inspiration selector 2024-09-25 15:44:17 +02:00