How to use iCal-data from Google Calendar in Jekyll?


#1

I use Jekyll to show my next workshops. Currently I use a YML-data file and parse the file. It works perfect. But I want to simplfy the calendar because I use Google Calendar. With a public Google Calendar I get an ical-URL with the according data of that calendar. I would like to parse the data.

Unfortunately I can’t program ruby.

Does anyone know of a solution which

a) grabs the ical-file from its URL
b) parses it
c) so I can use it in Jekyll

???

My current solution

YAML data example › Liquid For Loop beneath

- title:        'Mit Wordpress in zwei Tagen zur eigenen Website'
  description:  'Nach diesem Workshop besitzen Sie eine eigene Website, die Sie selbst betreuen und mit Inhalten füllen können. Dabei unterteilt sich der Workshop in zwei Phasen: eine Vorbereitungs- und eine Umsetzungsphase. Während Sie im ersten Schritt ein Konzept und eine Strategie für Ihre Internet-Präsenz entwickeln, setzen Sie im zweiten Schritt das Projekt in Wordpress gezielt um. Damit Sie genügend Zeit haben, sämtliche Materialien für die Umsetzung zusammenzustellen und vorzubereiten, findet der Workshop an zwei auseinanderliegenden Terminen statt.'
  date:         '2018.01.26'
  date2:        '2018.02.16'
  url_title_1:  'WILA Bildungszentrum'
  url_1:        'http://www.wilabonn.de/bildungszentrum.html'

- title:        'Suchmaschinenoptimierung - Texte schreiben fürs Internet'
  description:  'Wie schreibe ich Texte, damit sie in Suchmaschinen weit nach oben kommen? Wie erreiche ich, dass meine Texte nicht nur gelesen, sondern auch in sozialen Medien geteilt werden? Was zeichnet einen guten Internet-Text eigentlich aus? Und was muss ich bei der Suchmaschinenoptimierung beachten? Hier lernen Sie, wie Sie attraktive und verständliche Nachrichten oder Pressetexte schreiben und anschließend für das Internet optimieren.'
  date:         '2018.03.09'
  url_title_1:  'WILA Bildungszentrum'
  url_1:        'http://www.wilabonn.de/bildungszentrum.html'

- title:        'Mit Wordpress in zwei Tagen zur eigenen Website'
  description:  'Nach diesem Workshop besitzen Sie eine eigene Website, die Sie selbst betreuen und mit Inhalten füllen können. Dabei unterteilt sich der Workshop in zwei Phasen: eine Vorbereitungs- und eine Umsetzungsphase. Während Sie im ersten Schritt ein Konzept und eine Strategie für Ihre Internet-Präsenz entwickeln, setzen Sie im zweiten Schritt das Projekt in Wordpress gezielt um. Damit Sie genügend Zeit haben, sämtliche Materialien für die Umsetzung zusammenzustellen und vorzubereiten, findet der Workshop an zwei auseinanderliegenden Terminen statt.'
  date:         '2018.04.30'
  date2:        '2018.05.14'
  url_title_1:  'WILA Bildungszentrum'
  url_1:        'http://www.wilabonn.de/bildungszentrum.html'
{% assign termine = site.data.termine | sort:"date" | reverse %}
{% for seminar in termine %}
<div id="seminar-{{ seminar.date | remove: '.' | strip }}" style="margin-bottom: 50px;">
    <h4 class="subheader">{% if seminar.date2 %}{{ seminar.date | split: "." | reverse | join: "." }} bis {{ seminar.date2 | split: "." | reverse | join: "." }}{% else %}{{ seminar.date | split: "." | reverse | join: "." }}{% endif %}</h4>
    <h3>{{ seminar.title }}</h3>
    {% if seminar.description %}<p>{{ seminar.description }}</p>{% endif %}


    {% if seminar.url_title_1 %}

        <p>Veranstalter: <a href="{{ seminar.url_1 }}">{{ seminar.url_title_1 }}</a></p>
        {% if seminar.url_title_2 %}
            <p><a class="button small radius" target="_blank" href="{{ seminar.url_2 }}">{{ seminar.url_title_2 }}</a></p>
        {% endif %}

    {% endif %}

</div>
{% endfor %}