Browse Source

fix bug when a inexisting event is requested

Olivier Massot 4 years ago
parent
commit
3f0a902212

+ 1 - 1
ot_core/Classes/Domain/Repository/EventRepository.php

@@ -18,7 +18,7 @@ class EventRepository extends BaseApiRepository
      * @return object Event
      * @throws ApiRequestException
      */
-    public function findById(int $id): object
+    public function findById(int $id)
     {
         $params = ["filter[where][id]" => $id];
         return $this->getApiFirstRecord($params);

+ 7 - 1
ot_templating/Classes/ViewHelpers/Events/GetByIdViewHelper.php

@@ -72,9 +72,15 @@ class GetByIdViewHelper extends OtAbstractViewHelper {
         } catch (ApiRequestException $e) {
             $this->logger->error(sprintf('API Error: %s', $e->getMessage()));
             $event = new Event();
-            $event->setName("<Erreur: impossible d'afficher l'évènement>");
+            $event->setName("<Erreur>");
             $event->setDescription("Une erreur s'est produite et ne permet pas l'affichage de cet évènement. Veuillez nous excusez pour la gêne occasionnée.");
         }
+
+        if ($event === null) {
+            $event = new Event();
+            $event->setName("(Évènement supprimé)");
+        }
+
         $variables = [$as => $event];
         return $this->renderChildrenWithVariables($variables);
     }