diff --git a/pkg/models/project.go b/pkg/models/project.go index b0ad5ee4c..de688348f 100644 --- a/pkg/models/project.go +++ b/pkg/models/project.go @@ -760,6 +760,15 @@ func getRawProjectsForUser(s *xorm.Session, opts *projectOptions) (projects []*P 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) { savedFilters, err := getSavedFiltersForUser(s, doer, search) if err != nil { @@ -1108,6 +1117,10 @@ func RegisterUser(s *xorm.Session, u *user.User) (*user.User, error) { return nil, err } + if err := CreateDefaultSavedFiltersForUser(s, newUser); err != nil { + return nil, err + } + return newUser, nil } diff --git a/pkg/yaegi_symbols/vikunja_models.go b/pkg/yaegi_symbols/vikunja_models.go index cd2621c81..7503cb46f 100644 --- a/pkg/yaegi_symbols/vikunja_models.go +++ b/pkg/yaegi_symbols/vikunja_models.go @@ -16,6 +16,7 @@ func init() { "BucketConfigurationModeNone": reflect.ValueOf(models.BucketConfigurationModeNone), "CanDoAPIRoute": reflect.ValueOf(models.CanDoAPIRoute), "CollectRoutesForAPITokenUsage": reflect.ValueOf(models.CollectRoutesForAPITokenUsage), + "CreateDefaultSavedFiltersForUser": reflect.ValueOf(models.CreateDefaultSavedFiltersForUser), "CreateDefaultViewsForProject": reflect.ValueOf(models.CreateDefaultViewsForProject), "CreateNewProjectForUser": reflect.ValueOf(models.CreateNewProjectForUser), "CreateProject": reflect.ValueOf(models.CreateProject),