mirror of
https://github.com/stashapp/stash.git
synced 2025-12-18 12:54:38 +03:00
Add is-missing tags filter (#526)
This commit is contained in:
@@ -317,6 +317,8 @@ func (qb *SceneQueryBuilder) Query(sceneFilter *SceneFilterType, findFilter *Fin
|
|||||||
whereClauses = append(whereClauses, "performers_join.scene_id IS NULL")
|
whereClauses = append(whereClauses, "performers_join.scene_id IS NULL")
|
||||||
case "date":
|
case "date":
|
||||||
whereClauses = append(whereClauses, "scenes.date IS \"\" OR scenes.date IS \"0001-01-01\"")
|
whereClauses = append(whereClauses, "scenes.date IS \"\" OR scenes.date IS \"0001-01-01\"")
|
||||||
|
case "tags":
|
||||||
|
whereClauses = append(whereClauses, "tags_join.scene_id IS NULL")
|
||||||
default:
|
default:
|
||||||
whereClauses = append(whereClauses, "scenes."+*isMissingFilter+" IS NULL")
|
whereClauses = append(whereClauses, "scenes."+*isMissingFilter+" IS NULL")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -497,6 +497,28 @@ func TestSceneQueryIsMissingDate(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestSceneQueryIsMissingTags(t *testing.T) {
|
||||||
|
sqb := models.NewSceneQueryBuilder()
|
||||||
|
isMissing := "tags"
|
||||||
|
sceneFilter := models.SceneFilterType{
|
||||||
|
IsMissing: &isMissing,
|
||||||
|
}
|
||||||
|
|
||||||
|
q := getSceneStringValue(sceneIdxWithTwoTags, titleField)
|
||||||
|
findFilter := models.FindFilterType{
|
||||||
|
Q: &q,
|
||||||
|
}
|
||||||
|
|
||||||
|
scenes, _ := sqb.Query(&sceneFilter, &findFilter)
|
||||||
|
|
||||||
|
assert.Len(t, scenes, 0)
|
||||||
|
|
||||||
|
findFilter.Q = nil
|
||||||
|
scenes, _ = sqb.Query(&sceneFilter, &findFilter)
|
||||||
|
|
||||||
|
assert.True(t, len(scenes) > 0)
|
||||||
|
}
|
||||||
|
|
||||||
func TestSceneQueryIsMissingRating(t *testing.T) {
|
func TestSceneQueryIsMissingRating(t *testing.T) {
|
||||||
sqb := models.NewSceneQueryBuilder()
|
sqb := models.NewSceneQueryBuilder()
|
||||||
isMissing := "rating"
|
isMissing := "rating"
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ export class SceneIsMissingCriterion extends IsMissingCriterion {
|
|||||||
"studio",
|
"studio",
|
||||||
"movie",
|
"movie",
|
||||||
"performers",
|
"performers",
|
||||||
|
"tags",
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user