This repository has been archived on 2025-03-01. You can view files and clone it, but cannot push or open issues or pull requests.
trantor/lib/database/stats.go

50 lines
862 B
Go

// TODO
package database
import (
"time"
log "github.com/cihub/seelog"
)
func (db *pgDB) AddStats(stats interface{}) error {
return nil
}
/* Get the most visited books
*/
func (db *pgDB) GetVisitedBooks() (books []Book, err error) {
return []Book{}, nil
}
/* Get the most downloaded books
*/
func (db *pgDB) GetDownloadedBooks() (books []Book, err error) {
return []Book{}, nil
}
func (db *pgDB) GetTags() ([]string, error) {
return db.tags, nil
}
func (db *pgDB) updateTags() {
err := db.sql.Model(&Book{}).
ColumnExpr("unnest(tags) as tag").
Where("active = true").
Group("tag").
Order("count(*) DESC").
Limit(tagsDisplay).
Select(&db.tags)
if err != nil {
log.Error("Error updating tags: ", err)
}
}
func (db *pgDB) tagUpdater() {
periodicity := 57 * time.Minute
for true {
db.updateTags()
time.Sleep(periodicity)
}
}