From ec160f1f0a91279c37d292b612e7abe96efb680f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Karol=20R=C3=B3=C5=BCycki?= Date: Wed, 11 Feb 2015 19:52:59 +0100 Subject: [PATCH] Button to rescan all folders, fixes #1151 --- cmd/syncthing/gui.go | 16 ++++++++++++---- gui/index.html | 9 +++++---- .../core/controllers/syncthingController.js | 4 ++++ internal/auto/gui.files.go | 4 ++-- internal/model/model.go | 9 ++++++++- 5 files changed, 31 insertions(+), 11 deletions(-) diff --git a/cmd/syncthing/gui.go b/cmd/syncthing/gui.go index 67dcdea90..682c88780 100644 --- a/cmd/syncthing/gui.go +++ b/cmd/syncthing/gui.go @@ -652,10 +652,18 @@ func restPostUpgrade(w http.ResponseWriter, r *http.Request) { func restPostScan(m *model.Model, w http.ResponseWriter, r *http.Request) { qs := r.URL.Query() folder := qs.Get("folder") - sub := qs.Get("sub") - err := m.ScanFolderSub(folder, sub) - if err != nil { - http.Error(w, err.Error(), 500) + if folder != "" { + sub := qs.Get("sub") + err := m.ScanFolderSub(folder, sub) + if err != nil { + http.Error(w, err.Error(), 500) + } + } else { + errors := m.ScanFolders() + if len(errors) > 0 { + http.Error(w, "Error scanning folders", 500) + json.NewEncoder(w).Encode(errors) + } } } diff --git a/gui/index.html b/gui/index.html index 329a38c69..a113fb3b4 100644 --- a/gui/index.html +++ b/gui/index.html @@ -273,10 +273,11 @@ -
- -
-
+ + + + +

diff --git a/gui/scripts/syncthing/core/controllers/syncthingController.js b/gui/scripts/syncthing/core/controllers/syncthingController.js index 387c66f13..f8de3f4e4 100644 --- a/gui/scripts/syncthing/core/controllers/syncthingController.js +++ b/gui/scripts/syncthing/core/controllers/syncthingController.js @@ -1156,6 +1156,10 @@ angular.module('syncthing.core') $scope.reportPreview = true; }; + $scope.rescanAllFolders = function () { + $http.post(urlbase + "/scan"); + }; + $scope.rescanFolder = function (folder) { $http.post(urlbase + "/scan?folder=" + encodeURIComponent(folder)); }; diff --git a/internal/auto/gui.files.go b/internal/auto/gui.files.go index 8dee97008..54ce318d2 100644 --- a/internal/auto/gui.files.go +++ b/internal/auto/gui.files.go @@ -152,7 +152,7 @@ func Assets() map[string][]byte { bs, _ = ioutil.ReadAll(gr) assets["assets/lang/valid-langs.js"] = bs - bs, _ = base64.StdEncoding.DecodeString("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") + bs, _ = base64.StdEncoding.DecodeString("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") gr, _ = gzip.NewReader(bytes.NewReader(bs)) bs, _ = ioutil.ReadAll(gr) assets["index.html"] = bs @@ -172,7 +172,7 @@ func Assets() map[string][]byte { bs, _ = ioutil.ReadAll(gr) assets["scripts/syncthing/core/controllers/eventController.js"] = bs - bs, _ = base64.StdEncoding.DecodeString("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") + bs, _ = base64.StdEncoding.DecodeString("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") gr, _ = gzip.NewReader(bytes.NewReader(bs)) bs, _ = ioutil.ReadAll(gr) assets["scripts/syncthing/core/controllers/syncthingController.js"] = bs diff --git a/internal/model/model.go b/internal/model/model.go index 0c26d9dd4..4605f9c3d 100644 --- a/internal/model/model.go +++ b/internal/model/model.go @@ -1111,7 +1111,7 @@ func (m *Model) AddFolder(cfg config.FolderConfiguration) { m.fmut.Unlock() } -func (m *Model) ScanFolders() { +func (m *Model) ScanFolders() map[string]error { m.fmut.RLock() var folders = make([]string, 0, len(m.folderCfgs)) for folder := range m.folderCfgs { @@ -1119,6 +1119,9 @@ func (m *Model) ScanFolders() { } m.fmut.RUnlock() + var errors = make(map[string]error, len(m.folderCfgs)) + var errorsMut sync.Mutex + var wg sync.WaitGroup wg.Add(len(folders)) for _, folder := range folders { @@ -1126,12 +1129,16 @@ func (m *Model) ScanFolders() { go func() { err := m.ScanFolder(folder) if err != nil { + errorsMut.Lock() + errors[folder] = err + errorsMut.Unlock() m.cfg.InvalidateFolder(folder, err.Error()) } wg.Done() }() } wg.Wait() + return errors } func (m *Model) ScanFolder(folder string) error {