commit d4d0a757a9e2506a93914755c77f11f09dc8aa53
parent 34cc3eaf171ced68b30c825e317c00b5f762cc7d
Author: Natasha Kerensikova <natgh@instinctive.eu>
Date: Wed, 22 Apr 2026 19:28:13 +0000
Automatic deduplication of gruiks (by URL)
Diffstat:
1 file changed, 18 insertions(+), 11 deletions(-)
diff --git a/src/cgi.scm b/src/cgi.scm
@@ -291,17 +291,24 @@ END-OF-CSS
(let ((parsed (parse irc-line line))
(now (current-seconds)))
(when parsed
- (exec
- (sql db
- "INSERT INTO gruik(position, notes, ptime, section, title, url, ctime, mtime) VALUES (?, ?, ?, ?, ?, ?, ?, ?);")
- offset
- (line->notes line 79)
- (car parsed)
- (list-ref parsed 2)
- (list-ref parsed 3)
- (list-ref parsed 4)
- now
- now))))
+ (let ((url (list-ref parsed 4)))
+ (exec
+ (sql db
+ "INSERT INTO gruik(position, notes, ptime, section, title, url, mark, ctime, mtime) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?);")
+ offset
+ (line->notes line 79)
+ (car parsed)
+ (list-ref parsed 2)
+ (list-ref parsed 3)
+ url
+ (+ (query fetch-value
+ (sql db "SELECT -COUNT(*) FROM gruik WHERE url=?;")
+ url)
+ (query fetch-value
+ (sql db "SELECT -COUNT(*) FROM entry WHERE url=?;")
+ url))
+ now
+ now)))))
(define (catch-up)
(let* ((span (get-config "gruik-clean")))