You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

50 lines
1.2 KiB

from couchpotato.core.event import addEvent, fireEvent
from couchpotato.core.logger import CPLog
from couchpotato.core.plugins.base import Plugin
from urlparse import urlparse
log = CPLog(__name__)
class UserscriptBase(Plugin):
version = 1
includes = []
excludes = []
def __init__(self):
addEvent('userscript.get_includes', self.getInclude)
addEvent('userscript.get_excludes', self.getExclude)
addEvent('userscript.get_version', self.getVersion)
14 years ago
addEvent('userscript.get_movie_via_url', self.belongsTo)
def search(self, name, year = None):
movie = fireEvent('movie.search', q = '%s %s' % (name, year), limit = 1)
return movie
14 years ago
def belongsTo(self, url):
host = urlparse(url).hostname
14 years ago
if host.startswith('www.'):
host = host[4:]
for include in self.includes:
if host in include:
14 years ago
return self.getMovie(url)
14 years ago
return
14 years ago
def getMovie(self, url):
return None
def getInclude(self):
return self.includes
def getExclude(self):
return self.excludes
def getVersion(self):
return self.version