evdist: Publish next settings change

This commit is contained in:
nemunaire 2024-03-17 16:49:15 +01:00
commit 0db9e9b539
5 changed files with 76 additions and 21 deletions

View file

@ -19,6 +19,7 @@ import (
var SettingsDistDir = "./SETTINGSDIST/"
var TmpSettingsDirectory string
var TmpSettingsDistDirectory string
var watchedNotify = fsnotify.Create
func watchsubdir(l *distList, watcher *fsnotify.Watcher, pathname string, treat func(l *distList, pathname string)) error {
log.Println("Watch new directory:", pathname)
@ -93,8 +94,6 @@ func main() {
interrupt := make(chan os.Signal, 1)
signal.Notify(interrupt, syscall.SIGTERM)
watchedNotify := fsnotify.Create
treatNewFile := func(name string) {
if strings.HasPrefix(name, DashboardDir) {
newDashboardFile(lDashboard, name)
@ -139,16 +138,16 @@ loop:
log.Println("Treating deletion event:", ev, "for", ev.Name)
}
if strings.HasPrefix(ev.Name, DashboardDir) {
if ts, err := parseDashboardFilename(ev.Name); err == nil {
if ts, err := parseDashboardFilename(path.Base(ev.Name)); err != nil {
log.Println("Unable to parseint", ev.Name, err.Error())
} else {
lDashboard.DelEvent(ts)
lDashboard.DelEvent(ts, nil)
}
} else {
if ts, err := parseSettingsFilename(ev.Name); err == nil {
if ts, err := parseSettingsFilename(path.Base(ev.Name)); err != nil {
log.Println("Unable to parseint", ev.Name, err.Error())
} else {
lSettings.DelEvent(ts)
lSettings.DelEvent(ts, updateNextSettingsTime)
}
}
} else if err == nil && ev.Op&fsnotify.Write == fsnotify.Write {