Compare commits

..

No commits in common. "2be428b03e23a2744018ceddd3effd117e5e371a" and "e68a66f5ce54d5e8d00cf8a0ab66fec75b52ee06" have entirely different histories.

3 changed files with 11 additions and 22 deletions

View file

@ -285,13 +285,19 @@ func DatapointRetrieve(id int, name string) (dp Datapoint, err error) { // {{{
rows, _ := db.Query(context.Background(), query, param) rows, _ := db.Query(context.Background(), query, param)
dp, err = pgx.CollectExactlyOneRow(rows, pgx.RowToStructByNameLax[Datapoint]) dp, err = pgx.CollectExactlyOneRow(rows, pgx.RowToStructByNameLax[Datapoint])
if errors.Is(err, pgx.ErrNoRows) { if err != nil {
err = werr.Wrap(err)
return
}
if err == sql.ErrNoRows {
dp = Datapoint{ dp = Datapoint{
Name: name, Name: name,
} }
err = nil err = nil
return return
} }
if err != nil { if err != nil {
err = werr.Wrap(err).WithData(name) err = werr.Wrap(err).WithData(name)
return return
@ -309,7 +315,7 @@ func DatapointRetrieve(id int, name string) (dp Datapoint, err error) { // {{{
dp.ID, dp.ID,
) )
dp.LastDatapointValue, err = pgx.CollectExactlyOneRow(rows, pgx.RowToStructByNameLax[DatapointValue]) dp.LastDatapointValue, err = pgx.CollectExactlyOneRow(rows, pgx.RowToStructByNameLax[DatapointValue])
if errors.Is(err, pgx.ErrNoRows) { if err == sql.ErrNoRows {
err = nil err = nil
return return
} }

20
main.go
View file

@ -431,25 +431,7 @@ func pageIndex(w http.ResponseWriter, r *http.Request) { // {{{
page.Render(w, r) page.Render(w, r)
} // }}} } // }}}
func actionDashboardValues(w http.ResponseWriter, r *http.Request) { // {{{ func actionDashboardValues(w http.ResponseWriter, r *http.Request) { // {{{
name := "start" values, err := DatapointsValue([]int{13, 15})
dashboard, err := DashboardGet(name)
if err != nil {
logger.Error("dashboard", "error", err)
httpError(w, err)
return
}
idMap := make(map[int]bool)
var ids []int
for _, w := range dashboard.Widgets {
idMap[w.DatapointID] = true
}
for id := range idMap {
ids = append(ids, id)
}
values, err := DatapointsValue(ids)
if err != nil { if err != nil {
logger.Error("dashboard", "error", err) logger.Error("dashboard", "error", err)
httpError(w, err) httpError(w, err)

View file

@ -7,6 +7,7 @@ import (
// Standard // Standard
"context" "context"
"database/sql"
"encoding/json" "encoding/json"
"errors" "errors"
"fmt" "fmt"
@ -122,7 +123,7 @@ func ProblemStart(trigger Trigger) (problemID int, err error) { // {{{
) )
var openProblems int var openProblems int
err = row.Scan(&openProblems) err = row.Scan(&openProblems)
if err != nil && errors.Is(err, pgx.ErrNoRows) { if err != nil && err != sql.ErrNoRows {
err = werr.Wrap(err).WithData(trigger.ID) err = werr.Wrap(err).WithData(trigger.ID)
return return
} }