NextEvents.html 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122
  1. {namespace v=FluidTYPO3\Vhs\ViewHelpers}
  2. {namespace ot=Opentalent\OtTemplating\ViewHelpers}
  3. <f:comment><!-- Next events --></f:comment>
  4. <f:comment><!-- Get the events page' uid if the page is found --></f:comment>
  5. <v:variable.set value="{ot:eventsPage.getId()}" name="eventsPageUid"/>
  6. <v:variable.set value="{ot:eventsPage.getId(children: 1)}" name="childrenEventsPageUid"/>
  7. <div class="ot-box ot-events">
  8. <div class="events-list">
  9. <header>
  10. <f:if condition="{fromParents}">
  11. <f:then>
  12. <h3><f:translate key="next-events-of-our-network"/></h3>
  13. </f:then>
  14. <f:else>
  15. <f:if condition="{fromChildren}">
  16. <f:then>
  17. <h3><f:translate key="next-events-of-our-structures"/></h3>
  18. </f:then>
  19. <f:else>
  20. <h3><f:translate key="our-next-events"/></h3>
  21. </f:else>
  22. </f:if>
  23. </f:else>
  24. </f:if>
  25. </header>
  26. <ot:events.getNext as="eventsCollection"
  27. organizationId="{settings.organizationId}"
  28. limit="{settings.eventsLimit}"
  29. period="{settings.eventsPeriod}"
  30. fromParents="{fromParents}"
  31. fromChildren="{fromChildren}">
  32. <f:for each="{eventsCollection.members}" as="event">
  33. <div class="event-card">
  34. <div class="event-poster">
  35. <f:if condition="{event.image}">
  36. <f:then>
  37. <img src='{event.image}' alt="poster" />
  38. </f:then>
  39. <f:else>
  40. <f:image src="EXT:ot_templating/Resources/Public/media/event-default.jpg" alt="poster" />
  41. </f:else>
  42. </f:if>
  43. </div>
  44. <div class="event-summary">
  45. <span class="event-name">
  46. {event.name}
  47. </span>
  48. <span class="event-date">
  49. {f:format.date(date: event.datetimeStart,
  50. format: "\l\e d-m-Y \à H\hi")}
  51. </span>
  52. <f:if condition="{eventsPageUid} > 0">
  53. <f:then>
  54. <span class="event-see">
  55. <f:if condition="{fromParents}||{fromChildren}">
  56. <f:then>
  57. <a href="https://{event.subDomain}.opentalent.fr"
  58. target="_blank">
  59. <f:translate key="more-informations"/>
  60. </a>
  61. </f:then>
  62. <f:else if="{eventsPageUid} > 0">
  63. <f:link.page pageUid="{eventsPageUid}"
  64. additionalParams="{eventId: event.id}">
  65. <f:translate key="more-informations"/>
  66. </f:link.page>
  67. </f:else>
  68. <f:else>
  69. </f:else>
  70. </f:if>
  71. </span>
  72. </f:then>
  73. </f:if>
  74. </div>
  75. </div>
  76. </f:for>
  77. <f:if condition="{eventsCollection.totalItems} == 0">
  78. <f:then>
  79. <span class="no-events">
  80. <f:translate key="no-events-for-next-weeks"/>
  81. </span>
  82. </f:then>
  83. </f:if>
  84. </ot:events.getNext>
  85. <footer>
  86. <f:if condition="{fromParents}">
  87. <f:then>
  88. </f:then>
  89. <f:else if="{fromChildren}">
  90. <f:if condition="{childrenEventsPageUid} > 0"><f:then>
  91. <div class="event-see-all">
  92. <f:link.page pageUid="{childrenEventsPageUid}">
  93. <f:translate key="see-all-events"/>
  94. </f:link.page>
  95. </div>
  96. </f:then></f:if>
  97. </f:else>
  98. <f:else>
  99. <f:if condition="{eventsPageUid} > 0"><f:then>
  100. <div class="event-see-all">
  101. <f:link.page pageUid="{eventsPageUid}">
  102. <f:translate key="see-all-events"/>
  103. </f:link.page>
  104. </div>
  105. </f:then></f:if>
  106. </f:else>
  107. </f:if>
  108. </footer>
  109. </div>
  110. </div>