fix scene load and add first version UpdateValueDialog
This commit is contained in:
@@ -47,10 +47,23 @@ func (sh *ScenesHandler) SaveScene(c *gin.Context) {
|
||||
}
|
||||
|
||||
if _, err := os.Stat(path.Join(sh.dir)); err != nil {
|
||||
os.MkdirAll(sh.dir, 666)
|
||||
err := os.MkdirAll(sh.dir, 0755)
|
||||
if err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{
|
||||
"error": err.Error(),
|
||||
})
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
f, err := os.OpenFile(path.Join(sh.dir, scene.Name+".scene"), os.O_CREATE|os.O_TRUNC|os.O_RDWR, 666)
|
||||
f, err := os.OpenFile(path.Join(sh.dir, scene.Name+".scene"), os.O_CREATE|os.O_TRUNC|os.O_RDWR, 0644)
|
||||
if err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{
|
||||
"error": err.Error(),
|
||||
})
|
||||
return
|
||||
}
|
||||
defer f.Close()
|
||||
|
||||
_, err = f.Write(body)
|
||||
if err != nil {
|
||||
@@ -59,7 +72,6 @@ func (sh *ScenesHandler) SaveScene(c *gin.Context) {
|
||||
})
|
||||
return
|
||||
}
|
||||
defer f.Close()
|
||||
|
||||
c.JSON(http.StatusOK, gin.H{
|
||||
"message": fmt.Sprintf("Scene '%s' saved", scene.Name),
|
||||
@@ -155,6 +167,7 @@ func (sh *ScenesHandler) LoadScene(c *gin.Context) {
|
||||
}
|
||||
|
||||
var scene models.Scene
|
||||
|
||||
err = json.Unmarshal(body, &scene)
|
||||
if err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{
|
||||
@@ -190,6 +203,13 @@ func (sh *ScenesHandler) LoadScene(c *gin.Context) {
|
||||
})
|
||||
return
|
||||
}
|
||||
c.JSON(http.StatusOK, scene)
|
||||
break
|
||||
}
|
||||
if err != nil {
|
||||
c.JSON(http.StatusBadRequest, gin.H{
|
||||
"error": fmt.Errorf("scene '%s' not found", scene.Name),
|
||||
})
|
||||
return
|
||||
}
|
||||
c.JSON(http.StatusOK, scene)
|
||||
}
|
||||
|
@@ -3,6 +3,7 @@ package utils
|
||||
import (
|
||||
"fmt"
|
||||
"io/fs"
|
||||
"os"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
"runtime"
|
||||
@@ -27,6 +28,10 @@ func OpenBrowser(url string, logger *logging.Logger) error {
|
||||
{"open", url}, // fallback
|
||||
}
|
||||
default: // Linux
|
||||
if os.Getenv("DISPLAY") == "" && os.Getenv("WAYLAND_DISPLAY") == "" && os.Getenv("XDG_SESSION_TYPE") != "wayland" {
|
||||
|
||||
return fmt.Errorf("os is running i headless mode do not start browser")
|
||||
}
|
||||
commands = [][]string{
|
||||
{"chromium-browser", "--kiosk", url},
|
||||
{"google-chrome", "--kiosk", url},
|
||||
@@ -47,14 +52,14 @@ func OpenBrowser(url string, logger *logging.Logger) error {
|
||||
return fmt.Errorf("could not open browser")
|
||||
}
|
||||
|
||||
func FindAllFiles(rootDir, fileExtention string) (files []string, err error){
|
||||
err = filepath.WalkDir(rootDir, func(path string, d fs.DirEntry, err error) error {
|
||||
if d.IsDir() {
|
||||
func FindAllFiles(rootDir, fileExtention string) (files []string, err error) {
|
||||
err = filepath.WalkDir(rootDir, func(path string, d fs.DirEntry, err error) error {
|
||||
if d.IsDir() {
|
||||
return nil
|
||||
} else if filepath.Ext(d.Name()) == fileExtention{
|
||||
} else if filepath.Ext(d.Name()) == fileExtention {
|
||||
files = append(files, path)
|
||||
}
|
||||
return err
|
||||
})
|
||||
return
|
||||
return
|
||||
}
|
||||
|
Reference in New Issue
Block a user