mirror of
https://github.com/stashapp/stash.git
synced 2025-12-18 04:44:37 +03:00
Path filter for scenes and galleries (#834)
This commit is contained in:
@@ -206,18 +206,18 @@ func (qb *PerformerQueryBuilder) Query(performerFilter *PerformerFilterType, fin
|
||||
}
|
||||
}
|
||||
|
||||
handleStringCriterion(tableName+".ethnicity", performerFilter.Ethnicity, &query)
|
||||
handleStringCriterion(tableName+".country", performerFilter.Country, &query)
|
||||
handleStringCriterion(tableName+".eye_color", performerFilter.EyeColor, &query)
|
||||
handleStringCriterion(tableName+".height", performerFilter.Height, &query)
|
||||
handleStringCriterion(tableName+".measurements", performerFilter.Measurements, &query)
|
||||
handleStringCriterion(tableName+".fake_tits", performerFilter.FakeTits, &query)
|
||||
handleStringCriterion(tableName+".career_length", performerFilter.CareerLength, &query)
|
||||
handleStringCriterion(tableName+".tattoos", performerFilter.Tattoos, &query)
|
||||
handleStringCriterion(tableName+".piercings", performerFilter.Piercings, &query)
|
||||
query.handleStringCriterionInput(performerFilter.Ethnicity, tableName+".ethnicity")
|
||||
query.handleStringCriterionInput(performerFilter.Country, tableName+".country")
|
||||
query.handleStringCriterionInput(performerFilter.EyeColor, tableName+".eye_color")
|
||||
query.handleStringCriterionInput(performerFilter.Height, tableName+".height")
|
||||
query.handleStringCriterionInput(performerFilter.Measurements, tableName+".measurements")
|
||||
query.handleStringCriterionInput(performerFilter.FakeTits, tableName+".fake_tits")
|
||||
query.handleStringCriterionInput(performerFilter.CareerLength, tableName+".career_length")
|
||||
query.handleStringCriterionInput(performerFilter.Tattoos, tableName+".tattoos")
|
||||
query.handleStringCriterionInput(performerFilter.Piercings, tableName+".piercings")
|
||||
|
||||
// TODO - need better handling of aliases
|
||||
handleStringCriterion(tableName+".aliases", performerFilter.Aliases, &query)
|
||||
query.handleStringCriterionInput(performerFilter.Aliases, tableName+".aliases")
|
||||
|
||||
query.sortAndPagination = qb.getPerformerSort(findFilter) + getPagination(findFilter)
|
||||
idsResult, countResult := query.executeFind()
|
||||
@@ -231,27 +231,6 @@ func (qb *PerformerQueryBuilder) Query(performerFilter *PerformerFilterType, fin
|
||||
return performers, countResult
|
||||
}
|
||||
|
||||
func handleStringCriterion(column string, value *StringCriterionInput, query *queryBuilder) {
|
||||
if value != nil {
|
||||
if modifier := value.Modifier.String(); value.Modifier.IsValid() {
|
||||
switch modifier {
|
||||
case "EQUALS":
|
||||
clause, thisArgs := getSearchBinding([]string{column}, value.Value, false)
|
||||
query.addWhere(clause)
|
||||
query.addArg(thisArgs...)
|
||||
case "NOT_EQUALS":
|
||||
clause, thisArgs := getSearchBinding([]string{column}, value.Value, true)
|
||||
query.addWhere(clause)
|
||||
query.addArg(thisArgs...)
|
||||
case "IS_NULL":
|
||||
query.addWhere(column + " IS NULL")
|
||||
case "NOT_NULL":
|
||||
query.addWhere(column + " IS NOT NULL")
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func getBirthYearFilterClause(criterionModifier CriterionModifier, value int) ([]string, []interface{}) {
|
||||
var clauses []string
|
||||
var args []interface{}
|
||||
|
||||
Reference in New Issue
Block a user