mailingdetail.template.html.twig 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. <!DOCTYPE html>
  2. <html lang="fr">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>{{ event.name }}</title>
  6. </head>
  7. <body style="margin:0; padding:0; background-color:#f0f4f8;">
  8. <center style="width:100%; background-color:#f0f4f8;">
  9. <table role="presentation" border="0" cellpadding="0" cellspacing="0" width="100%">
  10. <tr>
  11. <td align="center">
  12. <table role="presentation" border="0" cellpadding="0" cellspacing="0" width="600" style="background-color:#ffffff;">
  13. <!-- HEADER -->
  14. <tr>
  15. <td style="padding:20px; text-align:center; background-color:#0066cc; color:#ffffff; font-family:Arial, Helvetica, sans-serif;">
  16. <h1 style="margin:0; font-size:24px;">✨ {{ event.name }} ✨</h1>
  17. </td>
  18. </tr>
  19. <!-- INTRO -->
  20. <tr>
  21. <td style="padding:20px; font-family:Arial, Helvetica, sans-serif; font-size:15px; color:#333333; line-height:1.6;">
  22. <p>
  23. {{ event.description }}
  24. </p>
  25. </td>
  26. </tr>
  27. {% for event in events %}
  28. <!-- ÉVÉNEMENT -->
  29. <tr>
  30. <td style="border-bottom:1px solid #e0e0e0;">
  31. <!-- Image -->
  32. <img src="{{ ('/events/' ~ (event.picture ?: 'placeholder.webp'))|base64img }}" alt="{{ event.name }}" width="600" height="200"
  33. style="display:block; border:0; margin:0; padding:0;">
  34. <!-- Contenu -->
  35. <table role="presentation" border="0" cellpadding="0" cellspacing="0" width="100%">
  36. <tr>
  37. <td style="padding:20px;">
  38. <!-- Panneau infos -->
  39. <table role="presentation" border="0" cellpadding="0" cellspacing="0" width="100%">
  40. <tr>
  41. <td style="background:#e6f2ff; padding:15px; border-radius:6px;">
  42. <h2 style="margin:0; font-size:18px; font-family:Arial, Helvetica, sans-serif; color:#004080;">
  43. {{ event.name }}
  44. </h2>
  45. <p style="margin:8px 0 4px 0; font-size:14px; color:#004080; font-family:Arial, Helvetica, sans-serif;">
  46. <strong>Lieu :</strong> A COMPLETER
  47. </p>
  48. <p style="margin:4px 0; font-size:14px; color:#004080; font-family:Arial, Helvetica, sans-serif;">
  49. <strong>Date :</strong> du {{ event.startOn|date('d/m/Y \\à H:i') }} au {{ event.endOn|date('d/m/Y \\à H:i') }}
  50. </p>
  51. </td>
  52. </tr>
  53. </table>
  54. <!-- Texte -->
  55. <p style="margin:12px 0 16px 0; font-size:14px; color:#555555; line-height:1.5; font-family:Arial, Helvetica, sans-serif;">
  56. {{ event.description }}
  57. </p>
  58. {% set authors = [] %}
  59. {% for party in event.parties %}
  60. {% if party.gamemasterIsAuthor and party.gamemaster not in authors %}
  61. {% set authors = authors|merge([party.gamemaster]) %}
  62. {% endif %}
  63. {% endfor %}
  64. {% if authors|length > 0 %}
  65. <p style="margin:12px 0 16px 0; font-size:16px; color:#333333; line-height:1.5; font-family:Arial, Helvetica, sans-serif;"><strong>Les auteur(rice)s présent(e)s</strong></p>
  66. {% for gamemaster in authors %}
  67. <table role="presentation" cellpadding="0" cellspacing="0" border="0" width="100%"
  68. style="background:#f5f5f5; border-radius:6px; margin-bottom:16px;">
  69. <tr>
  70. <td valign="top" style="padding:12px;vertical-align: top;" width="128">
  71. <img src="{{ ('/gamemasters/' ~ (gamemaster.picture ?: 'placeholder.webp'))|base64img }}" alt="{{ gamemaster.preferedName }}" width="128" style="display:block; border-radius:6px;">
  72. </td>
  73. <td style="padding:12px; vertical-align:top;">
  74. <p style="margin:0; font-size:16px; color:#004080; font-family:Arial, Helvetica, sans-serif;">
  75. <strong>{{ gamemaster.preferedName }}</strong>
  76. </p>
  77. <p style="margin:6px 0 0 0; font-size:13px; color:#555555; line-height:1.4; font-family:Arial, Helvetica, sans-serif;">
  78. {{ gamemaster.description }}
  79. </p>
  80. <p style="margin:6px 0 0 0; font-size:13px; color:#555555; line-height:1.4; font-family:Arial, Helvetica, sans-serif;">
  81. Auteur(rice) de : {{ gamemaster.authorOfGames|map(game => game.name)|join(', ') }}
  82. </p>
  83. </td>
  84. </tr>
  85. </table>
  86. {% endfor %}
  87. {% endif %}
  88. <p style="margin:12px 0 16px 0; font-size:14px; color:#555555; line-height:1.5; font-family:Arial, Helvetica, sans-serif;">
  89. Vous pouvez vous inscrire dès à présent à nos animations !
  90. </p>
  91. <!-- Boutons -->
  92. <table role="presentation" cellpadding="0" cellspacing="0" border="0" align="center">
  93. <tr>
  94. <td align="center" style="border-radius:4px; background:#0066cc; padding:10px 18px;">
  95. <a href="{{ app_url ~ path('app_main_booking', {'id': event.id, 'view': 'pictures'})}}" style="font-size:14px; color:#ffffff; text-decoration:none; display:inline-block; font-family:Arial, Helvetica, sans-serif;">
  96. Voir le détail et m'inscrire
  97. </a>
  98. </td>
  99. <td style="width:10px;"></td>
  100. <td align="center" style="border-radius:4px; background:#0099cc; padding:10px 18px;">
  101. <a href="{{ app_url|replace({'https://' : 'webcal://'}) ~ path('app_main_ics', {'id': event.id}) }}" style="font-size:14px; color:#ffffff; text-decoration:none; display:inline-block; font-family:Arial, Helvetica, sans-serif;">Ajouter à mon agenda</a>
  102. </td>
  103. </tr>
  104. </table>
  105. {% endfor %}
  106. </td>
  107. </tr>
  108. </table>
  109. </td>
  110. </tr>
  111. <!-- FOOTER -->
  112. <tr>
  113. <td style="padding:20px; text-align:center; font-size:12px; font-family:Arial, Helvetica, sans-serif; color:#888888;">
  114. Réalisé à partir de ORGASSO : une application pour tous vos événements rôlistiques !
  115. </td>
  116. </tr>
  117. </table>
  118. </td>
  119. </tr>
  120. </table>
  121. </center>
  122. </body>
  123. </html>