String regex filter criteria and selective autotag (#1082)

* Add regex string filter criterion
* Use query interface for auto tagging
* Use Query interface for filename parser
* Remove query regex interfaces
* Add selective auto tag
* Use page size 0 as no limit
This commit is contained in:
WithoutPants
2021-02-02 07:57:56 +11:00
committed by GitHub
parent 4fd022a93b
commit e4d91a0226
24 changed files with 354 additions and 204 deletions

View File

@@ -4,13 +4,13 @@ import (
"context"
"os"
"path/filepath"
"strings"
"sync"
"github.com/stashapp/stash/pkg/image"
"github.com/stashapp/stash/pkg/logger"
"github.com/stashapp/stash/pkg/manager/config"
"github.com/stashapp/stash/pkg/models"
"github.com/stashapp/stash/pkg/utils"
)
type CleanTask struct {
@@ -198,28 +198,18 @@ func (t *CleanTask) fileExists(filename string) (bool, error) {
func getStashFromPath(pathToCheck string) *models.StashConfig {
for _, s := range config.GetStashPaths() {
rel, error := filepath.Rel(s.Path, filepath.Dir(pathToCheck))
if error == nil {
if !strings.HasPrefix(rel, ".."+string(filepath.Separator)) {
return s
}
if utils.IsPathInDir(s.Path, filepath.Dir(pathToCheck)) {
return s
}
}
return nil
}
func getStashFromDirPath(pathToCheck string) *models.StashConfig {
for _, s := range config.GetStashPaths() {
rel, error := filepath.Rel(s.Path, pathToCheck)
if error == nil {
if !strings.HasPrefix(rel, ".."+string(filepath.Separator)) {
return s
}
if utils.IsPathInDir(s.Path, pathToCheck) {
return s
}
}
return nil
}