Browse Source

Moved "quality.single" to "quality/main", created "quality.get" event

pull/3761/head
Dean Gardiner 11 years ago
parent
commit
058d241c73
  1. 26
      couchpotato/core/media/_base/quality/base.py
  2. 17
      couchpotato/core/media/_base/quality/main.py

26
couchpotato/core/media/_base/quality/base.py

@ -28,9 +28,11 @@ class QualityBase(Plugin):
def __init__(self):
addEvent('quality.pre_releases', self.preReleases)
addEvent('quality.get', self.get)
addEvent('quality.all', self.all)
addEvent('quality.reset_cache', self.resetCache)
addEvent('quality.single', self.single)
addEvent('quality.fill', self.fill)
addEvent('quality.isfinish', self.isFinish)
addEvent('quality.ishigher', self.isHigher)
@ -48,6 +50,11 @@ class QualityBase(Plugin):
return self.pre_releases
def get(self, identifier):
for q in self.qualities:
if identifier == q.get('identifier'):
return q
def all(self, types = None):
if types and self.type not in types:
return
@ -71,23 +78,6 @@ class QualityBase(Plugin):
def resetCache(self):
self.cached_qualities = None
def single(self, identifier = ''):
db = get_db()
quality_dict = {}
quality = db.get('quality', identifier, with_doc = True)['doc']
if quality:
quality_dict = mergeDicts(self.getQuality(quality['identifier']), quality)
return quality_dict
def getQuality(self, identifier):
for q in self.qualities:
if identifier == q.get('identifier'):
return q
def fill(self):
try:

17
couchpotato/core/media/_base/quality/main.py

@ -2,7 +2,8 @@ import traceback
from couchpotato import fireEvent, get_db, tryInt, CPLog
from couchpotato.api import addApiView
from couchpotato.core.helpers.variable import splitString
from couchpotato.core.event import addEvent
from couchpotato.core.helpers.variable import splitString, mergeDicts
from couchpotato.core.media._base.quality.index import QualityIndex
from couchpotato.core.plugins.base import Plugin
@ -15,6 +16,8 @@ class Quality(Plugin):
}
def __init__(self):
addEvent('quality.single', self.single)
addApiView('quality.list', self.allView, docs = {
'desc': 'List all available qualities',
'params': {
@ -28,6 +31,18 @@ class Quality(Plugin):
addApiView('quality.size.save', self.saveSize)
def single(self, identifier = ''):
db = get_db()
quality = db.get('quality', identifier, with_doc = True)['doc']
if quality:
return mergeDicts(
fireEvent('quality.get', quality['identifier'], single = True),
quality
)
return {}
def allView(self, **kwargs):
return {

Loading…
Cancel
Save