diff --git a/bimiHandler.go b/bimiHandler.go index f9f4fc3..a1a242d 100644 --- a/bimiHandler.go +++ b/bimiHandler.go @@ -16,9 +16,9 @@ func bimiHandler(w http.ResponseWriter, r *http.Request) { bimi, bimiErr := lookupBimi(domain) runTemplate(w, r, "_bimi/index.tmpl", map[string]any{ - "title": fmt.Sprintf("BIMI for %s", domain), - "domain": domain, - "err": bimiErr, - "bimi": bimi, + "Bimi": bimi, + "Domain": domain, + "Err": bimiErr, + "Title": fmt.Sprintf("BIMI Logo for %s", domain), }) } diff --git a/database.go b/database.go index 9a39a43..d8ed413 100644 --- a/database.go +++ b/database.go @@ -2,7 +2,6 @@ package main import ( "context" - "fmt" "net/url" "os" @@ -39,7 +38,7 @@ func upsertDomain(domain, imgurl string) error { defer conn.Close(context.Background()) queries := generated.New(conn) - row, queryErr := queries.UpsertDomain(context.Background(), generated.UpsertDomainParams{ + _, queryErr := queries.UpsertDomain(context.Background(), generated.UpsertDomainParams{ Domain: domain, Imgurl: pgtype.Text{String: imgurl, Valid: true}, }) @@ -48,11 +47,29 @@ func upsertDomain(domain, imgurl string) error { return queryErr } - fmt.Printf("upsert=%v\n", row) return nil } -func listSampleDomains(limit int32) ([]generated.Domain, error) { +func countDomains() (int64, error) { + + conn, connErr := connect() + if connErr != nil { + // already logged + return 0, connErr + } + defer conn.Close(context.Background()) + + queries := generated.New(conn) + row, queryErr := queries.CountDomains(context.Background()) + if queryErr != nil { + logger.Error("Unable count rows", "err", queryErr) + return 0, queryErr + } + + return row, nil +} + +func listDomains(limit int32, offset int32) ([]generated.ListDomainsRow, error) { conn, connErr := connect() if connErr != nil { @@ -62,12 +79,14 @@ func listSampleDomains(limit int32) ([]generated.Domain, error) { defer conn.Close(context.Background()) queries := generated.New(conn) - rows, queryErr := queries.ListSampleDomains(context.Background(), limit) + rows, queryErr := queries.ListDomains(context.Background(), generated.ListDomainsParams{ + Thelimit: limit, + Theoffset: offset, + }) if queryErr != nil { logger.Error("Unable to insert into database", "err", queryErr) return nil, queryErr } - fmt.Printf("upsert=%v\n", rows) return rows, nil } diff --git a/db/queries.sql b/db/queries.sql index e19d488..3383c40 100644 --- a/db/queries.sql +++ b/db/queries.sql @@ -8,5 +8,8 @@ INSERT INTO domain updated = NOW() RETURNING *; --- name: ListSampleDomains :many -SELECT * FROM domain LIMIT sqlc.arg(maxlimit); \ No newline at end of file +-- name: ListDomains :many +SELECT domain, imgurl FROM domain ORDER BY domain LIMIT sqlc.arg(theLimit) OFFSET sqlc.arg(theOffset); + +-- name: CountDomains :one +SELECT COUNT(*) AS "Count" FROM domain; \ No newline at end of file diff --git a/main.go b/main.go index 9d34fdb..a31626a 100644 --- a/main.go +++ b/main.go @@ -20,15 +20,16 @@ func main() { var listenAddress = os.Getenv("ADDRESS") http.HandleFunc("/status.json", statusHandler) - http.HandleFunc("GET /{$}", rootHandlerGet) - http.HandleFunc("POST /{$}", rootHandlerPost) + http.HandleFunc("/{$}", func(w http.ResponseWriter, r *http.Request) { http.Redirect(w, r, "/bimi/", http.StatusSeeOther) }) + http.HandleFunc("GET /bimi/{$}", rootHandlerGet) + http.HandleFunc("POST /bimi/{$}", rootHandlerPost) http.HandleFunc("/robots.txt", staticHandler.ServeHTTP) http.HandleFunc("/favicon.ico", staticHandler.ServeHTTP) http.HandleFunc("/favicon.svg", staticHandler.ServeHTTP) http.HandleFunc("/images/", staticHandler.ServeHTTP) - http.HandleFunc("POST /bimi/bulk.html", bulkHandlerPost) - http.HandleFunc("GET /bimi/bulk.html", bulkHandlerGet) http.HandleFunc("/bimi/{domain}/{$}", bimiHandler) + http.HandleFunc("/bimi/list.html", listHandler) + http.HandleFunc("/bimi/view.html", viewHandler) err := http.ListenAndServe(listenAddress+":"+strconv.Itoa(listenPort), nil) if err != nil { diff --git a/partials/above.hbs b/partials/above.hbs index 726daf9..f80f606 100644 --- a/partials/above.hbs +++ b/partials/above.hbs @@ -3,7 +3,7 @@ - {{if (ne .h1 "")}}{{ .title }}{{else}}{{ .title }} - BIMI Explorer{{end}} + {{if .H1}}{{ .Title }}{{else}}{{ .Title }} - BIMI Explorer{{end}} @@ -46,8 +46,8 @@