The branch, frodo has been updated
via b2fd683d998915caa11b002ebea06afc54e39c1a (commit)
via 3f550a8b10d27e35f98f3f56c49d37c9a3e2ddde (commit)
from 78041adbbbb84cafb70ad9e32f9efcab9f5b2573 (commit)
- Log -----------------------------------------------------------------
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=b2fd683d998915caa11b002ebea06afc54e39c1a
commit b2fd683d998915caa11b002ebea06afc54e39c1a
Author: sphere <[email protected]>
Date: Mon May 12 09:21:33 2014 +0200
[plugin.video.gamekings] updated to version 1.0.4
diff --git a/plugin.video.gamekings/addon.xml b/plugin.video.gamekings/addon.xml
index 9535362..5d50eb2 100644
--- a/plugin.video.gamekings/addon.xml
+++ b/plugin.video.gamekings/addon.xml
@@ -2,7 +2,7 @@
<addon
id="plugin.video.gamekings"
name="GameKings"
- version="1.0.3"
+ version="1.0.4"
provider-name="Skipmode A1">
<requires>
<import addon="xbmc.python" version="2.1.0"/>
diff --git a/plugin.video.gamekings/changelog.txt
b/plugin.video.gamekings/changelog.txt
index c06587b..cbb8837 100644
--- a/plugin.video.gamekings/changelog.txt
+++ b/plugin.video.gamekings/changelog.txt
@@ -16,4 +16,7 @@ v1.0.2 (Wednesday, 29 may 2013) :
v1.0.3 (Saturday, 7 July 2013) :
- added beautiful soup as dependency
-- added dutch strings
\ No newline at end of file
+- added dutch strings
+
+v1.0.4 (Sunday, 11 May 2014) :
+- support vimeo files
\ No newline at end of file
diff --git a/plugin.video.gamekings/resources/lib/gamekings_const.py
b/plugin.video.gamekings/resources/lib/gamekings_const.py
index 4bc99a2..067273f 100644
--- a/plugin.video.gamekings/resources/lib/gamekings_const.py
+++ b/plugin.video.gamekings/resources/lib/gamekings_const.py
@@ -8,5 +8,5 @@ __addon__ = "plugin.video.gamekings"
__settings__ = xbmcaddon.Addon(id=__addon__ )
__language__ = __settings__.getLocalizedString
__images_path__ = os.path.join( xbmcaddon.Addon(id=__addon__
).getAddonInfo('path'), 'resources', 'images' )
-__date__ = "7 july 2013"
-__version__ = "1.0.3"
\ No newline at end of file
+__date__ = "11 May 2014"
+__version__ = "1.0.4"
\ No newline at end of file
diff --git a/plugin.video.gamekings/resources/lib/gamekings_play.py
b/plugin.video.gamekings/resources/lib/gamekings_play.py
index 7cb29fc..4d13068 100644
--- a/plugin.video.gamekings/resources/lib/gamekings_play.py
+++ b/plugin.video.gamekings/resources/lib/gamekings_play.py
@@ -84,7 +84,8 @@ class Main:
# Get the video url
#<meta property="og:video"
content="http://stream.gamekings.tv/20130306_SpecialForces.mp4"/>
#sometimes the content is not (!!) correct and the real link
will be "http://stream.gamekings.tv/large/20130529_E3Journaal.mp4" :(
-
+ #May 2014: video are vimeo files now
+ #f.e. video_url =
"http://player.vimeo.com/external/94656619.hd.mp4?s=3c3766957145e206740087997ede755a"
video_urls = soup.findAll('meta', attrs={'content':
re.compile("^http://stream.gamekings.tv/")}, limit=1)
if (self.DEBUG) == 'true':
@@ -96,14 +97,23 @@ class Main:
video_url = str(video_urls[0]['content'])
if (self.DEBUG) == 'true':
xbmc.log( "[ADDON] %s v%s (%s) debug mode, %s =
%s" % ( __addon__, __version__, __date__, "video_url", str(video_url) ),
xbmc.LOGNOTICE )
- if httpCommunicator.exists( video_url ):
+
+ # Check if it's a vimeo file
+ if video_url.count("vimeo") > 0:
+ video_url =
video_url.replace("http://stream.gamekings.tv/", "")
have_valid_url = True
else:
- video_url =
video_url.replace("http://stream.gamekings.tv/",
"http://stream.gamekings.tv/large/")
if httpCommunicator.exists( video_url ):
have_valid_url = True
else:
- unplayable_media_file = True
+ video_url =
video_url.replace("http://stream.gamekings.tv/",
"http://stream.gamekings.tv/large/")
+ if httpCommunicator.exists( video_url ):
+ have_valid_url = True
+ else:
+ unplayable_media_file = True
+
+ if (self.DEBUG) == 'true':
+ xbmc.log( "[ADDON] %s v%s (%s) debug mode, %s = %s" % (
__addon__, __version__, __date__, "video_url to be played", str(video_url) ),
xbmc.LOGNOTICE )
# Play video
if have_valid_url:
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=3f550a8b10d27e35f98f3f56c49d37c9a3e2ddde
commit 3f550a8b10d27e35f98f3f56c49d37c9a3e2ddde
Author: sphere <[email protected]>
Date: Mon May 12 09:12:49 2014 +0200
[plugin.video.roosterteeth] updated to version 0.0.9
diff --git a/plugin.video.roosterteeth/addon.xml
b/plugin.video.roosterteeth/addon.xml
index cc08690..a49a7b9 100644
--- a/plugin.video.roosterteeth/addon.xml
+++ b/plugin.video.roosterteeth/addon.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="plugin.video.roosterteeth"
name="Rooster Teeth"
- version="0.0.8"
+ version="0.0.9"
provider-name="Divingmule, Skipmode A1">
<requires>
<import addon="xbmc.python" version="2.1.0"/>
diff --git a/plugin.video.roosterteeth/changelog.txt
b/plugin.video.roosterteeth/changelog.txt
index 4ad61e6..c2c5f99 100644
--- a/plugin.video.roosterteeth/changelog.txt
+++ b/plugin.video.roosterteeth/changelog.txt
@@ -1,3 +1,8 @@
+Version 0.0.9
+Mixed the current rt and ah shows
+Mixed the retired rt and ah shows
+Add dir for recent ah episodes
+
Version 0.0.8
Fixed so that there is no need to delete the cookie file when watching
sponsored videos.
Thanks to AikenDrum for the patch.
diff --git a/plugin.video.roosterteeth/default.py
b/plugin.video.roosterteeth/default.py
index e293aa5..ff69b55 100644
--- a/plugin.video.roosterteeth/default.py
+++ b/plugin.video.roosterteeth/default.py
@@ -84,32 +84,89 @@ def get_soup(data):
return BeautifulSoup(data, 'html.parser')
-def cache_shows():
+def cache_active_rt_shows():
def filter_items(item_list):
- parsed = []
- for i in item_list:
- try:
- show = (i.b.string, i.a['href'], i.img['src'],
- i('a')[2].b.string.split()[0], i.span.string)
- if not show in parsed:
- parsed.append(show)
- except:
- addon_log('addonException: %s' %format_exc())
- continue
- return parsed
+ parsed = []
+ for i in item_list:
+ try:
+ show = (i.b.string, i.a['href'], i.img['src'],
+ i('a')[2].b.string.split()[0], i.span.string)
+ if not show in parsed:
+ parsed.append(show)
+ except:
+ addon_log('addonException: %s' %format_exc())
+ continue
+ return parsed
rt_url = 'http://roosterteeth.com/archive/series.php'
- ah_url = 'http://ah.roosterteeth.com/archive/series.php'
soup = get_soup(rt_url)
- ah_soup = get_soup(ah_url)
items = soup('table', class_="border boxBorder")[0].table('tr')
- items += ah_soup('table', class_="border boxBorder")[0].table('tr')
+ return filter_items(items)
+
+
+def cache_active_ah_shows():
+
+ def filter_items(item_list):
+ parsed = []
+ for i in item_list:
+ try:
+ show = (i.b.string, i.a['href'], i.img['src'],
+ i('a')[2].b.string.split()[0], i.span.string)
+ if not show in parsed:
+ parsed.append(show)
+ except:
+ addon_log('addonException: %s' %format_exc())
+ continue
+ return parsed
+
+ ah_url = 'http://ah.roosterteeth.com/archive/series.php'
+ ah_soup = get_soup(ah_url)
+ items = ah_soup('table', class_="border boxBorder")[0].table('tr')
+ return filter_items(items)
+
+
+def cache_retired_rt_shows():
+
+ def filter_items(item_list):
+ parsed = []
+ for i in item_list:
+ try:
+ show = (i.b.string, i.a['href'], i.img['src'],
+ i('a')[2].b.string.split()[0], i.span.string)
+ if not show in parsed:
+ parsed.append(show)
+ except:
+ addon_log('addonException: %s' %format_exc())
+ continue
+ return parsed
+
+ rt_url = 'http://roosterteeth.com/archive/series.php'
+ soup = get_soup(rt_url)
retired_items = soup('table', class_="border boxBorder")[1].table('tr')
- retired_items += ah_soup('table', class_="border boxBorder")[1].table('tr')
- return repr({'active': filter_items(items), 'retired':
filter_items(retired_items)})
+ return filter_items(retired_items)
+
+def cache_retired_ah_shows():
+ def filter_items(item_list):
+ parsed = []
+ for i in item_list:
+ try:
+ show = (i.b.string, i.a['href'], i.img['src'],
+ i('a')[2].b.string.split()[0], i.span.string)
+ if not show in parsed:
+ parsed.append(show)
+ except:
+ addon_log('addonException: %s' %format_exc())
+ continue
+ return parsed
+
+ ah_url = 'http://ah.roosterteeth.com/archive/series.php'
+ ah_soup = get_soup(ah_url)
+ retired_items = ah_soup('table', class_="border boxBorder")[1].table('tr')
+ return filter_items(retired_items)
+
def get_shows(shows):
for i in shows:
if 'v=trending' in i[1]:
@@ -478,10 +535,26 @@ addon_log(repr(params))
if mode == None:
# display main plugin dir
- add_dir(language(30008), 'get_latest', 8, icon)
+ add_dir(language(30008), 'get_latest_rt', 8, icon)
+ add_dir(language(30027), 'get_latest_ah', 9, icon)
add_dir(language(30005), 'get_podcasts', 4, icon)
- shows = eval(cache.cacheFunction(cache_shows))
- get_shows(shows['active'])
+
+ act_rt_shows = cache_active_rt_shows()
+ act_ah_shows = cache_active_ah_shows()
+
+# mix the shows
+ act_shows = []
+ while True:
+ try:
+ act_shows.append(act_rt_shows.pop(0))
+ act_shows.append(act_ah_shows.pop(0))
+ except IndexError:
+ break
+
+# add any remaining shows at the end
+ act_shows = act_shows + act_rt_shows + act_ah_shows
+
+ get_shows(act_shows)
add_dir(language(30007), 'get_retired_shows', 7, icon)
xbmcplugin.setContent(int(sys.argv[1]), 'tvshows')
xbmcplugin.endOfDirectory(int(sys.argv[1]))
@@ -529,15 +602,37 @@ elif mode == 6:
elif mode == 7:
# display retired shows
- shows = eval(cache.cacheFunction(cache_shows))
- get_shows(shows['retired'])
+ ret_rt_shows = cache_retired_rt_shows()
+ ret_ah_shows = cache_retired_ah_shows()
+
+# mix the shows
+ ret_shows = []
+ while True:
+ try:
+ ret_shows.append(ret_rt_shows.pop(0))
+ ret_shows.append(ret_ah_shows.pop(0))
+ except IndexError:
+ break
+
+# add any remaining shows at the end
+ ret_shows = ret_shows + ret_rt_shows + ret_ah_shows
+
+ get_shows(ret_shows)
xbmcplugin.setContent(int(sys.argv[1]), 'tvshows')
xbmcplugin.endOfDirectory(int(sys.argv[1]))
elif mode == 8:
- # display latest episodes
- soup = get_soup('http://roosterteeth.com/archive/?sid=rvb&v=newest')
+ # display latest RT episodes
+ soup = get_soup('http://roosterteeth.com/archive/?v=newest')
+ index(soup, False)
+ xbmcplugin.setContent(int(sys.argv[1]), 'episodes')
+ set_view_mode()
+ xbmcplugin.endOfDirectory(int(sys.argv[1]))
+
+elif mode == 9:
+ # display latest AH episodes
+ soup = get_soup('http://ah.roosterteeth.com/archive/?v=newest')
index(soup, False)
xbmcplugin.setContent(int(sys.argv[1]), 'episodes')
set_view_mode()
- xbmcplugin.endOfDirectory(int(sys.argv[1]))
\ No newline at end of file
+ xbmcplugin.endOfDirectory(int(sys.argv[1]))
\ No newline at end of file
diff --git a/plugin.video.roosterteeth/resources/language/English/strings.xml
b/plugin.video.roosterteeth/resources/language/English/strings.xml
index bbe7266..8f9ccc0 100644
--- a/plugin.video.roosterteeth/resources/language/English/strings.xml
+++ b/plugin.video.roosterteeth/resources/language/English/strings.xml
@@ -8,7 +8,7 @@
<string id="30005">Podcasts</string>
<string id="30006">Choose a stream</string>
<string id="30007">Retired Shows</string>
- <string id="30008">Latest Episodes</string>
+ <string id="30008">Latest Rooster Teeth Episodes</string>
<string id="30009">Preferred Video Quality</string>
<string id="30010">High</string>
<string id="30011">Medium</string>
@@ -27,7 +27,7 @@
<string id="30024">Unknown Error</string>
<string id="30025">Login Failed</string>
<string id="30026">Comedy, Gaming</string>
- <string id="30027"></string>
+ <string id="30027">Latest Achievement Hunter Episodes</string>
<string id="30028"></string>
<string id="30029"></string>
</strings>
\ No newline at end of file
-----------------------------------------------------------------------
Summary of changes:
plugin.video.gamekings/addon.xml | 2 +-
plugin.video.gamekings/changelog.txt | 5 +-
.../resources/lib/gamekings_const.py | 4 +-
.../resources/lib/gamekings_play.py | 18 ++-
plugin.video.roosterteeth/addon.xml | 2 +-
plugin.video.roosterteeth/changelog.txt | 5 +
plugin.video.roosterteeth/default.py | 145 ++++++++++++++++----
.../resources/language/English/strings.xml | 4 +-
8 files changed, 149 insertions(+), 36 deletions(-)
hooks/post-receive
--
Plugins
------------------------------------------------------------------------------
"Accelerate Dev Cycles with Automated Cross-Browser Testing - For FREE
Instantly run your Selenium tests across 300+ browser/OS combos.
Get unparalleled scalability from the best Selenium testing platform available
Simple to use. Nothing to install. Get started now for free."
http://p.sf.net/sfu/SauceLabs
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons