event.ics.twig 917 B

12345678910111213141516171819202122
  1. BEGIN:VCALENDAR
  2. VERSION:2.0
  3. PRODID:-//hacksw/handcal//NONSGML v1.0//EN
  4. {% for period in event.getPeriods %}
  5. BEGIN:VEVENT
  6. UID:{{ period.getStartOn|date('Ymd\\THis') }}Z-{{ event.id}}@orgasso.net
  7. DTSTART:{{ period.getStartOn|date('Ymd\\THis') }}Z
  8. DTEND:{{ period.getEndOn|date('Ymd\\THis') }}Z
  9. SUMMARY:{{ event.name }}
  10. {% set description_lines = [] %}
  11. {% for party in event.getParties %}
  12. {% set line = party.getGame.getName ~ '\nHoraire : le ' ~ party.getStartOn|date('d/m') ~ ' de ' ~ party.getStartOn|date('H:i') ~ ' à ' ~ party.getEndOn|date('H:i') ~ '\n' ~ party.getGame.getDescription %}
  13. {% set description_lines = description_lines|merge([line]) %}
  14. {% endfor %}
  15. {% set description = (event.description ~ '\n' ~ description_lines|join('\n'))|replace({',':'\,',';':'\;','\\':'\\\\'}) %}
  16. DESCRIPTION:{{ description }}
  17. URL:{{ url('app_main_booking', {id: event.id}) }}
  18. END:VEVENT
  19. {% endfor %}
  20. END:VCALENDAR