Userscript
This commit is contained in:
@@ -1,6 +1,4 @@
|
||||
from couchpotato.api import addApiView
|
||||
from couchpotato.core.event import addEvent, fireEvent
|
||||
from couchpotato.core.helpers.request import getParam
|
||||
from couchpotato.core.logger import CPLog
|
||||
from couchpotato.core.plugins.base import Plugin
|
||||
from urlparse import urlparse
|
||||
@@ -20,30 +18,26 @@ class UserscriptBase(Plugin):
|
||||
addEvent('userscript.get_excludes', self.getExclude)
|
||||
addEvent('userscript.get_version', self.getVersion)
|
||||
|
||||
addApiView('userscript.add_via_url', self.addViaUrl)
|
||||
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
|
||||
|
||||
def addViaUrl(self):
|
||||
def belongsTo(self, url):
|
||||
|
||||
url = getParam('url')
|
||||
host = urlparse(url).hostname
|
||||
if host.startswith('www.'):
|
||||
host = host[4:]
|
||||
|
||||
# Check if the url matches the provider
|
||||
is_provider = False
|
||||
for include in self.includes:
|
||||
if host in include:
|
||||
is_provider = True
|
||||
break
|
||||
if not is_provider:
|
||||
return False
|
||||
return self.getMovie(url)
|
||||
|
||||
return
|
||||
|
||||
fireEvent()
|
||||
def getMovie(self, url):
|
||||
return None
|
||||
|
||||
def getInclude(self):
|
||||
return self.includes
|
||||
|
||||
@@ -18,53 +18,9 @@ class IMDB(UserscriptBase):
|
||||
# Don't add TV show
|
||||
for head in headers:
|
||||
if 'seasons' in head.lower():
|
||||
return False
|
||||
return 'IMDB url is a TV Show'
|
||||
|
||||
identifier = re.search('(?P<id>tt[0-9{7}]+)', url).group('id')
|
||||
movie = fireEvent('movie.info', identifier = identifier)
|
||||
movie = fireEvent('movie.info', identifier = identifier, merge = True)
|
||||
|
||||
return {
|
||||
'id': re.search('(?P<id>tt[0-9{7}]+)', url).group('id'),
|
||||
'year': self.getYear(html)
|
||||
}
|
||||
|
||||
|
||||
#CouchPotato['imdb.com'] = (function(){
|
||||
#
|
||||
# function isMovie(){
|
||||
# var series = document.getElementsByTagName('h5')
|
||||
# for (var i = 0; i < series.length; i++) {
|
||||
# if (series[i].innerHTML == 'Seasons:') {
|
||||
# return false;
|
||||
# }
|
||||
# }
|
||||
# return true;
|
||||
# }
|
||||
#
|
||||
# function getId(){
|
||||
# return 'tt' + location.href.replace(/[^\d+]+/g, '');
|
||||
# }
|
||||
#
|
||||
# function getYear(){
|
||||
# try {
|
||||
# return document.getElementsByTagName('h1')[0].getElementsByTagName('a')[0].text;
|
||||
# } catch (e) {
|
||||
# var spans = document.getElementsByTagName('h1')[0].getElementsByTagName('span');
|
||||
# var pattern = /^\((TV|Video) ([0-9]+)\)$/;
|
||||
# for (var i = 0; i < spans.length; i++) {
|
||||
# if (spans[i].innerHTML.search(pattern)) {
|
||||
# return spans[i].innerHTML.match(pattern)[1];
|
||||
# }
|
||||
# }
|
||||
# }
|
||||
# }
|
||||
#
|
||||
# var constructor = function(){
|
||||
# if(isMovie()){
|
||||
# lib.osd(getId(), getYear());
|
||||
# }
|
||||
# }
|
||||
#
|
||||
# return constructor;
|
||||
#
|
||||
#})();
|
||||
return movie
|
||||
|
||||
Reference in New Issue
Block a user