Fix : URL correcte pour notifications de brief validé depuis PDF + redirect briefs vides

Problème 1 : Les notifications de brief validé depuis un PDF renvoyaient vers
/projects/xxx/client-brief au lieu de l'URL complète avec dialog et fileIndex.

Problème 2 : Les URL /projects/xxx/client-brief pour des briefs non créés
affichaient une page vide au lieu de rediriger vers le kanban.

Solutions :
- Stocker validationDialogUri lors de la validation du brief
- Utiliser ce dialogUri dans ContentProvider et Notifications.vue
- Rediriger vers le projet parent si brief vide et non validé

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
isUnknown 2026-01-15 10:44:30 +01:00
parent a7d315942a
commit 6ff59e9b07
6 changed files with 46 additions and 7 deletions

View file

@ -60,10 +60,10 @@ class ContentProvider implements NotificationProvider
? 'Brief client'
: 'Brief étendu';
$notifications[] = [
$notification = [
'id' => 'content-' . (string) $step->uuid(),
'type' => 'content',
'text' => "Nouveau $stepLabel validé",
'text' => 'Nouveau ' . strtolower($stepLabel) . ' validé',
'author' => [
'uuid' => $authorUuid,
'name' => $step->validatedByName()->value() ?? '',
@ -86,6 +86,13 @@ class ContentProvider implements NotificationProvider
'isRead' => in_array($userUuid, $readby),
'_briefUri' => $step->uri(),
];
// Ajouter le dialogUri si présent (validation depuis PDF)
if ($step->validationDialogUri()->isNotEmpty()) {
$notification['dialogUri'] = $step->validationDialogUri()->value();
}
$notifications[] = $notification;
}
return $notifications;