Ignore:
Timestamp:
07/20/2026 07:35:55 AM (7 weeks ago)
Author:
Robin <roboburr@…>
Branches:
main
Children:
22d2f5a8
Parents:
1485933
git-author:
Robin <roboburr@…> (07/20/2026 07:26:51 AM)
git-committer:
Robin <roboburr@…> (07/20/2026 07:35:55 AM)
Message:

Feature: Load more on Solo + Cirkel, page 72 (klonkt-demo-r9u, slice 3/4)

The home feed (Solo) and the Cirkel feed now page in 72s instead of a
hard 30/80 cap. Both render two containers (list + grid, CSS-toggled),
so the append fragment (partials/home-append) sends the post-cards as
the primary beforeend swap into #post-list and OOB-appends the same
posts as tiles into #grid-tiles. htmx 1.9.12 unwraps the OOB wrapper's
children on a positional swap, so the tiles land as direct grid items
(the display:contents wrapper is a belt-and-braces fallback). The
button lives once below both views and OOB-replaces itself with the
next offset, dropping on the last page. Pinned posts stay on page 1
only. getCirkelPosts gains an offset arg; FEED_PAGE hoisted to the top
of posts.js.

Browser-verified both feeds: 72 -> 144 -> 150 in list AND grid, then
the button disappears.

Co-Authored-By: Claude Opus 4.8 <noreply@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/services/ActivityPubService.js

    r1485933 r520e477  
    22452245  try { if (!_abCount) _abCount = db.prepare('SELECT COUNT(*) AS n FROM ap_following WHERE slug = ? AND auto_boost = 1'); return _abCount.get(slug).n; } catch { return 0; }
    22462246}
    2247 export function getCirkelPosts(slug, limit) {
     2247export function getCirkelPosts(slug, limit, offset) {
    22482248  try {
    22492249    // Cirkel = posts from featured (auto_boost) accounts + posts you boosted
     
    22562256      WHERE t.slug = ? AND (f.auto_boost = 1 OR t.boosted = 1)
    22572257      ORDER BY COALESCE(t.published, t.created_at) DESC, t.rowid DESC
    2258       LIMIT ?`);
    2259     return _cirkelPosts.all(slug, limit || 60);
     2258      LIMIT ? OFFSET ?`);
     2259    return _cirkelPosts.all(slug, limit || 60, offset || 0);
    22602260  } catch { return []; }
    22612261}
Note: See TracChangeset for help on using the changeset viewer.