Changeset 1d1fdc9 in Klonkt
- Timestamp:
- 09/04/2026 12:17:49 PM (4 days ago)
- Branches:
- main
- Children:
- 6d7ea52
- Parents:
- 9946a68
- Location:
- src
- Files:
-
- 5 edited
-
routes/activitypub.js (modified) (2 diffs)
-
routes/admin.js (modified) (2 diffs)
-
services/ActivityPubService.js (modified) (4 diffs)
-
services/Scheduler.js (modified) (2 diffs)
-
services/music/index.js (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/routes/activitypub.js
r9946a68 r1d1fdc9 14 14 import express from 'express'; 15 15 import { readFileSync } from 'fs'; 16 import db from '../config/database.js';16 import db, { isoSql } from '../config/database.js'; 17 17 import AP from '../services/ActivityPubService.js'; 18 18 import { apReadLimiter, apInboxLimiter } from '../middleware/rate-limit.js'; … … 1176 1176 AND IFNULL(ap_visibility, 'public') IN ('public', 'quiet') 1177 1177 AND pinned IS NOT NULL AND pinned > 0 1178 ORDER BY pinned DESC, COALESCE(published_at, created_at)ASC LIMIT 20`1178 ORDER BY pinned DESC, ${isoSql('COALESCE(published_at, created_at)')} ASC LIMIT 20` 1179 1179 ).all(site.id); 1180 1180 AP.sendAP(res, AP.buildFeatured(baseUrl(req), site, posts, { page: paginaNr(req) })); -
src/routes/admin.js
r9946a68 r1d1fdc9 6 6 7 7 import express from 'express'; 8 import db from '../config/database.js';8 import db, { isoSql } from '../config/database.js'; 9 9 import { renderPage } from '../middleware/render.js'; 10 10 import { requireAuth } from '../middleware/auth.js'; … … 22 22 SELECT slug, title, status, published_at, created_at, updated_at 23 23 FROM posts WHERE site_id = ? 24 ORDER BY (status != 'published') DESC, COALESCE(updated_at, published_at, created_at)DESC24 ORDER BY (status != 'published') DESC, ${isoSql('COALESCE(updated_at, published_at, created_at)')} DESC 25 25 LIMIT ? 26 26 `).all(siteId, limit).map((p) => ({ -
src/services/ActivityPubService.js
r9946a68 r1d1fdc9 19 19 import fs from 'fs'; 20 20 import path from 'path'; 21 import db, { NU_ISO } from '../config/database.js';21 import db, { NU_ISO, isoSql } from '../config/database.js'; 22 22 import HtmlSanitizerService from './HtmlSanitizerService.js'; 23 23 import AudioEmbedService from './AudioEmbedService.js'; … … 1143 1143 const fanClause = fanOnly ? '' : 'AND (p.fan_only IS NULL OR p.fan_only = 0)'; 1144 1144 const unie = ` 1145 SELECT 'post' AS soort, p.id AS id, COALESCE(p.published_at, p.created_at)AS wanneer1145 SELECT 'post' AS soort, p.id AS id, ${isoSql('COALESCE(p.published_at, p.created_at)')} AS wanneer 1146 1146 FROM posts p WHERE p.site_id = ? AND p.status = 'published' ${fanClause} 1147 1147 UNION ALL … … 1927 1927 FROM posts WHERE site_id = ? AND status = 'published' AND (fan_only IS NULL OR fan_only = 0) 1928 1928 AND IFNULL(ap_visibility, 'public') = 'public' 1929 ORDER BY COALESCE(published_at, created_at)DESC LIMIT 20`1929 ORDER BY ${isoSql('COALESCE(published_at, created_at)')} DESC LIMIT 20` 1930 1930 ).all(site.id).reverse(); 1931 1931 if (!recent.length) return; … … 2085 2085 `SELECT id FROM posts WHERE site_id = ? AND status = 'published' AND (fan_only IS NULL OR fan_only = 0) 2086 2086 AND pinned IS NOT NULL AND pinned > 0 2087 ORDER BY pinned DESC, COALESCE(published_at, created_at)ASC LIMIT 20`2087 ORDER BY pinned DESC, ${isoSql('COALESCE(published_at, created_at)')} ASC LIMIT 20` 2088 2088 ).all(site.id); 2089 2089 const removeIds = [...new Set([...pinned.map((p) => p.id), ...alsoRemove])]; -
src/services/Scheduler.js
r9946a68 r1d1fdc9 8 8 */ 9 9 10 import db from '../config/database.js';10 import db, { NU_ISO } from '../config/database.js'; 11 11 import HtmlSanitizerService from './HtmlSanitizerService.js'; 12 12 import ActivityPubService from './ActivityPubService.js'; … … 22 22 if (!due.length) return 0; 23 23 const upd = db.prepare( 24 "UPDATE posts SET status = 'published', published_at = COALESCE(published_at, publish_at, CURRENT_TIMESTAMP) WHERE id = ?"24 `UPDATE posts SET status = 'published', published_at = COALESCE(published_at, publish_at, ${NU_ISO}) WHERE id = ?` 25 25 ); 26 26 const ftsDel = db.prepare('DELETE FROM posts_fts WHERE post_id = ?'); -
src/services/music/index.js
r9946a68 r1d1fdc9 13 13 */ 14 14 15 import db from '../../config/database.js';15 import db, { isoSql } from '../../config/database.js'; 16 16 import { AP_CONTEXT, PUBLIC, actorId, noteId, safeUrl, guessMediaType, buildHashtagList, pagedCollection, isMbid } from '../ap-core.js'; 17 17 import { afleidenUitInsluitingen, ingeslotenPlaylists, SOORTEN } from '../../assets/js/shared/post-music-type.js'; … … 681 681 const rijen = db.prepare(` 682 682 SELECT id, slug, title, excerpt, content, cover_image_url, tags, 683 COALESCE(published_at, created_at)AS uit_wanneer683 ${isoSql('COALESCE(published_at, created_at)')} AS uit_wanneer 684 684 FROM posts 685 685 WHERE site_id = ? AND status = 'published' 686 686 AND content LIKE '%[[playlist:' || ? || ']]%' 687 ORDER BY COALESCE(published_at, created_at)DESC687 ORDER BY ${isoSql('COALESCE(published_at, created_at)')} DESC 688 688 `).all(siteId, playlistId); 689 689 for (const p of rijen) {
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)