From 383214ee19c3e4ffbb180724ae1b06834ad81cd0 Mon Sep 17 00:00:00 2001 From: Las Zenow Date: Mon, 23 Mar 2020 11:35:10 +0000 Subject: [PATCH] Add search by date --- lib/database/books.go | 2 ++ lib/database/database.go | 1 + lib/database/ro.go | 1 - lib/database/users.go | 2 -- 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/database/books.go b/lib/database/books.go index a553d1b..8466a6a 100644 --- a/lib/database/books.go +++ b/lib/database/books.go @@ -200,6 +200,8 @@ func buildQuery(query string) (textQuery string, columnQuerys []columnq, trigram trigramQuerys = append(trigramQuerys, columnq{"text(tags)", value}) case "tag": trigramQuerys = append(trigramQuerys, columnq{"text(tags)", value}) + case "date": + trigramQuerys = append(trigramQuerys, columnq{"date", value}) default: if len(textQuery) != 0 { lastChar := textQuery[len(textQuery)-1:] diff --git a/lib/database/database.go b/lib/database/database.go index 53599f3..4cf5b6a 100644 --- a/lib/database/database.go +++ b/lib/database/database.go @@ -156,6 +156,7 @@ CREATE INDEX IF NOT EXISTS books_active_idx ON books (active); CREATE INDEX IF NOT EXISTS books_title_idx ON books USING GIN (title gin_trgm_ops); CREATE INDEX IF NOT EXISTS books_contributor_idx ON books USING GIN (contributor gin_trgm_ops); CREATE INDEX IF NOT EXISTS books_publisher_idx ON books USING GIN (publisher gin_trgm_ops); +CREATE INDEX IF NOT EXISTS books_date_idx ON books USING GIN (date gin_trgm_ops); CREATE OR REPLACE FUNCTION text(text[]) RETURNS text immutable AS $$ select $1::text $$ language sql; diff --git a/lib/database/ro.go b/lib/database/ro.go index ca3e7b7..e0ecab2 100644 --- a/lib/database/ro.go +++ b/lib/database/ro.go @@ -57,7 +57,6 @@ func (db *roDB) SetAdminUser(name string, pass string) error { return errors.New("RO database") } - func (db *roDB) GetRole(name string) (string, error) { return db.db.GetRole(name) } diff --git a/lib/database/users.go b/lib/database/users.go index 532f68e..599a133 100644 --- a/lib/database/users.go +++ b/lib/database/users.go @@ -45,7 +45,6 @@ func (db *pgDB) AddUser(name string, pass string) error { return db.AddRawUser(name, hpass, salt, "") } - func (db *pgDB) SetAdminUser(name string, pass string) error { if !validAdminUserName(name) { @@ -75,7 +74,6 @@ func (db *pgDB) SetAdminUser(name string, pass string) error { } - func (db *pgDB) AddRawUser(name string, hpass []byte, salt []byte, role string) error { u := User{ Username: name,