only add items to list once they are available

This commit is contained in:
j 2016-02-11 22:52:39 +05:30
commit 83ceb5b63f
3 changed files with 25 additions and 18 deletions

View file

@ -329,18 +329,22 @@ class List(db.Model):
def add_items(self, items, commit=True):
from item.models import Item
available_items = []
for item_id in items:
i = Item.get(item_id)
if i and i not in self.items:
self.items.append(i)
if self.user_id == settings.USER_ID:
i.queue_download()
i.update(commit=commit)
if i:
if i not in self.items:
self.items.append(i)
if self.user_id == settings.USER_ID:
i.queue_download()
i.update(commit=commit)
if i.info['mediastate'] == 'available':
available_items.append(item_id)
state.db.session.add(self)
if commit:
state.db.session.commit()
if self.user_id == settings.USER_ID and self.name != '':
Changelog.record(self.user, 'addlistitems', self.name, items)
if self.user_id == settings.USER_ID and self.name != '' and available_items:
Changelog.record(self.user, 'addlistitems', self.name, available_items)
def get_items(self):
from item.models import Item