diff --git a/library/page.py b/library/page.py
index 5a47f15..630d4fd 100644
--- a/library/page.py
+++ b/library/page.py
@@ -2,8 +2,11 @@
import flask
+from requests import get
+from icalendar import Calendar
+import datetime
from flask import render_template
-from rnrfeed.rnrfeeder import getevents
+from rnrfeed.rnrfeeder import getevents, getlatestevent
from csvparser.csvparser import (
getlicenses,
getpublications,
@@ -47,6 +50,32 @@ def pastevents():
return render_template("pastevents.html", events=events)
+@APP.route("/upcoming")
+def latestevent():
+ """show upcoming or latest event and book recommendations"""
+ event = getlatestevent()
+ return render_template("upcomingevent.html", event=event)
+
+
+@APP.context_processor
+def upcoming_or_latest():
+ upcoming = True
+ ics = get("https://varia.zone/events.ics").text
+ gcal = Calendar.from_ical(ics)
+ eventtimes = [
+ c.get("dtstart").dt for c in gcal.walk()
+ if c.name == "VEVENT"
+ and "Read & Repair" in c.get("summary")
+ ]
+ now = datetime.datetime.now()
+ eventtimes.sort()
+ eventtimes.reverse()
+ if now > eventtimes[0]:
+ upcoming = False
+
+ return dict(upcoming=upcoming)
+
+
if __name__ == "__main__":
APP.debug = True
APP.run(port=5000)
diff --git a/library/rnrfeed/rnrfeeder.py b/library/rnrfeed/rnrfeeder.py
index bee04bd..c393281 100644
--- a/library/rnrfeed/rnrfeeder.py
+++ b/library/rnrfeed/rnrfeeder.py
@@ -15,6 +15,12 @@ def getentries():
return entries
+def getlatestevent():
+ for entry in feed.entries:
+ if "readrepair" in entry.category:
+ return entry
+
+
def gettitles():
titles = []
for entry in feed.entries:
diff --git a/library/static/css/style.css b/library/static/css/style.css
index 734a88d..57b36df 100644
--- a/library/static/css/style.css
+++ b/library/static/css/style.css
@@ -75,6 +75,16 @@ body:after {
margin-top: 3em;
}
+#latestevent {
+ text-align: center;
+ color: #DD4F77;
+}
+
+#upcomingevent {
+ text-align: center;
+ color: #404d81;
+}
+
.event {
margin: 0 1em 1em;
max-width: 90%;
diff --git a/library/static/svg/bookmark-latest.svg b/library/static/svg/bookmark-latest.svg
index b75f396..9a12d56 100644
--- a/library/static/svg/bookmark-latest.svg
+++ b/library/static/svg/bookmark-latest.svg
@@ -74,7 +74,7 @@
id="tspan21"
x="98.764069"
y="245.41867"
- style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:42.6667px;font-family:Carlito;-inkscape-font-specification:Carlito;text-align:center;text-anchor:middle;fill:#ffffff">UpcomingLatest
-
-
-
diff --git a/library/templates/base.html b/library/templates/base.html
index 04fa801..95e5735 100644
--- a/library/templates/base.html
+++ b/library/templates/base.html
@@ -18,7 +18,11 @@
VARIA LIBRARY COLLECTION
-
+ {% if upcoming %}
+
+ {% else %}
+
+ {% endif %}
{% block main %}
{% endblock main %}