Browse Source

Migrate update

pull/3111/head
Ruud 11 years ago
parent
commit
2ce0f7beb4
  1. 32
      couchpotato/core/database.py

32
couchpotato/core/database.py

@ -6,6 +6,7 @@ from couchpotato import CPLog
from couchpotato.api import addApiView
from couchpotato.core.event import addEvent, fireEvent
from couchpotato.core.helpers.encoding import toUnicode
from couchpotato.core.helpers.variable import getImdb
log = CPLog(__name__)
@ -112,10 +113,11 @@ class Database(object):
def migrate(self):
time.sleep(1)
from couchpotato import Env
old_db = os.path.join(Env.get('data_dir'), 'couchpotato.db')
if not os.path.isfile(old_db): return
time.sleep(1)
if os.path.isfile(old_db):
@ -282,31 +284,33 @@ class Database(object):
all_files = migrate_data['file']
poster_type = migrate_data['filetype']['poster']
medias = migrate_data['movie']
media_link = {}
for x in medias:
m = medias[x]
status = statuses.get(m['status_id']).get('identifier')
l = libraries[m['library_id']]
# Only migrate wanted movies
if status != 'active': continue
# Only migrate wanted movies, Skip if no identifier present
if status != 'active' or not getImdb(l.get('identifier')): continue
l = libraries[m['library_id']]
profile_id = profile_link.get(m['profile_id'])
category_id = category_link.get(m['category_id'])
title = titles_by_library.get(m['library_id'])
releases = releases_by_media.get(x, [])
info = json.loads(l.get('info', ''))
files = library_files.get(m['library_id'], [])
if not isinstance(files, list):
files = [files]
added_media = fireEvent('movie.add', {
'info': json.loads(l.get('info', '')),
'info': info,
'identifier': l.get('identifier'),
'profile_id': profile_id,
'category_id': category_id,
'title': title
}, force_readd = False, search_after = False, status = status, single = True)
}, force_readd = False, search_after = False, update_after = False, notify_after = False, status = status, single = True)
added_media['files'] = added_media.get('files', {})
for f in files:
file = all_files[f.get('file_id')]
@ -323,16 +327,10 @@ class Database(object):
if not rel.get('info'): continue
quality = quality_link[rel.get('quality_id')]
added_rel = fireEvent('release.create_from_search', [rel['info']], added_media, quality, single = True)
# Update status
added_rel['status'] = status
added_rel['last_edit'] = int(time.time())
db.update(added_rel)
break
return
# Add status to keys
rel['info']['status'] = status
added_rel_identifiers = fireEvent('release.create_from_search', [rel['info']], added_media, quality, single = True)
# rename old database
os.rename(old_db, old_db + '.old')

Loading…
Cancel
Save