Movie > Media
This commit is contained in:
@@ -6,7 +6,7 @@ from couchpotato.core.helpers.variable import getImdb, splitString, tryInt, \
|
|||||||
mergeDicts
|
mergeDicts
|
||||||
from couchpotato.core.logger import CPLog
|
from couchpotato.core.logger import CPLog
|
||||||
from couchpotato.core.media.movie import MovieTypeBase
|
from couchpotato.core.media.movie import MovieTypeBase
|
||||||
from couchpotato.core.settings.model import Library, LibraryTitle, Movie, \
|
from couchpotato.core.settings.model import Library, LibraryTitle, Media, \
|
||||||
Release
|
Release
|
||||||
from couchpotato.environment import Env
|
from couchpotato.environment import Env
|
||||||
from sqlalchemy.orm import joinedload_all
|
from sqlalchemy.orm import joinedload_all
|
||||||
@@ -169,20 +169,20 @@ class MovieBase(MovieTypeBase):
|
|||||||
release_status = [release_status]
|
release_status = [release_status]
|
||||||
|
|
||||||
# query movie ids
|
# query movie ids
|
||||||
q = db.query(Movie) \
|
q = db.query(Media) \
|
||||||
.with_entities(Movie.id) \
|
.with_entities(Media.id) \
|
||||||
.group_by(Movie.id)
|
.group_by(Media.id)
|
||||||
|
|
||||||
# Filter on movie status
|
# Filter on movie status
|
||||||
if status and len(status) > 0:
|
if status and len(status) > 0:
|
||||||
statuses = fireEvent('status.get', status, single = len(status) > 1)
|
statuses = fireEvent('status.get', status, single = len(status) > 1)
|
||||||
statuses = [s.get('id') for s in statuses]
|
statuses = [s.get('id') for s in statuses]
|
||||||
|
|
||||||
q = q.filter(Movie.status_id.in_(statuses))
|
q = q.filter(Media.status_id.in_(statuses))
|
||||||
|
|
||||||
# Filter on release status
|
# Filter on release status
|
||||||
if release_status and len(release_status) > 0:
|
if release_status and len(release_status) > 0:
|
||||||
q = q.join(Movie.releases)
|
q = q.join(Media.releases)
|
||||||
|
|
||||||
statuses = fireEvent('status.get', release_status, single = len(release_status) > 1)
|
statuses = fireEvent('status.get', release_status, single = len(release_status) > 1)
|
||||||
statuses = [s.get('id') for s in statuses]
|
statuses = [s.get('id') for s in statuses]
|
||||||
@@ -191,7 +191,7 @@ class MovieBase(MovieTypeBase):
|
|||||||
|
|
||||||
# Only join when searching / ordering
|
# Only join when searching / ordering
|
||||||
if starts_with or search or order != 'release_order':
|
if starts_with or search or order != 'release_order':
|
||||||
q = q.join(Movie.library, Library.titles) \
|
q = q.join(Media.library, Library.titles) \
|
||||||
.filter(LibraryTitle.default == True)
|
.filter(LibraryTitle.default == True)
|
||||||
|
|
||||||
# Add search filters
|
# Add search filters
|
||||||
@@ -242,13 +242,13 @@ class MovieBase(MovieTypeBase):
|
|||||||
releases_count[release.movie_id] += 1
|
releases_count[release.movie_id] += 1
|
||||||
|
|
||||||
# Get main movie data
|
# Get main movie data
|
||||||
q2 = db.query(Movie) \
|
q2 = db.query(Media) \
|
||||||
.options(joinedload_all('library.titles')) \
|
.options(joinedload_all('library.titles')) \
|
||||||
.options(joinedload_all('library.files')) \
|
.options(joinedload_all('library.files')) \
|
||||||
.options(joinedload_all('status')) \
|
.options(joinedload_all('status')) \
|
||||||
.options(joinedload_all('files'))
|
.options(joinedload_all('files'))
|
||||||
|
|
||||||
q2 = q2.filter(Movie.id.in_(movie_ids))
|
q2 = q2.filter(Media.id.in_(movie_ids))
|
||||||
|
|
||||||
results = q2.all()
|
results = q2.all()
|
||||||
|
|
||||||
@@ -291,14 +291,14 @@ class MovieBase(MovieTypeBase):
|
|||||||
if release_status and not isinstance(release_status, (list, tuple)):
|
if release_status and not isinstance(release_status, (list, tuple)):
|
||||||
release_status = [release_status]
|
release_status = [release_status]
|
||||||
|
|
||||||
q = db.query(Movie)
|
q = db.query(Media)
|
||||||
|
|
||||||
# Filter on movie status
|
# Filter on movie status
|
||||||
if status and len(status) > 0:
|
if status and len(status) > 0:
|
||||||
statuses = fireEvent('status.get', status, single = len(release_status) > 1)
|
statuses = fireEvent('status.get', status, single = len(release_status) > 1)
|
||||||
statuses = [s.get('id') for s in statuses]
|
statuses = [s.get('id') for s in statuses]
|
||||||
|
|
||||||
q = q.filter(Movie.status_id.in_(statuses))
|
q = q.filter(Media.status_id.in_(statuses))
|
||||||
|
|
||||||
# Filter on release status
|
# Filter on release status
|
||||||
if release_status and len(release_status) > 0:
|
if release_status and len(release_status) > 0:
|
||||||
@@ -306,7 +306,7 @@ class MovieBase(MovieTypeBase):
|
|||||||
statuses = fireEvent('status.get', release_status, single = len(release_status) > 1)
|
statuses = fireEvent('status.get', release_status, single = len(release_status) > 1)
|
||||||
statuses = [s.get('id') for s in statuses]
|
statuses = [s.get('id') for s in statuses]
|
||||||
|
|
||||||
q = q.join(Movie.releases) \
|
q = q.join(Media.releases) \
|
||||||
.filter(Release.status_id.in_(statuses))
|
.filter(Release.status_id.in_(statuses))
|
||||||
|
|
||||||
q = q.join(Library, LibraryTitle) \
|
q = q.join(Library, LibraryTitle) \
|
||||||
@@ -372,7 +372,7 @@ class MovieBase(MovieTypeBase):
|
|||||||
db = get_session()
|
db = get_session()
|
||||||
|
|
||||||
for x in splitString(id):
|
for x in splitString(id):
|
||||||
movie = db.query(Movie).filter_by(id = x).first()
|
movie = db.query(Media).filter_by(id = x).first()
|
||||||
|
|
||||||
if movie:
|
if movie:
|
||||||
|
|
||||||
@@ -438,12 +438,12 @@ class MovieBase(MovieTypeBase):
|
|||||||
cat_id = params.get('category_id')
|
cat_id = params.get('category_id')
|
||||||
|
|
||||||
db = get_session()
|
db = get_session()
|
||||||
m = db.query(Movie).filter_by(library_id = library.get('id')).first()
|
m = db.query(Media).filter_by(library_id = library.get('id')).first()
|
||||||
added = True
|
added = True
|
||||||
do_search = False
|
do_search = False
|
||||||
search_after = search_after and self.conf('search_on_add', section = 'moviesearcher')
|
search_after = search_after and self.conf('search_on_add', section = 'moviesearcher')
|
||||||
if not m:
|
if not m:
|
||||||
m = Movie(
|
m = Media(
|
||||||
library_id = library.get('id'),
|
library_id = library.get('id'),
|
||||||
profile_id = params.get('profile_id', default_profile.get('id')),
|
profile_id = params.get('profile_id', default_profile.get('id')),
|
||||||
status_id = status_id if status_id else status_active.get('id'),
|
status_id = status_id if status_id else status_active.get('id'),
|
||||||
@@ -520,7 +520,7 @@ class MovieBase(MovieTypeBase):
|
|||||||
ids = splitString(id)
|
ids = splitString(id)
|
||||||
for movie_id in ids:
|
for movie_id in ids:
|
||||||
|
|
||||||
m = db.query(Movie).filter_by(id = movie_id).first()
|
m = db.query(Media).filter_by(id = movie_id).first()
|
||||||
if not m:
|
if not m:
|
||||||
continue
|
continue
|
||||||
|
|
||||||
@@ -567,7 +567,7 @@ class MovieBase(MovieTypeBase):
|
|||||||
|
|
||||||
db = get_session()
|
db = get_session()
|
||||||
|
|
||||||
movie = db.query(Movie).filter_by(id = movie_id).first()
|
movie = db.query(Media).filter_by(id = movie_id).first()
|
||||||
if movie:
|
if movie:
|
||||||
deleted = False
|
deleted = False
|
||||||
if delete_from == 'all':
|
if delete_from == 'all':
|
||||||
@@ -617,7 +617,7 @@ class MovieBase(MovieTypeBase):
|
|||||||
|
|
||||||
db = get_session()
|
db = get_session()
|
||||||
|
|
||||||
m = db.query(Movie).filter_by(id = movie_id).first()
|
m = db.query(Media).filter_by(id = movie_id).first()
|
||||||
if not m or len(m.library.titles) == 0:
|
if not m or len(m.library.titles) == 0:
|
||||||
log.debug('Can\'t restatus movie, doesn\'t seem to exist.')
|
log.debug('Can\'t restatus movie, doesn\'t seem to exist.')
|
||||||
return False
|
return False
|
||||||
@@ -643,7 +643,7 @@ class MovieBase(MovieTypeBase):
|
|||||||
|
|
||||||
def onComplete():
|
def onComplete():
|
||||||
db = get_session()
|
db = get_session()
|
||||||
movie = db.query(Movie).filter_by(id = movie_id).first()
|
movie = db.query(Media).filter_by(id = movie_id).first()
|
||||||
fireEventAsync('movie.searcher.single', movie.to_dict(self.default_dict), on_complete = self.createNotifyFront(movie_id))
|
fireEventAsync('movie.searcher.single', movie.to_dict(self.default_dict), on_complete = self.createNotifyFront(movie_id))
|
||||||
db.expire_all()
|
db.expire_all()
|
||||||
|
|
||||||
@@ -654,7 +654,7 @@ class MovieBase(MovieTypeBase):
|
|||||||
|
|
||||||
def notifyFront():
|
def notifyFront():
|
||||||
db = get_session()
|
db = get_session()
|
||||||
movie = db.query(Movie).filter_by(id = movie_id).first()
|
movie = db.query(Media).filter_by(id = movie_id).first()
|
||||||
fireEvent('notify.frontend', type = 'movie.update.%s' % movie.id, data = movie.to_dict(self.default_dict))
|
fireEvent('notify.frontend', type = 'movie.update.%s' % movie.id, data = movie.to_dict(self.default_dict))
|
||||||
db.expire_all()
|
db.expire_all()
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user