20 lines
442 B
Elixir
20 lines
442 B
Elixir
|
defmodule Eventos.Export.ICalendar do
|
||
|
@moduledoc """
|
||
|
Export an event to iCalendar format
|
||
|
"""
|
||
|
|
||
|
alias Eventos.Events.Event
|
||
|
|
||
|
@spec export_event(%Event{}) :: String
|
||
|
def export_event(%Event{} = event) do
|
||
|
events = [%ICalendar.Event{
|
||
|
summary: event.title,
|
||
|
dtstart: event.begins_on,
|
||
|
dtend: event.ends_on,
|
||
|
description: event.description
|
||
|
}]
|
||
|
%ICalendar{events: events}
|
||
|
|> ICalendar.to_ics()
|
||
|
end
|
||
|
end
|