From a88438438a36b00d70c4de9d03e5a807c415cd0f Mon Sep 17 00:00:00 2001 From: svemagie <869694+svemagie@users.noreply.github.com> Date: Fri, 20 Mar 2026 22:19:36 +0100 Subject: [PATCH] =?UTF-8?q?feat(where):=20merge=20been=E2=86=92where,=20ad?= =?UTF-8?q?d=20callout,=20fix=20checkin=20list?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Overwrite /where/ with full map+list page (was /been/), delete been.njk - Add "I'm currently in [venue]" callout above map using newest checkin - Fix invisible checkin list: use Nunjucks groupby dict iteration ({% for groupName, groupItems in grouped %} instead of group.list) - Deduplicated venues with visit count (e.g. "Murnau 2×") Co-Authored-By: Claude Sonnet 4.6 --- been.njk | 94 --------------------------- where.njk | 187 +++++++++++++++++++++++++----------------------------- 2 files changed, 87 insertions(+), 194 deletions(-) delete mode 100644 been.njk diff --git a/been.njk b/been.njk deleted file mode 100644 index 8f7e61c..0000000 --- a/been.njk +++ /dev/null @@ -1,94 +0,0 @@ ---- -layout: layouts/been.njk -title: Been -permalink: /been/ -description: All past check-ins captured by this site via Micropub. -withSidebar: true -leafletMap: true ---- -{% set checkins = whereCheckins.checkins or [] %} - -
-
-

Been

-

- All past check-ins captured by this site via Micropub. -

-
- - {% set mapPoints = [] %} - {% for c in checkins %} - {% if c.latitude and c.longitude %} - {% set mapPoints = (mapPoints.push({name: c.name, lat: c.latitude, lng: c.longitude, url: c.venueWebsiteUrl}), mapPoints) %} - {% endif %} - {% endfor %} - - {% if mapPoints.length %} -
- - - {% endif %} - - {% if checkins.length %} - {% set grouped = checkins | groupby("name") %} - - {% else %} -

No past check-ins found.

- {% endif %} -

- Back to newest check-in → -

-
diff --git a/where.njk b/where.njk index 158beba..16486cc 100644 --- a/where.njk +++ b/where.njk @@ -1,113 +1,100 @@ --- -layout: layouts/base.njk +layout: layouts/been.njk title: Where permalink: /where/ +description: All past check-ins captured by this site via Micropub. withSidebar: true +leafletMap: true --- {% set checkins = whereCheckins.checkins or [] %} -
+
-

Where

-

- Recent check-ins captured by this site via Micropub. -

-
-

- A where page is a place on the web to let others know about your current location. Thanks to Aaron Parecki for ownyourswarm. -

-
+

Where

+

+ All past check-ins captured by this site via Micropub. +

{% if checkins.length %} -
- {% set checkin = checkins[0] %} -
-
-
- -
- -
-

- {{ checkin.name }} -

- - {% if checkin.locationText or checkin.postalCode %} -

- {{ checkin.locationText }}{% if checkin.locationText and checkin.postalCode %}, {% endif %}{{ checkin.postalCode }} -

- {% endif %} - -
- {% if checkin.published %} - - {% endif %} - {% if checkin.coordinatesText %} - {{ checkin.coordinatesText }} - {% endif %} - {% if checkin.isPrivate %} - Private - {% endif %} - {% if checkin.checkedInBy and (checkin.checkedInBy.name or checkin.checkedInBy.url) %} - - Checked in by {% if checkin.checkedInBy.url %}{{ checkin.checkedInBy.name or checkin.checkedInBy.url }}{% else %}{{ checkin.checkedInBy.name }}{% endif %} - - {% endif %} -
- - {% if checkin.tags and checkin.tags.length %} -
- {% for tag in checkin.tags | head(8) %} - #{{ tag }} - {% endfor %} -
- {% endif %} - - {% if checkin.taggedPeople and checkin.taggedPeople.length %} -
- {% for person in checkin.taggedPeople | head(6) %} - {% if person.url %} - {{ person.name or person.url }} - {% else %} - {{ person.name }} - {% endif %} - {% endfor %} -
- {% endif %} - -
- {% if checkin.mapUrl %} - Map - {% endif %} - {% if checkin.venueWebsiteUrl %} - Website - {% endif %} - {% if checkin.venueSocialUrl %} - Social - {% endif %} -
- - {% if checkin.photos and checkin.photos.length %} -
- {% for photo in checkin.photos | head(3) %} - - Check-in photo - - {% endfor %} -
- {% endif %} -
-
-
-
- {% else %} -

No check-ins found.

+ {% set newest = checkins[0] %} +
+

+ I'm currently in {% if newest.venueWebsiteUrl %}{{ newest.name }}{% else %}{{ newest.name }}{% endif %}{% if newest.locationText %}, {{ newest.locationText }}{% endif %} +

+
+ {% endif %} + + {% set mapPoints = [] %} + {% for c in checkins %} + {% if c.latitude and c.longitude %} + {% set mapPoints = (mapPoints.push({name: c.name, lat: c.latitude, lng: c.longitude, url: c.venueWebsiteUrl}), mapPoints) %} + {% endif %} + {% endfor %} + + {% if mapPoints.length %} +
+ + + {% endif %} + + {% if checkins.length %} + {% set grouped = checkins | groupby("name") %} +
    + {% for groupName, groupItems in grouped %} + {% set checkin = groupItems[0] %} +
  • +
    + {% if checkin.venueWebsiteUrl %} + {{ checkin.name }} + {% else %} + {{ checkin.name }} + {% endif %} + {% if groupItems | length > 1 %} + {{ groupItems | length }}× + {% endif %} + {% if checkin.isPrivate %}(private){% endif %} +
    +
    + {% if checkin.locationText %}{{ checkin.locationText }}{% if checkin.postalCode %}, {{ checkin.postalCode }}{% endif %}{% elif checkin.postalCode %}{{ checkin.postalCode }}{% endif %} + {% if checkin.published %} + · + {% endif %} +
    +
  • + {% endfor %} +
+ {% else %} +

No past check-ins found.

{% endif %} -

- See all past check-ins → -