From f4b061f7fd1cbad364efff322013184eba7b60a3 Mon Sep 17 00:00:00 2001 From: Keunes <11229646+keunes@users.noreply.github.com> Date: Sun, 10 May 2026 23:34:02 +0200 Subject: [PATCH 01/15] Replace website ics file with links to calendar --- _config.yml | 1 + _data/event-links.yml | 1 - _data/ics-timezones.yml | 16 --- _events/0_A meeting template.md | 58 +++++----- _events/community-meeting.md | 20 +--- _events/needs-decision.md | 14 +-- _i18n/en.yml | 3 +- _i18n/en/general/event-sidebar.md | 2 +- _i18n/en/general/events-add-calendar-modal.md | 4 +- _includes/ICS-modal.html | 10 +- _includes/share.html | 2 +- _layouts/event.html | 36 +++++-- assets/js/copy-url.js | 16 +-- events-with-RDATE.ics | 102 ------------------ events.ics | 94 ---------------- 15 files changed, 74 insertions(+), 305 deletions(-) delete mode 100644 _data/ics-timezones.yml delete mode 100644 events-with-RDATE.ics delete mode 100644 events.ics diff --git a/_config.yml b/_config.yml index 992dad4ec..829b2e3b1 100644 --- a/_config.yml +++ b/_config.yml @@ -10,6 +10,7 @@ mastodon_username: AntennaPod # Mastodon server: do not include protocol, domain only mastodon_server: fosstodon.org bluesky_username: AntennaPod.org +calendar_base_url: "https://calendar.antennapod.org" # Build settings future: true diff --git a/_data/event-links.yml b/_data/event-links.yml index 51b6db68e..fe298c0fb 100644 --- a/_data/event-links.yml +++ b/_data/event-links.yml @@ -2,7 +2,6 @@ - key: ICS icon: calendar-plus text: events.links.add-calendar - url: /events.ics - key: more-information icon: external-link-square-alt text: events.links.more-information diff --git a/_data/ics-timezones.yml b/_data/ics-timezones.yml deleted file mode 100644 index fcc60916c..000000000 --- a/_data/ics-timezones.yml +++ /dev/null @@ -1,16 +0,0 @@ -# used for ics file -Europe/Brussels: |- - BEGIN:DAYLIGHT - TZOFFSETFROM:+0100 - TZOFFSETTO:+0200 - TZNAME:CEST - DTSTART:19700329T020000 - RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU - END:DAYLIGHT - BEGIN:STANDARD - TZOFFSETFROM:+0200 - TZOFFSETTO:+0100 - TZNAME:CET - DTSTART:19701025T030000 - RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU - END:STANDARD diff --git a/_events/0_A meeting template.md b/_events/0_A meeting template.md index 7b5ce81a4..e37bf6c1a 100644 --- a/_events/0_A meeting template.md +++ b/_events/0_A meeting template.md @@ -1,49 +1,39 @@ --- title: Awesome get-together on topic X 😎 -# Required. Displayed both on the event detail page and in the ICS calendar event. -summary: -# Required. Displayed on the Events overview page. -image: -# Optional. Displayed on Events overview page and the event detail page. +# Required. Displayed on the event detail page. permalink: -# Optional. "/events/:slug" recommended for recurring events, to avoid that the event gets a date-based URL. -uid: -# Required. Don't edit after publishing. Get one here: https://www.random.org/strings/?num=1&len=20&digits=on&upperalpha=on&unique=on&format=html&rnd=new -sequence: -# Optional. Defaults to 0 if left empty. Should be increased with 1 on every big event edit. -timezone: -# Optional. Timezone used for the event. If not specified, UTC will be used. View & add timezones in _data/ics-timezones.yml -datetime-start: -# Required. Format: yyyy-mm-dd hh:mm. To find the meeting time in UTC, use https://www.timeanddate.com/worldclock/converter.html?p1=1440 -datetime-end: -# Required. Format: yyyy-mm-dd hh:mm. If recurring, this end time is applied also to all occurrences of the generated recurrence set +# Optional. "/events/:slug" recommended for recurring events, to avoid a date-based URL. recurring: # Optional. Can be "yes" recurrence-text: # Required if "recurring: yes". Displayed on Events overview page and the event detail page. View & add strings in _i18n/en.yml -recurrence-rule: -# Required if "recurring: yes". iCAL recurrence rule. Create recurrence rule here: https://icalendar.org/rrule-tool.html -# If used, the UNTIL rule part MUST be specified as a date with UTC time. -recurrence-exceptions: -# Optional. List of dates on which the event is not taking place. Put starting dates that match the recurrence pattern. Time of original meeting will be used & cancelled. Format: -# - yyyy-mm-dd -# - yyyy-mm-dd -recurrence-additions: -# List of date-times on which the event is additionally taking place. Format: -# - start: yyyy-mm-dd hh:mm -# end: yyyy-mm-dd hh:mm -# - start: yyyy-mm-dd hh:mm -# end: yyyy-mm-dd hh:mm +datetime-start: +# Required. Format: yyyy-mm-dd hh:mm. To find the meeting time in UTC, use https://www.timeanddate.com/worldclock/converter.html?p1=1440 +timezone: +# Optional. Timezone used for the event (e.g. Europe/Brussels). If not specified, UTC will be used. Used to complement the time HTML tag on the event page. +summary: +# Required. Displayed on the Events overview page. +image: +# Optional. Displayed on Events overview page and the event detail page. location: # Required. Must be an osm.org relation ID or the text 'online'. -location-label: -# Recommended. Human-readable description of the location (e.g. address) for ICS. If not provided, link to meeting-room or to OSM will be used. -more-information: -# Optional. Must be a URL. + +# Links on the events page: meeting-room: # Optional. Must be a URL. Link displayed on event page if "location: online". +more-information: +# Optional. Must be a URL. blog-post: # Optional. Must be the path of the blog post, starting with the year (e.g. 2022/10/translation-coordinator). +recording: +# Optional. Must be a URL. + +# Calendar links: +calendar-path: +# Required for recurring events. Path under https://calendar.antennapod.org, for example "community-call". +uid: +# Required for one-off events. Davis/Sabre event UID used to build the direct .ics download URL. + --- -Event description goes here. Displayed on the event detail page, and used for the body of the ICS calendar event. +Event description goes here. Displayed on the event detail page. diff --git a/_events/community-meeting.md b/_events/community-meeting.md index 5c5377132..a1cbd7434 100644 --- a/_events/community-meeting.md +++ b/_events/community-meeting.md @@ -2,29 +2,11 @@ title: Monthly community meeting ☎ πŸŽ™ summary: Our monthly meeting to discuss anything AntennaPod. Join us! permalink: /events/:slug -uid: 0fc58c3c-517f-4467-b0e3-7e036cf1420c -sequence: 4 +calendar-path: community-call timezone: Europe/Brussels datetime-start: 2022-04-09 18:00 -datetime-end: 2022-04-09 19:00 recurring: yes recurrence-text: every-2nd-saturday -recurrence-rule: FREQ=MONTHLY;BYDAY=SA;BYSETPOS=2 -recurrence-exceptions: -- 2022-10-08 -- 2023-06-10 -- 2023-07-08 -- 2023-08-12 -- 2023-09-09 -- 2024-08-10 -- 2025-11-08 -recurrence-additions: -- start: 2022-10-22 16:00 - end: 2022-10-22 17:00 -- start: 2023-06-17 18:00 - end: 2023-06-17 19:00 -- start: 2023-09-21 18:00 - end: 2023-09-21 19:00 location: online location-label: AntennaPod's Jitsi Meet more-information: https://forum.antennapod.org/t/monthly-community-call/1869 diff --git a/_events/needs-decision.md b/_events/needs-decision.md index 695a56e6b..29c88bef5 100644 --- a/_events/needs-decision.md +++ b/_events/needs-decision.md @@ -2,23 +2,11 @@ title: "Needs: Decision - AntennaPod UX discussions" summary: A bi-weekly meeting where core contributors discuss feature requests & make tough choices. permalink: /events/:slug -uid: TDL9-28GB-50YV-P6X4-D48Y -sequence: -# Optional. Defaults to 0 if left empty. Should be increased with 1 on every big event edit. +calendar-path: needs-decision timezone: Europe/Brussels datetime-start: 2024-02-14 20:30 -datetime-end: 2024-02-14 21:30 recurring: yes recurrence-text: 2nd-4th-wednesday -recurrence-rule: FREQ=WEEKLY;INTERVAL=2;BYDAY=WE -recurrence-exceptions: -- 2024-07-02 -recurrence-additions: -# List of date-times on which the event is additionally taking place. -- start: 2023-12-28 21:00 - end: 2023-12-28 22:30 -- start: 2024-07-10 21:00 - end: 2024-07-10 22:30 location: online more-information: https://github.com/AntennaPod/AntennaPod/issues?q=state%3Aopen%20label%3A%22Needs%3A%20Decision%22 meeting-room: https://meet.antennapod.org/needsdecision diff --git a/_i18n/en.yml b/_i18n/en.yml index f7d100066..b0491c312 100644 --- a/_i18n/en.yml +++ b/_i18n/en.yml @@ -292,7 +292,8 @@ events: upcoming-events: "Upcoming Events" past-events: "Past Events" download-ics: "Download ICS file" - copy-url: "Copy calendar URL" + subscribe-event: "Copy event URL" + subscribe-all: "Copy URL for all events" announce-add-calendar: "Always want to have the latest events and update community call information at hand? Then subscribe to our calendar in your favorite app via the 'Add to calendar' link!" links: add-calendar: "Add to calendar" diff --git a/_i18n/en/general/event-sidebar.md b/_i18n/en/general/event-sidebar.md index 12b66c121..4ecdbfbeb 100644 --- a/_i18n/en/general/event-sidebar.md +++ b/_i18n/en/general/event-sidebar.md @@ -6,4 +6,4 @@ Do you know of an event in your neighbourhood and would love to meet up with Ant [Propose a meet-up](https://forum.antennapod.org) -Add our events to your calendar +Add our events to your calendar \ No newline at end of file diff --git a/_i18n/en/general/events-add-calendar-modal.md b/_i18n/en/general/events-add-calendar-modal.md index 65b6539a3..336bd8c18 100644 --- a/_i18n/en/general/events-add-calendar-modal.md +++ b/_i18n/en/general/events-add-calendar-modal.md @@ -1,3 +1 @@ -Always want to have the latest community call dates and times in your calendar? Then copy the URL and add it as a remote calendar in your calendar app. - -Hope to see you! +Want to subscribe to just this gathering, or all our calls and meetings? \ No newline at end of file diff --git a/_includes/ICS-modal.html b/_includes/ICS-modal.html index ef11a736e..29ee627f0 100644 --- a/_includes/ICS-modal.html +++ b/_includes/ICS-modal.html @@ -9,9 +9,13 @@ - + \ No newline at end of file diff --git a/_includes/share.html b/_includes/share.html index 8e2abdee6..256814c0e 100644 --- a/_includes/share.html +++ b/_includes/share.html @@ -1,7 +1,7 @@
{%- assign author = site.data.authors[page.author] %}

{% t generic.share %}

- nowunix %} {% assign status = 'upcoming' %} {% else %} {% assign status = 'past' %} {% endif %} -{% endif %} +{%- endif -%}
@@ -45,13 +53,23 @@

{{ page.title }}

{% for link in site.data.event-links %} - {% if page[link.key] or link.key == 'ICS' %}{% unless page.location != 'online' and link.key == 'meeting-room' %}{% unless status == 'past' and link.key == 'meeting-room' %}{% unless status == 'past' and link.key == 'ICS' %}{% assign info_counter = info_counter | plus:1 %}{% endunless %}{% endunless %}{% endunless %}{% endif %} + {% if page[link.key] or link.key == 'ICS' %} + {% unless page.location != 'online' and link.key == 'meeting-room' %} + {% unless status == 'past' and link.key == 'meeting-room' %} + {% unless link.key == 'ICS' and page.recurring != true and page.uid == nil %} + {% unless status == 'past' and link.key == 'ICS' %} + {% assign info_counter = info_counter | plus:1 %} + {% endunless %} + {% endunless %} + {% endunless %} + {% endunless %} + {% endif %} {% endfor %} {% assign info_counter = info_counter | minus:1 %} @@ -86,4 +104,4 @@

{{ page.title }}

-{% include ICS-modal.html %} +{% include ICS-modal.html recurring=page.recurring ics=page.uid event_subscription_url=event_subscription_url event_ics_url=event_ics_url calendar_subscription_url=calendar_subscription_url %} diff --git a/assets/js/copy-url.js b/assets/js/copy-url.js index 373183631..ab342802d 100644 --- a/assets/js/copy-url.js +++ b/assets/js/copy-url.js @@ -1,9 +1,9 @@ -function copyUrl() { - let url = (event.target.value ==null) ? document.location.href:event.target.value; +function copyUrl(event) { + event?.preventDefault(); + const url = event?.currentTarget?.getAttribute('data-copy-url') + ?? event?.currentTarget?.getAttribute('value') + ?? event?.currentTarget?.value + ?? document.location.href; - navigator.clipboard.writeText(url).then(function() { - console.log('Copied!'); - }, function() { - console.log('Copy error') - }); -}; + navigator.clipboard.writeText(url); +} diff --git a/events-with-RDATE.ics b/events-with-RDATE.ics deleted file mode 100644 index cc95f5fdd..000000000 --- a/events-with-RDATE.ics +++ /dev/null @@ -1,102 +0,0 @@ ---- -layout: null ---- -BEGIN:VCALENDAR -CALSCALE:GREGORIAN -VERSION:2.0 -PRODID:-//AntennaPod//Website events section 0.1//EN -LAST-MODIFIED:{{ 'now' | date: "%Y%m%dT%H%M00Z"}} -NAME:AntennaPod - -{%- assign recurringevents = site.events | sort: 'datetime-start' | reverse | where:"recurring", true %} -{%- assign normalevents = site.events | sort: 'datetime-start' | reverse | where:"recurring", false %} -{%- assign events = recurringevents | concat: normalevents %} - -{%- for event in events -%}{% if event.unlisted != true %} -BEGIN:VEVENT -DTSTAMP:{{ event.datetime-start | date: "%Y%m%dT%H%M00Z" }}{% if event.sequence %} -SEQUENCE:{{ event.sequence }}{% endif %} -UID:{{ event.uid | upcase }} -DTSTART -{%- if event.timezone -%};TZID={{ event.timezone }}{% endif %}: -{{- event.datetime-start | date: "%Y%m%dT%H%M00" }}{% unless event.timezone %}Z{% endunless %} -DTEND -{%- if event.timezone -%};TZID={{ event.timezone }}{% endif %}: -{{- event.datetime-end | date: "%Y%m%dT%H%M00" }}{% unless event.timezone %}Z{% endunless %} -STATUS:CONFIRMED -SUMMARY:{{ event.title }} - -{%- capture description %} -DESCRIPTION: -{{- event.content | remove_last: '

' | replace: '

','\n\n' | strip_html | replace:',','\,' | replace:':','\:' | replace:';','\;' | strip_newlines }} -{%- if event.location == 'online' %}{% if event.location-label %}\n\n{{ event.meeting-room }}{% endif %}{% endif %} -{%- endcapture %} -{%- assign description = description | replace: '\n\n\n\n','\n\n' %} - -{%- assign descriptionChars = description.size %} -{%- assign descriptionTotalRows = descriptionChars | divided_by: 74.00 | ceil %} -{%- assign descriptionChars = descriptionChars | plus: descriptionTotalRows %} -{%- assign descriptionTotalRows = descriptionChars | divided_by: 74.00 | ceil %} -{%- assign descriptionChars = descriptionChars | minus: descriptionTotalRows %} -{%- assign start = 0 %} -{%- assign separator = '\||/' %} -{%- assign descriptionWorker = '' %} - -{%- for rowToBe in (1..descriptionTotalRows) %} - {%- if descriptionChars <= 74 %} - {%- assign descriptionWorker = description %} - {%- break %} - {%- else %} - {%- assign descriptionRow = description | slice: start, 73 | prepend: ' ' | append: separator %} - {%- assign descriptionWorker = descriptionWorker | append: descriptionRow %} - {%- assign start = start | plus: 73 %} - {%- endif %} -{%- endfor %} - -{%- if descriptionChars > 74 %} - {%- assign descriptionWorker = descriptionWorker | lstrip %} - {%- assign lastChar = descriptionWorker.size | minus: separator.size %} - {%- assign descriptionWorker = descriptionWorker | slice: 0, lastChar %} - {%- assign descriptionArray = descriptionWorker | split: separator %} -{%- endif %} - -{%- for descriptionLine in descriptionArray %} -{{ descriptionLine }} -{%- endfor %} -LOCATION:{% if event.location-label %}{{ event.location-label }} -{%- elsif event.location == 'online' %}{{ event.meeting-room }} -{%- else %}{{ site.data.event-links[location].url }}{{ event.location }} -{%- endif %}{% if event.location == 'online' %} -URL:{{ event.meeting-room }} -CONFERENCE:{{ event.meeting-room }} -{%- endif %}{% if event.recurring == true %} -RRULE:{{ event.recurrence-rule -}} -{%- endif %}{% if event.recurrence-exceptions %} -EXDATE -{%- if event.timezone -%};TZID={{ event.timezone }}{% endif %}: -{%- for exception in event.recurrence-exceptions %} -{{- exception | date: "%Y%m%d" }}T{{ event.datetime-start | date: "%H%M00" }}{% unless event.timezone %}Z{% endunless %} -{%- unless forloop.last %},{% endunless %} -{%- endfor -%} -{%- endif %}{% if event.recurrence-additions %} -RDATE;VALUE=PERIOD -{%- if event.timezone -%};TZID={{ event.timezone }}{% endif %}: -{%- for extra-occurrence in event.recurrence-additions %} -{{- extra-occurrence.start | date: "%Y%m%dT%H%M00" }}{% unless event.timezone %}Z{% endunless %}/ -{{- extra-occurrence.end | date: "%Y%m%dT%H%M00" }}{% unless event.timezone %}Z{% endunless %} -{%- unless forloop.last %},{% endunless %} -{%- endfor -%} -{%- endif %} -END:VEVENT -{%- endif %} -{%- endfor %}{%- for timezone in site.data.ics-timezones %} -BEGIN:VTIMEZONE -TZID:{{ timezone[0] }} -{%- comment %} Following is unfortunately necessary to ensure that CRLF is used for EOL, as Jekyll uses LF when printing an array value in build process on Unix machine {% endcomment %} -{%- assign timezoneDefinitionArray = timezone[1] | split: ' ' %} -{%- for definitionLine in timezoneDefinitionArray %} -{{ definitionLine }} -{%- endfor %} -END:VTIMEZONE -{%- endfor %} -END:VCALENDAR diff --git a/events.ics b/events.ics deleted file mode 100644 index a4ee19f88..000000000 --- a/events.ics +++ /dev/null @@ -1,94 +0,0 @@ ---- -layout: null ---- -BEGIN:VCALENDAR -CALSCALE:GREGORIAN -VERSION:2.0 -PRODID:-//AntennaPod//Website events section 0.1//EN -LAST-MODIFIED:{{ 'now' | date: "%Y%m%dT%H%M00Z"}} -NAME:AntennaPod - -{%- assign recurringevents = site.events | sort: 'datetime-start' | reverse | where:"recurring", true %} -{%- assign normalevents = site.events | sort: 'datetime-start' | reverse | where:"recurring", false %} -{%- assign events = recurringevents | concat: normalevents %} - -{%- for event in events -%}{% if event.unlisted != true %} -BEGIN:VEVENT -DTSTAMP:{{ event.datetime-start | date: "%Y%m%dT%H%M00Z" }}{% if event.sequence %} -SEQUENCE:{{ event.sequence }}{% endif %} -UID:{{ event.uid | upcase }} -DTSTART -{%- if event.timezone -%};TZID={{ event.timezone }}{% endif %}: -{{- event.datetime-start | date: "%Y%m%dT%H%M00" }}{% unless event.timezone %}Z{% endunless %} -DTEND -{%- if event.timezone -%};TZID={{ event.timezone }}{% endif %}: -{{- event.datetime-end | date: "%Y%m%dT%H%M00" }}{% unless event.timezone %}Z{% endunless %} -STATUS:CONFIRMED -SUMMARY:{{ event.title }} - -{%- capture description %} -DESCRIPTION: -{{- event.content | remove_last: '

' | replace: '

','\n\n' | strip_html | replace:',','\,' | replace:':','\:' | replace:';','\;' | strip_newlines }} -{%- if event.location == 'online' %}{% if event.location-label %}\n\n{{ event.meeting-room }}{% endif %}{% endif %} -{%- endcapture %} -{%- assign description = description | replace: '\n\n\n\n','\n\n' %} - -{%- assign descriptionChars = description.size %} -{%- assign descriptionTotalRows = descriptionChars | divided_by: 74.00 | ceil %} -{%- assign descriptionChars = descriptionChars | plus: descriptionTotalRows %} -{%- assign descriptionTotalRows = descriptionChars | divided_by: 74.00 | ceil %} -{%- assign descriptionChars = descriptionChars | minus: descriptionTotalRows %} -{%- assign start = 0 %} -{%- assign separator = '\||/' %} -{%- assign descriptionWorker = '' %} - -{%- for rowToBe in (1..descriptionTotalRows) %} - {%- if descriptionChars <= 74 %} - {%- assign descriptionWorker = description %} - {%- break %} - {%- else %} - {%- assign descriptionRow = description | slice: start, 73 | prepend: ' ' | append: separator %} - {%- assign descriptionWorker = descriptionWorker | append: descriptionRow %} - {%- assign start = start | plus: 73 %} - {%- endif %} -{%- endfor %} - -{%- if descriptionChars > 74 %} - {%- assign descriptionWorker = descriptionWorker | lstrip %} - {%- assign lastChar = descriptionWorker.size | minus: separator.size %} - {%- assign descriptionWorker = descriptionWorker | slice: 0, lastChar %} - {%- assign descriptionArray = descriptionWorker | split: separator %} -{%- endif %} - -{%- for descriptionLine in descriptionArray %} -{{ descriptionLine }} -{%- endfor %} -LOCATION:{% if event.location-label %}{{ event.location-label }} -{%- elsif event.location == 'online' %}{{ event.meeting-room }} -{%- else %}{{ site.data.event-links[location].url }}{{ event.location }} -{%- endif %}{% if event.location == 'online' %} -URL:{{ event.meeting-room }} -CONFERENCE:{{ event.meeting-room }} -{%- endif %}{% if event.recurring == true %} -RRULE:{{ event.recurrence-rule -}} -{%- endif %}{% if event.recurrence-exceptions %} -EXDATE -{%- if event.timezone -%};TZID={{ event.timezone }}{% endif %}: -{%- for exception in event.recurrence-exceptions %} -{{- exception | date: "%Y%m%d" }}T{{ event.datetime-start | date: "%H%M00" }}{% unless event.timezone %}Z{% endunless %} -{%- unless forloop.last %},{% endunless %} -{%- endfor -%} -{%- endif %} -END:VEVENT -{%- endif %} -{%- endfor %}{%- for timezone in site.data.ics-timezones %} -BEGIN:VTIMEZONE -TZID:{{ timezone[0] }} -{%- comment %} Following is unfortunately necessary to ensure that CRLF is used for EOL, as Jekyll uses LF when printing an array value in build process on Unix machine {% endcomment %} -{%- assign timezoneDefinitionArray = timezone[1] | split: ' ' %} -{%- for definitionLine in timezoneDefinitionArray %} -{{ definitionLine }} -{%- endfor %} -END:VTIMEZONE -{%- endfor %} -END:VCALENDAR From 3b79b9cf7a15ee8af21ecd13225fbfb21ad0101e Mon Sep 17 00:00:00 2001 From: Keunes <11229646+keunes@users.noreply.github.com> Date: Sun, 10 May 2026 23:52:47 +0200 Subject: [PATCH 02/15] Cleanup and fixes --- _data/event-links.yml | 2 +- _i18n/en.yml | 2 +- .../{ICS-modal.html => add-to-calendar-modal.html} | 14 +++++++------- _layouts/event.html | 14 +++++++------- events/index.html | 2 +- 5 files changed, 17 insertions(+), 17 deletions(-) rename _includes/{ICS-modal.html => add-to-calendar-modal.html} (58%) diff --git a/_data/event-links.yml b/_data/event-links.yml index fe298c0fb..ffdc58b10 100644 --- a/_data/event-links.yml +++ b/_data/event-links.yml @@ -1,5 +1,5 @@ # used for event layout -- key: ICS +- key: add-to-calendar icon: calendar-plus text: events.links.add-calendar - key: more-information diff --git a/_i18n/en.yml b/_i18n/en.yml index b0491c312..0d8472de5 100644 --- a/_i18n/en.yml +++ b/_i18n/en.yml @@ -294,7 +294,7 @@ events: download-ics: "Download ICS file" subscribe-event: "Copy event URL" subscribe-all: "Copy URL for all events" - announce-add-calendar: "Always want to have the latest events and update community call information at hand? Then subscribe to our calendar in your favorite app via the 'Add to calendar' link!" + announce-add-calendar: "Always want to have the most up-to-date event information at hand? Subscribe to our calendar in your favorite app via the 'Add to calendar' link!" links: add-calendar: "Add to calendar" more-information: "More information" diff --git a/_includes/ICS-modal.html b/_includes/add-to-calendar-modal.html similarity index 58% rename from _includes/ICS-modal.html rename to _includes/add-to-calendar-modal.html index 29ee627f0..faf2b8b22 100644 --- a/_includes/ICS-modal.html +++ b/_includes/add-to-calendar-modal.html @@ -1,19 +1,19 @@ -