From 51f9d8f690f68d66ca39e6eea5987bc4ba54ab86 Mon Sep 17 00:00:00 2001 From: sytone Date: Thu, 27 May 2021 11:27:03 -0700 Subject: [PATCH 1/5] Add default list setting --- pkg/migration/20210527105701.go | 43 ++++++++++++++++++++++++++++++ pkg/models/label_task_test.go | 1 + pkg/models/label_test.go | 4 +++ pkg/models/list_users_test.go | 2 ++ pkg/models/namespace_users_test.go | 2 ++ pkg/models/task_collection_test.go | 3 +++ pkg/models/users_list_test.go | 13 +++++++++ pkg/routes/api/v1/user_settings.go | 4 +++ pkg/routes/api/v1/user_show.go | 1 + pkg/swagger/docs.go | 4 +++ pkg/swagger/swagger.json | 4 +++ pkg/swagger/swagger.yaml | 3 +++ pkg/user/user.go | 2 ++ 13 files changed, 86 insertions(+) create mode 100644 pkg/migration/20210527105701.go diff --git a/pkg/migration/20210527105701.go b/pkg/migration/20210527105701.go new file mode 100644 index 000000000..59c33cc41 --- /dev/null +++ b/pkg/migration/20210527105701.go @@ -0,0 +1,43 @@ +// Vikunja is a to-do list application to facilitate your life. +// Copyright 2018-2021 Vikunja and contributors. All rights reserved. +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public Licensee as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public Licensee for more details. +// +// You should have received a copy of the GNU Affero General Public Licensee +// along with this program. If not, see . + +package migration + +import ( + "src.techknowlogick.com/xormigrate" + "xorm.io/xorm" +) + +type users20210527105701 struct { + DefaultListForNewTasks int `xorm:"int default 1 index" json:"-"` +} + +func (users20210527105701) TableName() string { + return "users" +} + +func init() { + migrations = append(migrations, &xormigrate.Migration{ + ID: "20210527105701", + Description: "Add default list for new tasks setting to users", + Migrate: func(tx *xorm.Engine) error { + return tx.Sync2(users20210527105701{}) + }, + Rollback: func(tx *xorm.Engine) error { + return nil + }, + }) +} diff --git a/pkg/models/label_task_test.go b/pkg/models/label_task_test.go index 7bd082137..56a4afb05 100644 --- a/pkg/models/label_task_test.go +++ b/pkg/models/label_task_test.go @@ -75,6 +75,7 @@ func TestLabelTask_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, diff --git a/pkg/models/label_test.go b/pkg/models/label_test.go index 9666695c8..166a48733 100644 --- a/pkg/models/label_test.go +++ b/pkg/models/label_test.go @@ -55,6 +55,7 @@ func TestLabel_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -105,6 +106,7 @@ func TestLabel_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, @@ -170,6 +172,7 @@ func TestLabel_ReadOne(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -231,6 +234,7 @@ func TestLabel_ReadOne(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, diff --git a/pkg/models/list_users_test.go b/pkg/models/list_users_test.go index f36858b27..9d4e7f0df 100644 --- a/pkg/models/list_users_test.go +++ b/pkg/models/list_users_test.go @@ -184,6 +184,7 @@ func TestListUser_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, @@ -197,6 +198,7 @@ func TestListUser_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, diff --git a/pkg/models/namespace_users_test.go b/pkg/models/namespace_users_test.go index f9fe51d99..b422b12d1 100644 --- a/pkg/models/namespace_users_test.go +++ b/pkg/models/namespace_users_test.go @@ -183,6 +183,7 @@ func TestNamespaceUser_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, @@ -196,6 +197,7 @@ func TestNamespaceUser_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, diff --git a/pkg/models/task_collection_test.go b/pkg/models/task_collection_test.go index fc163ab8b..484bdad73 100644 --- a/pkg/models/task_collection_test.go +++ b/pkg/models/task_collection_test.go @@ -38,6 +38,7 @@ func TestTaskCollection_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -48,6 +49,7 @@ func TestTaskCollection_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -59,6 +61,7 @@ func TestTaskCollection_ReadAll(t *testing.T) { IsActive: true, EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } diff --git a/pkg/models/users_list_test.go b/pkg/models/users_list_test.go index dc4c17ea9..ec57ad025 100644 --- a/pkg/models/users_list_test.go +++ b/pkg/models/users_list_test.go @@ -33,6 +33,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -43,6 +44,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -54,6 +56,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -66,6 +69,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -78,6 +82,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -89,6 +94,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -101,6 +107,7 @@ func TestListUsersFromList(t *testing.T) { EmailRemindersEnabled: true, DiscoverableByEmail: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -112,6 +119,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -123,6 +131,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -134,6 +143,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -146,6 +156,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -159,6 +170,7 @@ func TestListUsersFromList(t *testing.T) { EmailRemindersEnabled: true, DiscoverableByName: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -170,6 +182,7 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, + DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } diff --git a/pkg/routes/api/v1/user_settings.go b/pkg/routes/api/v1/user_settings.go index e5255efe8..12f9fb84b 100644 --- a/pkg/routes/api/v1/user_settings.go +++ b/pkg/routes/api/v1/user_settings.go @@ -45,6 +45,9 @@ type UserSettings struct { DiscoverableByEmail bool `json:"discoverable_by_email"` // If enabled, the user will get an email for their overdue tasks each morning. OverdueTasksRemindersEnabled bool `json:"overdue_tasks_reminders_enabled"` + // If a task is created without a specified list this value should be used. Applies + // to tasks made directly in API and from clients. + DefaultListForNewTasks int `json:"default_list_for_new_tasks"` } // GetUserAvatarProvider returns the currently set user avatar @@ -170,6 +173,7 @@ func UpdateGeneralUserSettings(c echo.Context) error { user.DiscoverableByEmail = us.DiscoverableByEmail user.DiscoverableByName = us.DiscoverableByName user.OverdueTasksRemindersEnabled = us.OverdueTasksRemindersEnabled + user.DefaultListForNewTasks = us.DefaultListForNewTasks _, err = user2.UpdateUser(s, user) if err != nil { diff --git a/pkg/routes/api/v1/user_show.go b/pkg/routes/api/v1/user_show.go index 601962d63..a9df583d6 100644 --- a/pkg/routes/api/v1/user_show.go +++ b/pkg/routes/api/v1/user_show.go @@ -68,6 +68,7 @@ func UserShow(c echo.Context) error { DiscoverableByName: u.DiscoverableByName, DiscoverableByEmail: u.DiscoverableByEmail, OverdueTasksRemindersEnabled: u.OverdueTasksRemindersEnabled, + DefaultListForNewTasks: u.DefaultListForNewTasks, }, } diff --git a/pkg/swagger/docs.go b/pkg/swagger/docs.go index f7e878ebb..6fd1a76e9 100644 --- a/pkg/swagger/docs.go +++ b/pkg/swagger/docs.go @@ -8575,6 +8575,10 @@ var doc = `{ "overdue_tasks_reminders_enabled": { "description": "If enabled, the user will get an email for their overdue tasks each morning.", "type": "boolean" + }, + "default_list_for_new_tasks": { + "description": "If set this will be the default list used when a task is created with no specified list.", + "type": "integer" } } }, diff --git a/pkg/swagger/swagger.json b/pkg/swagger/swagger.json index 7428aeb83..5e53bac87 100644 --- a/pkg/swagger/swagger.json +++ b/pkg/swagger/swagger.json @@ -8558,6 +8558,10 @@ "overdue_tasks_reminders_enabled": { "description": "If enabled, the user will get an email for their overdue tasks each morning.", "type": "boolean" + }, + "default_list_for_new_tasks": { + "description": "If set this will be the default list used when a task is created with no specified list.", + "type": "integer" } } }, diff --git a/pkg/swagger/swagger.yaml b/pkg/swagger/swagger.yaml index bfa224f28..6cd83cfc0 100644 --- a/pkg/swagger/swagger.yaml +++ b/pkg/swagger/swagger.yaml @@ -1196,6 +1196,9 @@ definitions: description: If enabled, the user will get an email for their overdue tasks each morning. type: boolean + default_list_for_new_tasks: + description: If set this will be the default list used when a task is created with no specified list. + type: integer type: object v1.authInfo: properties: diff --git a/pkg/user/user.go b/pkg/user/user.go index 8b32510a2..c3894b00f 100644 --- a/pkg/user/user.go +++ b/pkg/user/user.go @@ -71,6 +71,7 @@ type User struct { DiscoverableByName bool `xorm:"bool default false index" json:"-"` DiscoverableByEmail bool `xorm:"bool default false index" json:"-"` OverdueTasksRemindersEnabled bool `xorm:"bool default true index" json:"-"` + DefaultListForNewTasks int `xorm:"int default 1 index" json:"-"` // A timestamp when this task was created. You cannot change this value. Created time.Time `xorm:"created not null" json:"created"` @@ -371,6 +372,7 @@ func UpdateUser(s *xorm.Session, user *User) (updatedUser *User, err error) { "discoverable_by_name", "discoverable_by_email", "overdue_tasks_reminders_enabled", + "default_list_for_new_tasks", ). Update(user) if err != nil { -- 2.40.1 From 350f59c47969636a553e5d0e2e7102266afde27e Mon Sep 17 00:00:00 2001 From: sytone Date: Thu, 27 May 2021 12:59:04 -0700 Subject: [PATCH 2/5] Fix fmt issue --- pkg/migration/20210527105701.go | 86 ++++++++++++++++----------------- 1 file changed, 43 insertions(+), 43 deletions(-) diff --git a/pkg/migration/20210527105701.go b/pkg/migration/20210527105701.go index 59c33cc41..af650572e 100644 --- a/pkg/migration/20210527105701.go +++ b/pkg/migration/20210527105701.go @@ -1,43 +1,43 @@ -// Vikunja is a to-do list application to facilitate your life. -// Copyright 2018-2021 Vikunja and contributors. All rights reserved. -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU Affero General Public Licensee as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU Affero General Public Licensee for more details. -// -// You should have received a copy of the GNU Affero General Public Licensee -// along with this program. If not, see . - -package migration - -import ( - "src.techknowlogick.com/xormigrate" - "xorm.io/xorm" -) - -type users20210527105701 struct { - DefaultListForNewTasks int `xorm:"int default 1 index" json:"-"` -} - -func (users20210527105701) TableName() string { - return "users" -} - -func init() { - migrations = append(migrations, &xormigrate.Migration{ - ID: "20210527105701", - Description: "Add default list for new tasks setting to users", - Migrate: func(tx *xorm.Engine) error { - return tx.Sync2(users20210527105701{}) - }, - Rollback: func(tx *xorm.Engine) error { - return nil - }, - }) -} +// Vikunja is a to-do list application to facilitate your life. +// Copyright 2018-2021 Vikunja and contributors. All rights reserved. +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU Affero General Public Licensee as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU Affero General Public Licensee for more details. +// +// You should have received a copy of the GNU Affero General Public Licensee +// along with this program. If not, see . + +package migration + +import ( + "src.techknowlogick.com/xormigrate" + "xorm.io/xorm" +) + +type users20210527105701 struct { + DefaultListForNewTasks int `xorm:"int default 1 index" json:"-"` +} + +func (users20210527105701) TableName() string { + return "users" +} + +func init() { + migrations = append(migrations, &xormigrate.Migration{ + ID: "20210527105701", + Description: "Add default list for new tasks setting to users", + Migrate: func(tx *xorm.Engine) error { + return tx.Sync2(users20210527105701{}) + }, + Rollback: func(tx *xorm.Engine) error { + return nil + }, + }) +} -- 2.40.1 From e8135dcf750b1d133536891d8d2cce80110fa113 Mon Sep 17 00:00:00 2001 From: Sytone Date: Wed, 2 Jun 2021 10:09:45 -0700 Subject: [PATCH 3/5] Fix swagger issues Add editor config for consistency --- .editorconfig | 11 +++++++++++ pkg/swagger/docs.go | 8 ++++---- pkg/swagger/swagger.json | 8 ++++---- pkg/swagger/swagger.yaml | 8 +++++--- 4 files changed, 24 insertions(+), 11 deletions(-) create mode 100644 .editorconfig diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 000000000..66ac3eeb9 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,11 @@ +# EditorConfig is awesome: https://EditorConfig.org + +# top-most EditorConfig file +root = true + +[*] +indent_style = tab +end_of_line = lf +charset = utf-8 +trim_trailing_whitespace = false +insert_final_newline = false \ No newline at end of file diff --git a/pkg/swagger/docs.go b/pkg/swagger/docs.go index 6fd1a76e9..90b85102e 100644 --- a/pkg/swagger/docs.go +++ b/pkg/swagger/docs.go @@ -8556,6 +8556,10 @@ var doc = `{ "v1.UserSettings": { "type": "object", "properties": { + "default_list_for_new_tasks": { + "description": "If a task is created without a specified list this value should be used. Applies\nto tasks made directly in API and from clients.", + "type": "integer" + }, "discoverable_by_email": { "description": "If true, the user can be found when searching for their exact email.", "type": "boolean" @@ -8575,10 +8579,6 @@ var doc = `{ "overdue_tasks_reminders_enabled": { "description": "If enabled, the user will get an email for their overdue tasks each morning.", "type": "boolean" - }, - "default_list_for_new_tasks": { - "description": "If set this will be the default list used when a task is created with no specified list.", - "type": "integer" } } }, diff --git a/pkg/swagger/swagger.json b/pkg/swagger/swagger.json index 5e53bac87..1d0b96427 100644 --- a/pkg/swagger/swagger.json +++ b/pkg/swagger/swagger.json @@ -8539,6 +8539,10 @@ "v1.UserSettings": { "type": "object", "properties": { + "default_list_for_new_tasks": { + "description": "If a task is created without a specified list this value should be used. Applies\nto tasks made directly in API and from clients.", + "type": "integer" + }, "discoverable_by_email": { "description": "If true, the user can be found when searching for their exact email.", "type": "boolean" @@ -8558,10 +8562,6 @@ "overdue_tasks_reminders_enabled": { "description": "If enabled, the user will get an email for their overdue tasks each morning.", "type": "boolean" - }, - "default_list_for_new_tasks": { - "description": "If set this will be the default list used when a task is created with no specified list.", - "type": "integer" } } }, diff --git a/pkg/swagger/swagger.yaml b/pkg/swagger/swagger.yaml index 6cd83cfc0..51285dd5b 100644 --- a/pkg/swagger/swagger.yaml +++ b/pkg/swagger/swagger.yaml @@ -1178,6 +1178,11 @@ definitions: type: object v1.UserSettings: properties: + default_list_for_new_tasks: + description: |- + If a task is created without a specified list this value should be used. Applies + to tasks made directly in API and from clients. + type: integer discoverable_by_email: description: If true, the user can be found when searching for their exact email. @@ -1196,9 +1201,6 @@ definitions: description: If enabled, the user will get an email for their overdue tasks each morning. type: boolean - default_list_for_new_tasks: - description: If set this will be the default list used when a task is created with no specified list. - type: integer type: object v1.authInfo: properties: -- 2.40.1 From 302064b4bb22f8021eaffc0b22c8b0461044264e Mon Sep 17 00:00:00 2001 From: Sytone Date: Wed, 2 Jun 2021 10:28:56 -0700 Subject: [PATCH 4/5] Updated xorm to bigint Update model to int64 Made value null by default Updated tests to not set by default Updated Swagger documents --- pkg/migration/20210527105701.go | 2 +- pkg/models/label_task_test.go | 1 - pkg/models/label_test.go | 4 ---- pkg/models/list_users_test.go | 2 -- pkg/models/namespace_users_test.go | 2 -- pkg/models/task_collection_test.go | 3 --- pkg/models/users_list_test.go | 13 ------------- pkg/routes/api/v1/user_settings.go | 4 ++-- pkg/routes/api/v1/user_show.go | 2 +- pkg/swagger/docs.go | 2 +- pkg/swagger/swagger.json | 2 +- pkg/swagger/swagger.yaml | 2 +- pkg/user/user.go | 12 ++++++------ 13 files changed, 13 insertions(+), 38 deletions(-) diff --git a/pkg/migration/20210527105701.go b/pkg/migration/20210527105701.go index af650572e..3f6a96f6b 100644 --- a/pkg/migration/20210527105701.go +++ b/pkg/migration/20210527105701.go @@ -22,7 +22,7 @@ import ( ) type users20210527105701 struct { - DefaultListForNewTasks int `xorm:"int default 1 index" json:"-"` + DefaultListID int64 `xorm:"bigint null index" json:"-"` } func (users20210527105701) TableName() string { diff --git a/pkg/models/label_task_test.go b/pkg/models/label_task_test.go index 56a4afb05..7bd082137 100644 --- a/pkg/models/label_task_test.go +++ b/pkg/models/label_task_test.go @@ -75,7 +75,6 @@ func TestLabelTask_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, diff --git a/pkg/models/label_test.go b/pkg/models/label_test.go index 166a48733..9666695c8 100644 --- a/pkg/models/label_test.go +++ b/pkg/models/label_test.go @@ -55,7 +55,6 @@ func TestLabel_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -106,7 +105,6 @@ func TestLabel_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, @@ -172,7 +170,6 @@ func TestLabel_ReadOne(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -234,7 +231,6 @@ func TestLabel_ReadOne(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, diff --git a/pkg/models/list_users_test.go b/pkg/models/list_users_test.go index 9d4e7f0df..f36858b27 100644 --- a/pkg/models/list_users_test.go +++ b/pkg/models/list_users_test.go @@ -184,7 +184,6 @@ func TestListUser_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, @@ -198,7 +197,6 @@ func TestListUser_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, diff --git a/pkg/models/namespace_users_test.go b/pkg/models/namespace_users_test.go index b422b12d1..f9fe51d99 100644 --- a/pkg/models/namespace_users_test.go +++ b/pkg/models/namespace_users_test.go @@ -183,7 +183,6 @@ func TestNamespaceUser_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, @@ -197,7 +196,6 @@ func TestNamespaceUser_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, }, diff --git a/pkg/models/task_collection_test.go b/pkg/models/task_collection_test.go index 484bdad73..fc163ab8b 100644 --- a/pkg/models/task_collection_test.go +++ b/pkg/models/task_collection_test.go @@ -38,7 +38,6 @@ func TestTaskCollection_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -49,7 +48,6 @@ func TestTaskCollection_ReadAll(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -61,7 +59,6 @@ func TestTaskCollection_ReadAll(t *testing.T) { IsActive: true, EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } diff --git a/pkg/models/users_list_test.go b/pkg/models/users_list_test.go index ec57ad025..dc4c17ea9 100644 --- a/pkg/models/users_list_test.go +++ b/pkg/models/users_list_test.go @@ -33,7 +33,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -44,7 +43,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -56,7 +54,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -69,7 +66,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -82,7 +78,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -94,7 +89,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -107,7 +101,6 @@ func TestListUsersFromList(t *testing.T) { EmailRemindersEnabled: true, DiscoverableByEmail: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -119,7 +112,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -131,7 +123,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -143,7 +134,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -156,7 +146,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -170,7 +159,6 @@ func TestListUsersFromList(t *testing.T) { EmailRemindersEnabled: true, DiscoverableByName: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } @@ -182,7 +170,6 @@ func TestListUsersFromList(t *testing.T) { Issuer: "local", EmailRemindersEnabled: true, OverdueTasksRemindersEnabled: true, - DefaultListForNewTasks: 1, Created: testCreatedTime, Updated: testUpdatedTime, } diff --git a/pkg/routes/api/v1/user_settings.go b/pkg/routes/api/v1/user_settings.go index 12f9fb84b..3eacef8e8 100644 --- a/pkg/routes/api/v1/user_settings.go +++ b/pkg/routes/api/v1/user_settings.go @@ -47,7 +47,7 @@ type UserSettings struct { OverdueTasksRemindersEnabled bool `json:"overdue_tasks_reminders_enabled"` // If a task is created without a specified list this value should be used. Applies // to tasks made directly in API and from clients. - DefaultListForNewTasks int `json:"default_list_for_new_tasks"` + DefaultListID int64 `json:"default_list_id"` } // GetUserAvatarProvider returns the currently set user avatar @@ -173,7 +173,7 @@ func UpdateGeneralUserSettings(c echo.Context) error { user.DiscoverableByEmail = us.DiscoverableByEmail user.DiscoverableByName = us.DiscoverableByName user.OverdueTasksRemindersEnabled = us.OverdueTasksRemindersEnabled - user.DefaultListForNewTasks = us.DefaultListForNewTasks + user.DefaultListID = us.DefaultListID _, err = user2.UpdateUser(s, user) if err != nil { diff --git a/pkg/routes/api/v1/user_show.go b/pkg/routes/api/v1/user_show.go index a9df583d6..b9793997a 100644 --- a/pkg/routes/api/v1/user_show.go +++ b/pkg/routes/api/v1/user_show.go @@ -68,7 +68,7 @@ func UserShow(c echo.Context) error { DiscoverableByName: u.DiscoverableByName, DiscoverableByEmail: u.DiscoverableByEmail, OverdueTasksRemindersEnabled: u.OverdueTasksRemindersEnabled, - DefaultListForNewTasks: u.DefaultListForNewTasks, + DefaultListID: u.DefaultListID, }, } diff --git a/pkg/swagger/docs.go b/pkg/swagger/docs.go index 90b85102e..b4d89e9cc 100644 --- a/pkg/swagger/docs.go +++ b/pkg/swagger/docs.go @@ -8556,7 +8556,7 @@ var doc = `{ "v1.UserSettings": { "type": "object", "properties": { - "default_list_for_new_tasks": { + "default_list_id": { "description": "If a task is created without a specified list this value should be used. Applies\nto tasks made directly in API and from clients.", "type": "integer" }, diff --git a/pkg/swagger/swagger.json b/pkg/swagger/swagger.json index 1d0b96427..70e7ef04d 100644 --- a/pkg/swagger/swagger.json +++ b/pkg/swagger/swagger.json @@ -8539,7 +8539,7 @@ "v1.UserSettings": { "type": "object", "properties": { - "default_list_for_new_tasks": { + "default_list_id": { "description": "If a task is created without a specified list this value should be used. Applies\nto tasks made directly in API and from clients.", "type": "integer" }, diff --git a/pkg/swagger/swagger.yaml b/pkg/swagger/swagger.yaml index 51285dd5b..3bb815c66 100644 --- a/pkg/swagger/swagger.yaml +++ b/pkg/swagger/swagger.yaml @@ -1178,7 +1178,7 @@ definitions: type: object v1.UserSettings: properties: - default_list_for_new_tasks: + default_list_id: description: |- If a task is created without a specified list this value should be used. Applies to tasks made directly in API and from clients. diff --git a/pkg/user/user.go b/pkg/user/user.go index c3894b00f..2108c8735 100644 --- a/pkg/user/user.go +++ b/pkg/user/user.go @@ -67,11 +67,11 @@ type User struct { Issuer string `xorm:"text null" json:"-"` Subject string `xorm:"text null" json:"-"` - EmailRemindersEnabled bool `xorm:"bool default true" json:"-"` - DiscoverableByName bool `xorm:"bool default false index" json:"-"` - DiscoverableByEmail bool `xorm:"bool default false index" json:"-"` - OverdueTasksRemindersEnabled bool `xorm:"bool default true index" json:"-"` - DefaultListForNewTasks int `xorm:"int default 1 index" json:"-"` + EmailRemindersEnabled bool `xorm:"bool default true" json:"-"` + DiscoverableByName bool `xorm:"bool default false index" json:"-"` + DiscoverableByEmail bool `xorm:"bool default false index" json:"-"` + OverdueTasksRemindersEnabled bool `xorm:"bool default true index" json:"-"` + DefaultListID int64 `xorm:"bigint null index" json:"-"` // A timestamp when this task was created. You cannot change this value. Created time.Time `xorm:"created not null" json:"created"` @@ -372,7 +372,7 @@ func UpdateUser(s *xorm.Session, user *User) (updatedUser *User, err error) { "discoverable_by_name", "discoverable_by_email", "overdue_tasks_reminders_enabled", - "default_list_for_new_tasks", + "default_list_id", ). Update(user) if err != nil { -- 2.40.1 From 15f1b15dbfa209778c8f21a0240d13852eabb4d0 Mon Sep 17 00:00:00 2001 From: Sytone Date: Wed, 2 Jun 2021 10:36:45 -0700 Subject: [PATCH 5/5] Update to match swagger formatting Update to match yaml files --- .editorconfig | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/.editorconfig b/.editorconfig index 66ac3eeb9..8e994f3ca 100644 --- a/.editorconfig +++ b/.editorconfig @@ -8,4 +8,15 @@ indent_style = tab end_of_line = lf charset = utf-8 trim_trailing_whitespace = false -insert_final_newline = false \ No newline at end of file +insert_final_newline = false + +[*.go] +indent_style = tab + +[*.{yaml,yml}] +indent_style = space +indent_size = 2 + +[*.json] +indent_style = space +indent_size = 4 \ No newline at end of file -- 2.40.1