The branch, frodo has been updated
via 96e5a13b6ccff28ef3fa433062fff6ba96b8f1bb (commit)
via 6a1b1d7da40442c82d19c4cd5025f84f2d6c9e9d (commit)
via f4d35e3b69c4b727d6307381edda830664ddf407 (commit)
from 462911eb04607ea3edce964dbdccb08430b385d9 (commit)
- Log -----------------------------------------------------------------
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=96e5a13b6ccff28ef3fa433062fff6ba96b8f1bb
commit 96e5a13b6ccff28ef3fa433062fff6ba96b8f1bb
Author: beenje <[email protected]>
Date: Sat Mar 16 23:04:36 2013 +0100
[plugin.video.pinkbike] updated to version 0.2.1
diff --git a/plugin.video.pinkbike/addon.xml b/plugin.video.pinkbike/addon.xml
index e595a5f..f6a9650 100644
--- a/plugin.video.pinkbike/addon.xml
+++ b/plugin.video.pinkbike/addon.xml
@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="plugin.video.pinkbike"
name="Pinkbike.com"
- version="0.2.0"
+ version="0.2.1"
provider-name="Popeye">
<requires>
- <import addon="xbmc.python" version="2.0"/>
+ <import addon="xbmc.python" version="2.1.0"/>
<import addon="script.module.beautifulsoup" version="3.2.0"/>
</requires>
<extension point="xbmc.python.pluginsource" library="default.py">
@@ -12,7 +12,8 @@
</extension>
<extension point="xbmc.addon.metadata">
<platform>all</platform>
- <summary>Watch videos from Pinkbike.com</summary>
- <description>Browse and play videos from mountain bike community
pinkbike.com</description>
+ <language></language>
+ <summary lang="en">Watch videos from Pinkbike.com</summary>
+ <description lang="en">Browse and play videos from mountain bike community
pinkbike.com</description>
</extension>
</addon>
\ No newline at end of file
diff --git a/plugin.video.pinkbike/default.py b/plugin.video.pinkbike/default.py
index 6969c5b..9dd6b39 100644
--- a/plugin.video.pinkbike/default.py
+++ b/plugin.video.pinkbike/default.py
@@ -40,7 +40,7 @@ def listPage(url):
id = re.findall(re_pinkbike, link)[0]
id = int(id)
partId = int(math.fabs(id/10000))
- url = 'http://lv1.pinkbike.org/vf/' + str(partId) + '/pbvid-' +
str(id) + '.flv'
+ url = 'http://lv1.pinkbike.org/vf/' + str(partId) + '/pbvid-' +
str(id) + '.mp4'
thumb = inItem.find('img', 'thimg')['src']
time = inItem.find('span', 'fblack').contents[0]
plot = inItem.find('p', 'uFullInfo f10 fgrey3').contents[0].strip()
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=6a1b1d7da40442c82d19c4cd5025f84f2d6c9e9d
commit 6a1b1d7da40442c82d19c4cd5025f84f2d6c9e9d
Author: beenje <[email protected]>
Date: Sat Mar 16 23:04:34 2013 +0100
[plugin.video.dump] updated to version 2.0.0
diff --git a/plugin.video.dump/addon.py b/plugin.video.dump/addon.py
index 3ae00a7..dd14559 100644
--- a/plugin.video.dump/addon.py
+++ b/plugin.video.dump/addon.py
@@ -1,134 +1,130 @@
-import os
-from xbmcswift import Plugin, xbmcplugin, xbmcgui
-import resources.lib.scraper as scraper
-
-
-class Plugin_adv(Plugin):
-
- def add_items(self, iterable, sort_method_ids=[]):
- items = []
- urls = []
- for i, li_info in enumerate(iterable):
- items.append(self._make_listitem(**li_info))
- if self._mode in ['crawl', 'interactive', 'test']:
- print '[%d] %s%s%s (%s)' % (i + 1, '', li_info.get('label'),
- '', li_info.get('url'))
- urls.append(li_info.get('url'))
- if self._mode is 'xbmc':
- xbmcplugin.addDirectoryItems(self.handle, items, len(items))
- for id in sort_method_ids:
- xbmcplugin.addSortMethod(self.handle, id)
- xbmcplugin.endOfDirectory(self.handle, cacheToDisc=False)
- return urls
-
- def set_resolved_url(self, url, title=None):
- if self._mode in ['crawl', 'interactive', 'test']:
- print 'ListItem resolved to %s' % url
- li = xbmcgui.ListItem(path=url)
- if title:
- li.setLabel(title)
- xbmcplugin.setResolvedUrl(self.handle, True, li)
- if self._mode in ['interactive', 'crawl', 'test']:
- return []
-
-
-plugin = Plugin_adv('Dump.com', 'plugin.video.dump', __file__)
-
-
[email protected]('/', default=True)
+#!/usr/bin/python
+# -*- coding: utf-8 -*-
+#
+# Copyright (C) 2013 Tristan Fischer
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+
+from xbmcswift2 import Plugin
+from resources.lib import scraper
+
+plugin = Plugin()
+
+STRINGS = {
+ 'current': 30000,
+ 'archive': 30002,
+ 'search': 30003,
+ 'network_error': 30020
+}
+
+
[email protected]('/')
def show_root():
- log('show_root started')
- categories = [{'label': plugin.get_string(30000),
- 'url': plugin.url_for('show_current')},
- {'label': plugin.get_string(30001),
- 'url': plugin.url_for('watch_random'),
- 'is_folder': False,
- 'is_playable': True},
- {'label': plugin.get_string(30002),
- 'url': plugin.url_for('show_archive')},
- {'label': plugin.get_string(30003),
- 'url': plugin.url_for('search')}]
- return plugin.add_items(categories)
+ items = [
+ {'label': _('current'),
+ 'path': plugin.url_for('show_current')},
+ {'label': _('archive'),
+ 'path': plugin.url_for('show_archive')},
+ {'label': _('search'),
+ 'path': plugin.url_for('search')}
+ ]
+ return plugin.finish(items)
@plugin.route('/current/')
def show_current():
- log('show_current started')
videos = scraper.get_current_videos()
return __add_videos(videos)
[email protected]('/watch/<video_id>/')
[email protected]('/watch/<video_id>')
def watch_video(video_id):
- log('watch_video started with video_id=%s' % video_id)
- mobile = __mobile()
- video_url, title = scraper.get_video_url(video_id, mobile=mobile)
- log('watch_video finished with video_url=%s' % video_url)
+ video_url = scraper.get_video_url(video_id)
return plugin.set_resolved_url(video_url)
[email protected]('/random/')
-def watch_random():
- log('watch_random started')
- mobile = __mobile()
- video_url, title = scraper.get_random_video_url(mobile=mobile)
- log('watch_random finished with video_url=%s' % video_url)
- return plugin.set_resolved_url(video_url, title=title)
-
-
@plugin.route('/archive/')
def show_archive():
- log('show_archive started')
archive_dates = scraper.get_archive_dates()
- items = [{'label': archive_date['title'],
- 'url': plugin.url_for('show_archived_videos',
- archive_id=archive_date['archive_id']),
- } for archive_date in archive_dates]
- return plugin.add_items(items)
+ items = [{
+ 'label': archive_date['title'],
+ 'path': plugin.url_for(
+ 'show_archived_videos',
+ archive_id=archive_date['archive_id'],
+ ),
+ } for archive_date in archive_dates]
+ items.reverse()
+ return plugin.finish(items)
@plugin.route('/archive/<archive_id>/')
def show_archived_videos(archive_id):
- log('show_archived_videos started with archive_id: %s' % archive_id)
- videos = scraper.get_videos_by_archive_date(archive_id)
+ videos = scraper.get_archived_videos(
+ archive_id=archive_id
+ )
return __add_videos(videos)
@plugin.route('/search/')
def search():
- log('search start')
- search_string = None
- keyboard = xbmc.Keyboard('', plugin.get_string(30003))
- keyboard.doModal()
- if keyboard.isConfirmed() and keyboard.getText():
- search_string = keyboard.getText()
- log('search gots a string: "%s"' % search_string)
- videos = scraper.get_search_result(search_string)
- return __add_videos(videos)
+ search_string = plugin.keyboard(heading=_('search'))
+ if search_string:
+ url = plugin.url_for(
+ 'search_result',
+ search_string=search_string
+ )
+ plugin.redirect(url)
+
+
[email protected]('/search/<search_string>/')
+def search_result(search_string):
+ videos = scraper.get_search_result(search_string)
+ return __add_videos(videos)
def __add_videos(videos):
- p = plugin._plugin.getAddonInfo('path').decode('utf-8')
- icon = os.path.join(xbmc.translatePath(p), 'icon.png')
- items = [{'label': video['title'],
- 'thumbnail': icon,
- 'url': plugin.url_for('watch_video',
- video_id=video['video_id']),
- 'info': {'date': video['date']},
- 'is_folder': False,
- 'is_playable': True,
- } for video in videos]
- sort_methods = [xbmcplugin.SORT_METHOD_DATE,
- xbmcplugin.SORT_METHOD_LABEL]
- return plugin.add_items(items, sort_method_ids=sort_methods)
-
-
-def __mobile():
- return plugin.get_setting('pref_video') == '1'
-
+ items = [{
+ 'label': video['title'],
+ 'thumbnail': video['thumb'],
+ 'path': plugin.url_for(
+ 'watch_video',
+ video_id=video['video_id']
+ ),
+ 'info': {
+ 'date': video['date']
+ },
+ 'is_playable': True,
+ } for video in videos]
+ finish_kwargs = {
+ 'sort_methods': ('DATE', )
+ }
+ if plugin.get_setting('force_viewmode', bool):
+ finish_kwargs['view_mode'] = 'thumbnail'
+ return plugin.finish(items, **finish_kwargs)
+
+
+def _(string_id):
+ if string_id in STRINGS:
+ return plugin.get_string(STRINGS[string_id])
+ else:
+ plugin.log.warning('String is missing: %s' % string_id)
+ return string_id
-def log(msg):
- xbmc.log('%s addon: %s' % ('Dump.com', msg))
if __name__ == '__main__':
- plugin.run()
+ try:
+ plugin.run()
+ except scraper.NetworkError:
+ plugin.notify(msg=_('network_error'))
diff --git a/plugin.video.dump/addon.xml b/plugin.video.dump/addon.xml
index e4e7f49..5b39849 100644
--- a/plugin.video.dump/addon.xml
+++ b/plugin.video.dump/addon.xml
@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<addon id="plugin.video.dump" name="Dump.com" version="1.0.0"
provider-name="sphere, Insayne">
- <requires>
- <import addon="xbmc.python" version="2.0"/>
- <import addon="script.module.beautifulsoup" version="3.0.8"/>
- <import addon="script.module.xbmcswift" version="0.2.0"/>
- </requires>
- <extension point="xbmc.python.pluginsource" library="addon.py">
+<addon id="plugin.video.dump" name="Dump.com" version="2.0.0"
provider-name="Tristan Fischer ([email protected])">
+ <requires>
+ <import addon="xbmc.python" version="2.1.0"/>
+ <import addon="script.module.beautifulsoup" version="3.0.8"/>
+ <import addon="script.module.xbmcswift2" version="2.4.0"/>
+ </requires>
+ <extension point="xbmc.python.pluginsource" library="addon.py">
<provides>video</provides>
- </extension>
- <extension point="xbmc.addon.metadata">
- <platform>all</platform>
- <summary lang="en">Stream Dump.com</summary>
- <description lang="de">Videos von Dump.com</description>
- <description lang="en">The Content of Dump.com on your Media
Center</description>
- </extension>
+ </extension>
+ <extension point="xbmc.addon.metadata">
+ <language />
+ <platform>all</platform>
+ <summary lang="en">Family Friendly Videos</summary>
+ <description lang="en">Website containing interesting, educational and
funny videos that are suitable for all ages. Updated daily.</description>
+ </extension>
</addon>
diff --git a/plugin.video.dump/changelog.txt b/plugin.video.dump/changelog.txt
index 59c99a2..e1637f7 100644
--- a/plugin.video.dump/changelog.txt
+++ b/plugin.video.dump/changelog.txt
@@ -1,2 +1,10 @@
+2.0.0
+ - thumbnails :-)
+ - 95% code rewrite
+ - changed to xbmcswift2
+ - cosmetics
+ - better video quality
+ - does anybody read changelogs?
+
1.0.0
-- fork from the wimp.com (which is original from Insayne)
\ No newline at end of file
+ - fork from the wimp.com (which is original from Insayne)
\ No newline at end of file
diff --git a/plugin.video.dump/resources/language/English/strings.xml
b/plugin.video.dump/resources/language/English/strings.xml
index 7f4989f..2acbd76 100644
--- a/plugin.video.dump/resources/language/English/strings.xml
+++ b/plugin.video.dump/resources/language/English/strings.xml
@@ -1,12 +1,17 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<!-- Translated using Transifex web application. For support, or if you would
like to to help out, please visit your language team! -->
+<!-- English language-Team URL:
http://www.transifex.com/projects/p/xbmc-addons/language/en/ -->
+<!-- Report language file syntax bugs at: [email protected] -->
+
<strings>
<!-- Root Menu -->
<string id="30000">Current Videos</string>
- <string id="30001">Random Video</string>
<string id="30002">Archive</string>
<string id="30003">Search</string>
+
<!-- Settings -->
- <string id="30010">Preferred Video</string>
- <string id="30011">Flash</string>
- <string id="30012">Mobile</string>
+ <string id="30010">Force ViewMode to Thumbnail</string>
+
+ <!-- Messages -->
+ <string id="30020">Network Error</string>
</strings>
diff --git a/plugin.video.dump/resources/language/German/strings.xml
b/plugin.video.dump/resources/language/German/strings.xml
index 640f7db..00f368e 100644
--- a/plugin.video.dump/resources/language/German/strings.xml
+++ b/plugin.video.dump/resources/language/German/strings.xml
@@ -1,12 +1,17 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
+<!-- Translated using Transifex web application. For support, or if you would
like to to help out, please visit your language team! -->
+<!-- German language-Team URL:
http://www.transifex.com/projects/p/xbmc-addons/language/de/ -->
+<!-- Report language file syntax bugs at: [email protected] -->
+
<strings>
<!-- Root Menu -->
<string id="30000">Aktuelle Videos</string>
- <string id="30001">Zufälliges Video</string>
<string id="30002">Archiv</string>
<string id="30003">Suche</string>
+
<!-- Settings -->
- <string id="30010">Bevorzugtes Video</string>
- <string id="30011">Flash</string>
- <string id="30012">Mobil</string>
+ <string id="30010">ViewMode "Thumbnail" erzwingen</string>
+
+ <!-- Messages -->
+ <string id="30020">Netzwerkfehler</string>
</strings>
diff --git a/plugin.video.dump/resources/lib/scraper.py
b/plugin.video.dump/resources/lib/scraper.py
index 6faadc2..c331f68 100644
--- a/plugin.video.dump/resources/lib/scraper.py
+++ b/plugin.video.dump/resources/lib/scraper.py
@@ -1,28 +1,53 @@
-import urllib2
+#!/usr/bin/python
+# -*- coding: utf-8 -*-
+#
+# Copyright (C) 2013 Tristan Fischer
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+
+from urllib import quote
+from urllib2 import urlopen, Request, HTTPError, URLError
import re
from datetime import datetime
from base64 import b64decode
from BeautifulSoup import BeautifulSoup
-MAIN_URL = 'http://m.dump.com/'
+MAIN_URL = 'http://dump.com/'
-MONTHS = {'Jan': 1,
- 'Feb': 2,
- 'Mar': 3,
- 'Apr': 4,
- 'May': 5,
- 'Jun': 6,
- 'Jul': 7,
- 'Aug': 8,
- 'Sep': 9,
- 'Oct': 10,
- 'Nov': 11,
- 'Dec': 12}
+MONTHS = {
+ 'Jan': 1,
+ 'Feb': 2,
+ 'Mar': 3,
+ 'Apr': 4,
+ 'May': 5,
+ 'Jun': 6,
+ 'Jul': 7,
+ 'Aug': 8,
+ 'Sep': 9,
+ 'Oct': 10,
+ 'Nov': 11,
+ 'Dec': 12
+}
+
+
+class NetworkError(Exception):
+ pass
def get_current_videos():
- tree = __get_tree(MAIN_URL)
- return __get_videos(tree)
+ return __get_videos(MAIN_URL)
def get_archive_dates():
@@ -32,103 +57,60 @@ def get_archive_dates():
for entry in tree.findAll('a', {'class': 'b'}):
title = entry.string.strip()
archive_id = entry['href'].replace('/archives/', '').strip()
- archive_dates.append({'title': title,
- 'archive_id': archive_id})
- return archive_dates
+ archive_dates.append({
+ 'title': title,
+ 'archive_id': archive_id
+ })
+ return reversed(archive_dates)
-def get_videos_by_archive_date(date):
- url = MAIN_URL + 'archives/%s' % date
- tree = __get_tree(url)
- return __get_videos(tree)
+def get_archived_videos(archive_id):
+ return __get_videos(MAIN_URL + 'archives/%s' % archive_id)
def get_search_result(query):
- url = MAIN_URL + 'search?query=%s' % query
+ return __get_videos(MAIN_URL + 'search/%s' % quote(query))
+
+
+def get_video_url(video_id):
+ tree = __get_tree(MAIN_URL + video_id)
+ r_js = re.compile('lxUTILsign')
+ r_gc = re.compile('var googleCode = \'(.+?)\';') # funny idea :-)
+ r_vurl = re.compile('"file","(.+?)"')
+ js_code = tree.find('script', text=r_js).string.strip()
+ js_params = b64decode(re.search(r_gc, js_code).group(1))
+ video_url = re.search(r_vurl, js_params).group(1)
+ return video_url
+
+
+def __get_videos(url):
tree = __get_tree(url)
- return __get_videos(tree)
-
-
-def get_random_video_url(mobile=False):
- return get_video_url('random', mobile)
-
-
-def get_video_url(video_id, mobile=False):
- log('get_video_url started with video_id=%s mobile: %s' % (video_id,
- mobile))
- url = MAIN_URL + video_id
-
- def _mobile(url):
- log('get_video_url mobile mode')
- tree = __get_tree(url, mobile=True)
- title = tree.head.title.string.replace('[VIDEO]', '').strip()
- video_url = tree.find('a', {'id': 'video'})['href']
- return video_url, title
-
- def _flv(url):
- log('get_video_url flv mode')
- tree = __get_tree(url, mobile=False)
- title = tree.head.title.string.replace('[VIDEO]', '').strip()
- r_js = re.compile('lxUTILsign')
- r_gc = re.compile('var googleCode = \'(.+?)\';') # funny idea :-)
- r_vurl = re.compile('"file","(.+?)"')
- try:
- js_code = tree.find('script', text=r_js).string.strip()
- js_params = b64decode(re.search(r_gc, js_code).group(1))
- video_url = re.search(r_vurl, js_params).group(1)
- except AttributeError:
- log('get_video_url flv mode FAILED')
- video_url = None
- return video_url, title
-
- if not mobile:
- video_url, title = _flv(url) or _mobile(url)
- else:
- video_url, title = _mobile(url)
- return video_url, title
-
-
-def __get_videos(tree):
videos = []
page_title = tree.head.title.string
- year = None
+ y = None
if page_title:
- year = filter(lambda s: s.isdigit(), page_title)
- if not year:
- year = datetime.now().year
- for video in tree.findAll('div', {'class': 'video-item'}):
- title = video.find('a').string.strip()
- video_id = video.find('a')['href'].replace(MAIN_URL, '').strip('/')
- try:
- date_str = video.find('span', {'class': 'video_date'}).b.string
- except AttributeError:
- date_str = video.find('span', {'class': 'video_date'}).string
- month_str, day_str = date_str.split()
- month = MONTHS.get(month_str)
- date = '%02i.%02i.%s' % (int(day_str), month, year)
- videos.append({'title': title,
- 'video_id': video_id,
- 'date': date})
+ y = filter(lambda s: s.isdigit(), page_title)
+ if not y:
+ y = datetime.now().year
+ for a in tree.findAll('a', {'class': 'b'}):
+ m, d = a.find('span', {'class': 'video_date'}).string.split()
+ thumb = a.find('img').get('data-original') or a.find('img')['src']
+ videos.append({
+ 'title': a.find('span', {'class': 'video_title'}).string,
+ 'video_id': a['href'].split('/')[-2],
+ 'thumb': thumb,
+ 'date': '%02i.%02i.%s' % (int(d), MONTHS[m], y)
+ })
return videos
-def __get_tree(url, mobile=True):
- if mobile:
- if '?' in url:
- url = url + '&nord'
- else:
- url = url + '?nord'
- log('__get_tree opening url: %s' % url)
- req = urllib2.Request(url)
- req.add_header('Accept', ('text/html,application/xhtml+xml,'
- 'application/xml;q=0.9,*/*;q=0.8'))
- req.add_header('User-Agent', ('Mozilla/5.0 (X11; Linux i686) '
- 'AppleWebKit/535.21 (KHTML, like Gecko) '
- 'Chrome/19.0.1041.0 Safari/535.21'))
- html = urllib2.urlopen(req).read()
- tree = BeautifulSoup(html, convertEntities=BeautifulSoup.HTML_ENTITIES)
+def __get_tree(url):
+ req = Request(url)
+ try:
+ response = urlopen(req).read()
+ except HTTPError, error:
+ raise NetworkError(error)
+ except URLError, error:
+ raise NetworkError(error)
+ tree = BeautifulSoup(response, convertEntities=BeautifulSoup.HTML_ENTITIES)
return tree
-
-
-def log(msg):
- print('%s scraper: %s' % ('dump.com', msg))
diff --git a/plugin.video.dump/resources/settings.xml
b/plugin.video.dump/resources/settings.xml
index fbb4252..da3e2a2 100644
--- a/plugin.video.dump/resources/settings.xml
+++ b/plugin.video.dump/resources/settings.xml
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<settings>
- <setting id="pref_video" type="enum" lvalues="30011|30012"
label="30010" default="0" />
+ <setting id="force_viewmode" type="bool" label="30010" default="true"/>
</settings>
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=f4d35e3b69c4b727d6307381edda830664ddf407
commit f4d35e3b69c4b727d6307381edda830664ddf407
Author: beenje <[email protected]>
Date: Sat Mar 16 14:07:40 2013 +0100
Update .gitignore
Add files set to export-ignore in the plugin.video.thegeekgroup
.gitattributes
diff --git a/.gitignore b/.gitignore
index 43304fe..777df4f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -109,3 +109,5 @@ plugin.video.railscast/.gitignore
plugin.video.railscast/.git
plugin.video.tv3play.dk/.git
plugin.video.tv3play.dk/.idea
+plugin.video.thegeekgroup/DEVS-READ-This-first.txt
+plugin.video.thegeekgroup/Michael-notes-open-to-anyone-for-input.txt
-----------------------------------------------------------------------
Summary of changes:
.gitignore | 2 +
plugin.video.dump/addon.py | 202 ++++++++++----------
plugin.video.dump/addon.xml | 28 ++--
plugin.video.dump/changelog.txt | 10 +-
.../resources/language/Afrikaans/strings.xml | 0
.../resources/language/Albanian/strings.xml | 0
.../resources/language/Amharic/strings.xml | 0
.../resources/language/Arabic/strings.xml | 0
.../resources/language/Basque/strings.xml | 0
.../resources/language/Belarusian/strings.xml | 0
.../resources/language/Bulgarian/strings.xml | 0
.../resources/language/Catalan/strings.xml | 0
.../language/Chinese (Simple)/strings.xml | 0
.../language/Chinese (Traditional)/strings.xml | 0
.../resources/language/Croatian/strings.xml | 0
.../resources/language/Czech/strings.xml | 0
.../resources/language/Danish/strings.xml | 0
.../resources/language/Dutch/strings.xml | 0
.../resources/language/English/strings.xml | 13 +-
.../resources/language/Esperanto/strings.xml | 0
.../resources/language/Estonian/strings.xml | 0
.../resources/language/Finnish/strings.xml | 0
.../resources/language/French/strings.xml | 0
.../resources/language/Galician/strings.xml | 0
.../resources/language/German/strings.xml | 13 +-
.../resources/language/Greek/strings.xml | 0
.../language/Haitian (Haitian Creole)/strings.xml | 0
.../resources/language/Hebrew/strings.xml | 0
.../language/Hindi (Devanagiri)/strings.xml | 0
.../resources/language/Hungarian/strings.xml | 0
.../resources/language/Icelandic/strings.xml | 0
.../resources/language/Indonesian/strings.xml | 0
.../resources/language/Italian/strings.xml | 0
.../resources/language/Japanese/strings.xml | 0
.../resources/language/Korean/strings.xml | 0
.../resources/language/Lithuanian/strings.xml | 0
.../resources/language/Macedonian/strings.xml | 0
.../resources/language/Malay/strings.xml | 0
.../resources/language/Malayalam/strings.xml | 0
.../resources/language/Norwegian/strings.xml | 0
.../resources/language/Persian (Iran)/strings.xml | 0
.../resources/language/Persian/strings.xml | 0
.../resources/language/Polish/strings.xml | 0
.../language/Portuguese (Brazil)/strings.xml | 0
.../resources/language/Portuguese/strings.xml | 0
.../resources/language/Romanian/strings.xml | 0
.../resources/language/Russian/strings.xml | 0
.../language/Serbian (Cyrillic)/strings.xml | 0
.../resources/language/Serbian/strings.xml | 0
.../resources/language/Slovak/strings.xml | 0
.../resources/language/Slovenian/strings.xml | 0
.../language/Spanish (Argentina)/strings.xml | 0
.../language/Spanish (Mexico)/strings.xml | 0
.../resources/language/Spanish/strings.xml | 0
.../resources/language/Swedish/strings.xml | 0
.../resources/language/Thai/strings.xml | 0
.../resources/language/Turkish/strings.xml | 0
.../resources/language/Ukrainian/strings.xml | 0
.../resources/language/Vietnamese/strings.xml | 0
plugin.video.dump/resources/lib/scraper.py | 188 ++++++++----------
plugin.video.dump/resources/settings.xml | 2 +-
plugin.video.pinkbike/addon.xml | 9 +-
plugin.video.pinkbike/default.py | 2 +-
63 files changed, 234 insertions(+), 235 deletions(-)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Afrikaans/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Albanian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Amharic/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Arabic/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Basque/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Belarusian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Bulgarian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Catalan/strings.xml (100%)
copy {plugin.video.wimp => plugin.video.dump}/resources/language/Chinese
(Simple)/strings.xml (100%)
copy {plugin.video.wimp => plugin.video.dump}/resources/language/Chinese
(Traditional)/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Croatian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Czech/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Danish/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Dutch/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Esperanto/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Estonian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Finnish/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/French/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Galician/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Greek/strings.xml (100%)
copy {plugin.video.wimp => plugin.video.dump}/resources/language/Haitian
(Haitian Creole)/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Hebrew/strings.xml (100%)
copy {plugin.video.wimp => plugin.video.dump}/resources/language/Hindi
(Devanagiri)/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Hungarian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Icelandic/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Indonesian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Italian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Japanese/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Korean/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Lithuanian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Macedonian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Malay/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Malayalam/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Norwegian/strings.xml (100%)
copy {plugin.video.wimp => plugin.video.dump}/resources/language/Persian
(Iran)/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Persian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Polish/strings.xml (100%)
copy {plugin.video.wimp => plugin.video.dump}/resources/language/Portuguese
(Brazil)/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Portuguese/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Romanian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Russian/strings.xml (100%)
copy {plugin.video.wimp => plugin.video.dump}/resources/language/Serbian
(Cyrillic)/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Serbian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Slovak/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Slovenian/strings.xml (100%)
copy {plugin.video.wimp => plugin.video.dump}/resources/language/Spanish
(Argentina)/strings.xml (100%)
copy {plugin.video.wimp => plugin.video.dump}/resources/language/Spanish
(Mexico)/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Spanish/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Swedish/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Thai/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Turkish/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Ukrainian/strings.xml (100%)
copy {plugin.video.wimp =>
plugin.video.dump}/resources/language/Vietnamese/strings.xml (100%)
hooks/post-receive
--
Plugins
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_mar
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons