feat(filters): generate open task saved filter on user creation

This commit is contained in:
gabe 2026-04-03 11:37:10 -04:00 committed by kolaente
parent 18a0df505b
commit 98b3613247
2 changed files with 14 additions and 0 deletions

View File

@ -760,6 +760,15 @@ func getRawProjectsForUser(s *xorm.Session, opts *projectOptions) (projects []*P
return allProjects, len(allProjects), totalItems, err return allProjects, len(allProjects), totalItems, err
} }
func CreateDefaultSavedFiltersForUser(s *xorm.Session, u *user.User) error {
sf := &SavedFilter{
Title: "My Open Tasks",
Filters: &TaskCollection{Filter: fmt.Sprintf("done = false && assignees = %s", u.Username)},
}
return sf.Create(s, u)
}
func getSavedFilterProjects(s *xorm.Session, doer *user.User, search string) (savedFiltersProjects []*Project, err error) { func getSavedFilterProjects(s *xorm.Session, doer *user.User, search string) (savedFiltersProjects []*Project, err error) {
savedFilters, err := getSavedFiltersForUser(s, doer, search) savedFilters, err := getSavedFiltersForUser(s, doer, search)
if err != nil { if err != nil {
@ -1108,6 +1117,10 @@ func RegisterUser(s *xorm.Session, u *user.User) (*user.User, error) {
return nil, err return nil, err
} }
if err := CreateDefaultSavedFiltersForUser(s, newUser); err != nil {
return nil, err
}
return newUser, nil return newUser, nil
} }

View File

@ -16,6 +16,7 @@ func init() {
"BucketConfigurationModeNone": reflect.ValueOf(models.BucketConfigurationModeNone), "BucketConfigurationModeNone": reflect.ValueOf(models.BucketConfigurationModeNone),
"CanDoAPIRoute": reflect.ValueOf(models.CanDoAPIRoute), "CanDoAPIRoute": reflect.ValueOf(models.CanDoAPIRoute),
"CollectRoutesForAPITokenUsage": reflect.ValueOf(models.CollectRoutesForAPITokenUsage), "CollectRoutesForAPITokenUsage": reflect.ValueOf(models.CollectRoutesForAPITokenUsage),
"CreateDefaultSavedFiltersForUser": reflect.ValueOf(models.CreateDefaultSavedFiltersForUser),
"CreateDefaultViewsForProject": reflect.ValueOf(models.CreateDefaultViewsForProject), "CreateDefaultViewsForProject": reflect.ValueOf(models.CreateDefaultViewsForProject),
"CreateNewProjectForUser": reflect.ValueOf(models.CreateNewProjectForUser), "CreateNewProjectForUser": reflect.ValueOf(models.CreateNewProjectForUser),
"CreateProject": reflect.ValueOf(models.CreateProject), "CreateProject": reflect.ValueOf(models.CreateProject),