;; quran-page -- daily Quran page reading tracker
(define-data-var read-count uint u0)
(define-map readings uint { reader: principal, surah: uint, page: uint, block: uint })
(define-map reader-pages principal uint)
(define-public (log-reading (surah uint) (page uint))
(let ((id (+ (var-get read-count) u1))
(prev (default-to u0 (map-get? reader-pages tx-sender))))
(var-set read-count id)
(map-set readings id { reader: tx-sender, surah: surah, page: page, block: stacks-block-height })
(map-set reader-pages tx-sender (+ prev u1)) (ok id)))
(define-read-only (get-reading (id uint)) (map-get? readings id))
(define-read-only (get-pages (addr principal)) (default-to u0 (map-get? reader-pages addr)))