fix(views): do not break filters when combining them with view filters
This commit is contained in:
parent
6913334b17
commit
73e5483e87
|
@ -74,7 +74,7 @@ func validateTaskField(fieldName string) error {
|
||||||
return ErrInvalidTaskField{TaskField: fieldName}
|
return ErrInvalidTaskField{TaskField: fieldName}
|
||||||
}
|
}
|
||||||
|
|
||||||
func getTaskFilterOptsFromCollection(tf *TaskCollection) (opts *taskSearchOptions, err error) {
|
func getTaskFilterOptsFromCollection(tf *TaskCollection, projectView *ProjectView) (opts *taskSearchOptions, err error) {
|
||||||
if len(tf.SortByArr) > 0 {
|
if len(tf.SortByArr) > 0 {
|
||||||
tf.SortBy = append(tf.SortBy, tf.SortByArr...)
|
tf.SortBy = append(tf.SortBy, tf.SortByArr...)
|
||||||
}
|
}
|
||||||
|
@ -95,6 +95,10 @@ func getTaskFilterOptsFromCollection(tf *TaskCollection) (opts *taskSearchOption
|
||||||
param.orderBy = getSortOrderFromString(tf.OrderBy[i])
|
param.orderBy = getSortOrderFromString(tf.OrderBy[i])
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if s == taskPropertyPosition && projectView != nil {
|
||||||
|
param.projectViewID = projectView.ID
|
||||||
|
}
|
||||||
|
|
||||||
// Param validation
|
// Param validation
|
||||||
if err := param.validate(); err != nil {
|
if err := param.validate(); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -177,14 +181,16 @@ func (tf *TaskCollection) ReadAll(s *xorm.Session, a web.Auth, search string, pa
|
||||||
return nil, 0, 0, err
|
return nil, 0, 0, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if tf.Filter != "" {
|
if view.Filter != "" {
|
||||||
tf.Filter = "(" + tf.Filter + ") && (" + view.Filter + ")"
|
if tf.Filter != "" {
|
||||||
} else {
|
tf.Filter = "(" + tf.Filter + ") && (" + view.Filter + ")"
|
||||||
tf.Filter = view.Filter
|
} else {
|
||||||
|
tf.Filter = view.Filter
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
opts, err := getTaskFilterOptsFromCollection(tf)
|
opts, err := getTaskFilterOptsFromCollection(tf, view)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, 0, 0, err
|
return nil, 0, 0, err
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue