ensure new users get a default collection on signup and any missing users get them too
This commit is contained in:
@@ -506,10 +506,24 @@ class BookmarkCollections(Model):
|
||||
|
||||
@classmethod
|
||||
def create_default(cls, user_id):
|
||||
q = """INSERT INTO bookmark_collections (user_id, name, is_default, sort_order)
|
||||
VALUES (?, "Bookmarks", 1, 0) RETURNING id
|
||||
"""
|
||||
res = db.fetch_one(q, user_id)
|
||||
return cls.create({
|
||||
'user_id': user_id,
|
||||
'name': 'Bookmarks',
|
||||
'is_default': True,
|
||||
'sort_order': 0,
|
||||
})
|
||||
|
||||
@staticmethod
|
||||
def get_users_without_default():
|
||||
q = """
|
||||
SELECT users.id FROM users
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1 FROM bookmark_collections bc
|
||||
WHERE bc.user_id = users.id
|
||||
AND bc.is_default = 1
|
||||
)
|
||||
"""
|
||||
return [row['id'] for row in db.query(q)]
|
||||
|
||||
@classmethod
|
||||
def get_for_user(cls, user_id):
|
||||
|
||||
Reference in New Issue
Block a user