Browse Source

Allow for multiple status selection in the API

pull/51/merge
Ruud 14 years ago
parent
commit
85c3b16e69
  1. 10
      couchpotato/core/plugins/movie/main.py
  2. 2
      couchpotato/static/scripts/page/wanted.js

10
couchpotato/core/plugins/movie/main.py

@ -5,6 +5,7 @@ from couchpotato.core.helpers.request import getParams, jsonified
from couchpotato.core.plugins.base import Plugin from couchpotato.core.plugins.base import Plugin
from couchpotato.core.settings.model import Movie from couchpotato.core.settings.model import Movie
from couchpotato.environment import Env from couchpotato.environment import Env
from sqlalchemy.sql.expression import or_
from urllib import urlencode from urllib import urlencode
@ -32,9 +33,12 @@ class MoviePlugin(Plugin):
params = getParams() params = getParams()
db = get_session() db = get_session()
results = db.query(Movie).filter( # Make a list from string
Movie.status.has(identifier = params.get('status', 'active')) status = params.get('status', ['active'])
).all() if not isinstance(status, (list, tuple)):
status = [status]
results = db.query(Movie).filter(or_(*[Movie.status.has(identifier = s) for s in status])).all()
movies = [] movies = []
for movie in results: for movie in results:

2
couchpotato/static/scripts/page/wanted.js

@ -12,7 +12,7 @@ Page.Wanted = new Class({
// Wanted movies // Wanted movies
self.wanted = new MovieList({ self.wanted = new MovieList({
'status': 'active', 'status': ['active', 'snatched'],
'actions': WantedActions 'actions': WantedActions
}); });
$(self.wanted).inject(self.el); $(self.wanted).inject(self.el);

Loading…
Cancel
Save