From 3fc20319144168c5dbdb74abeb9715b5d3a0ed8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Maxi=20Quo=C3=9F?= Date: Mon, 30 Jan 2023 00:23:54 +0100 Subject: [PATCH] set device status in shutdown handler --- backend/pb/handlers.go | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/backend/pb/handlers.go b/backend/pb/handlers.go index d141b97f..3d9ebf92 100644 --- a/backend/pb/handlers.go +++ b/backend/pb/handlers.go @@ -11,7 +11,6 @@ import ( "github.com/labstack/echo/v5" "github.com/pocketbase/pocketbase/apis" "github.com/pocketbase/pocketbase/models" - "github.com/seriousm4x/upsnap/backend/logger" "github.com/seriousm4x/upsnap/backend/networking" ) @@ -38,11 +37,17 @@ func HandlerShutdown(c echo.Context) error { if err != nil { return apis.NewNotFoundError("The device does not exist.", err) } - if err := networking.ShutdownDevice(record); err != nil { - logger.Error.Println(err) - return apis.NewBadRequestError(err.Error(), record) - } - return nil + go func(*models.Record) { + record.Set("status", "pending") + App.Dao().SaveRecord(record) + if err := networking.ShutdownDevice(record); err != nil { + record.Set("status", "online") + } else { + record.Set("status", "offline") + } + App.Dao().SaveRecord(record) + }(record) + return c.JSON(http.StatusOK, record) } type Nmaprun struct {