event.ics.twig 930 B

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