mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
notification: add more variable in twig template
This commit is contained in:
parent
3a207b2c5d
commit
a8fe049ecd
@ -12,11 +12,19 @@ declare(strict_types=1);
|
||||
namespace Chill\ActivityBundle\Notification;
|
||||
|
||||
use Chill\ActivityBundle\Entity\Activity;
|
||||
use Chill\ActivityBundle\Repository\ActivityRepository;
|
||||
use Chill\MainBundle\Entity\Notification;
|
||||
use Chill\MainBundle\Notification\NotificationHandlerInterface;
|
||||
|
||||
final class ActivityNotificationRenderer implements NotificationHandlerInterface
|
||||
final class ActivityNotificationHandler implements NotificationHandlerInterface
|
||||
{
|
||||
private ActivityRepository $activityRepository;
|
||||
|
||||
public function __construct(ActivityRepository $activityRepository)
|
||||
{
|
||||
$this->activityRepository = $activityRepository;
|
||||
}
|
||||
|
||||
public function getTemplate()
|
||||
{
|
||||
return '@ChillActivity/Activity/showInNotification.html.twig';
|
||||
@ -24,7 +32,10 @@ final class ActivityNotificationRenderer implements NotificationHandlerInterface
|
||||
|
||||
public function getTemplateData(Notification $notification)
|
||||
{
|
||||
return ['notification' => $notification];
|
||||
return [
|
||||
'notification' => $notification,
|
||||
'activity' => $this->activityRepository->find($notification->getRelatedEntityId()),
|
||||
];
|
||||
}
|
||||
|
||||
public function supports(Notification $notification, array $options = []): bool
|
@ -1,2 +1,10 @@
|
||||
|
||||
<a href="{{ path('chill_activity_activity_show', {'id': notification.relatedEntityId }) }}">Go to Activity</a>
|
||||
{# available variables: notification, activity #}
|
||||
{% if activity is not null %}
|
||||
{% if is_granted('CHILL_ACTIVITY_SEE', activity) %}
|
||||
<a href="{{ path('chill_activity_activity_show', {'id': activity.id }) }}">Go to Activity</a>
|
||||
{% else %}
|
||||
you are not allowed to see it details. This is the minimal data: {{ activity.id }}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
You get notified of an activity which does not exists any more.
|
||||
{% endif %}
|
||||
|
@ -14,9 +14,17 @@ namespace Chill\PersonBundle\Notification;
|
||||
use Chill\MainBundle\Entity\Notification;
|
||||
use Chill\MainBundle\Notification\NotificationHandlerInterface;
|
||||
use Chill\PersonBundle\Entity\AccompanyingPeriod;
|
||||
use Chill\PersonBundle\Repository\AccompanyingPeriodRepository;
|
||||
|
||||
final class AccompanyingPeriodNotificationRenderer implements NotificationHandlerInterface
|
||||
final class AccompanyingPeriodNotificationHandler implements NotificationHandlerInterface
|
||||
{
|
||||
private AccompanyingPeriodRepository $accompanyingPeriodRepository;
|
||||
|
||||
public function __construct(AccompanyingPeriodRepository $accompanyingPeriodRepository)
|
||||
{
|
||||
$this->accompanyingPeriodRepository = $accompanyingPeriodRepository;
|
||||
}
|
||||
|
||||
public function getTemplate()
|
||||
{
|
||||
return 'ChillPersonBundle:AccompanyingPeriod:showInNotification.html.twig';
|
||||
@ -24,7 +32,10 @@ final class AccompanyingPeriodNotificationRenderer implements NotificationHandle
|
||||
|
||||
public function getTemplateData(Notification $notification)
|
||||
{
|
||||
return ['notification' => $notification];
|
||||
return [
|
||||
'notification' => $notification,
|
||||
'period' => $this->accompanyingPeriodRepository->find($notification->getRelatedEntityId()),
|
||||
];
|
||||
}
|
||||
|
||||
public function supports(Notification $notification)
|
@ -1,3 +1,12 @@
|
||||
<a href="{{ path('chill_person_accompanying_course_index', {'accompanying_period_id': notification.relatedEntityId }) }}">
|
||||
Go to Acc. period.
|
||||
</a>
|
||||
{# variables availables: notification, period. #}
|
||||
{% if period is not null %}
|
||||
{% if is_granted('CHILL_PERSON_ACCOMPANYING_PERIOD_SEE', period) %}
|
||||
<a href="{{ path('chill_person_accompanying_course_index', {'accompanying_period_id': notification.relatedEntityId }) }}">
|
||||
Go to Acc. period.
|
||||
</a>
|
||||
{% else %}
|
||||
You are getting a notification for a period you are not allowed to see. This is the minimal details: {{ period.id }}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<div>You are getting a notification for a period which does not exists any more</div>
|
||||
{% endif %}
|
||||
|
@ -1,4 +1,4 @@
|
||||
services:
|
||||
Chill\PersonBundle\Notification\AccompanyingPeriodNotificationRenderer:
|
||||
Chill\PersonBundle\Notification\AccompanyingPeriodNotificationHandler:
|
||||
autowire: true
|
||||
autoconfigure: true
|
||||
|
Loading…
x
Reference in New Issue
Block a user