get rid of Public lists
This commit is contained in:
parent
9d11bbba53
commit
5f36b2eab4
3 changed files with 18 additions and 2 deletions
|
@ -95,4 +95,4 @@ FULLTEXT_SUPPORT = fulltext.platform_supported()
|
|||
if not FULLTEXT_SUPPORT:
|
||||
config['itemKeys'] = [k for k in config['itemKeys'] if k['id'] != 'fulltext']
|
||||
|
||||
DB_VERSION = 16
|
||||
DB_VERSION = 17
|
||||
|
|
|
@ -375,6 +375,8 @@ class Update(Thread):
|
|||
db_version = migrate_15()
|
||||
if db_version < 16:
|
||||
db_version = migrate_16()
|
||||
if db_version < 17:
|
||||
db_version = migrate_17()
|
||||
settings.server['db_version'] = db_version
|
||||
|
||||
def run(self):
|
||||
|
@ -658,3 +660,17 @@ def migrate_16():
|
|||
'CREATE INDEX IF NOT EXISTS ix_user_nickname ON user (nickname)'
|
||||
])
|
||||
return 16
|
||||
|
||||
def migrate_17():
|
||||
from user.models import List, User
|
||||
from changelog import add_record
|
||||
with db.session():
|
||||
l = List.get(':Public')
|
||||
if not l:
|
||||
add_record('removelist', 'Public')
|
||||
lists = []
|
||||
for l in List.query.filter_by(user_id=settings.USER_ID).order_by('index_'):
|
||||
if l.type == 'static' and l.name not in ('', 'Inbox'):
|
||||
lists.append(l.name)
|
||||
add_record('orderlists', lists)
|
||||
return 17
|
||||
|
|
|
@ -368,7 +368,7 @@ class List(db.Model):
|
|||
q = list_items.delete().where(list_items.columns['list_id'].is_(self.id))
|
||||
state.db.session.execute(q)
|
||||
if not self._query:
|
||||
if self.user_id == settings.USER_ID and self.name != '':
|
||||
if self.user_id == settings.USER_ID and self.name not in ('', 'Inbox'):
|
||||
add_record('removelist', self.name)
|
||||
state.db.session.delete(self)
|
||||
if commit:
|
||||
|
|
Loading…
Reference in a new issue