The branch, eden has been updated
via 76a48271f3d981e37ee16669f496c441013d749e (commit)
via 57145a3cab8b2abc706c0b8a4be26a0364ba18fe (commit)
via 16b8202925a2adb0832d895baa58f44713957b4c (commit)
from d69a8103b58216fdf0dab9a5ec0630112977da71 (commit)
- Log -----------------------------------------------------------------
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=76a48271f3d981e37ee16669f496c441013d749e
commit 76a48271f3d981e37ee16669f496c441013d749e
Author: beenje <[email protected]>
Date: Fri Dec 21 23:32:52 2012 +0100
[plugin.video.nolife] updated to version 1.15.1
diff --git a/plugin.video.nolife/addon.xml b/plugin.video.nolife/addon.xml
index 07c27ce..03d0213 100644
--- a/plugin.video.nolife/addon.xml
+++ b/plugin.video.nolife/addon.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="plugin.video.nolife"
name="Nolife Online"
- version="1.15.0"
+ version="1.15.1"
provider-name="gormux">
<requires>
<import addon="xbmc.python" version="2.0"/>
diff --git a/plugin.video.nolife/default.py b/plugin.video.nolife/default.py
index 526cee1..b85d548 100644
--- a/plugin.video.nolife/default.py
+++ b/plugin.video.nolife/default.py
@@ -175,14 +175,13 @@ def getlastVideos():
extractVideoInfo(element)
videoInfo = extractVideoInfo(element)
- if ( showseen == "false" and videoInfo.seen == False ):
+ if (showseen == "true" or (showseen == "false" and videoInfo.seen ==
False)):
if isAvailableForUser(videoInfo.availability):
addlink( videoInfo.name + " - " + videoInfo.desc,
"plugin://plugin.video.nolife?id=" + videoInfo.vid,
videoInfo.thumb,
videoInfo.duration,
videoInfo.seen )
-
def getcategories():
"""Gets all categories and adds directories
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=57145a3cab8b2abc706c0b8a4be26a0364ba18fe
commit 57145a3cab8b2abc706c0b8a4be26a0364ba18fe
Author: beenje <[email protected]>
Date: Fri Dec 21 23:32:36 2012 +0100
[plugin.video.wdrrockpalast] updated to version 1.1.0
diff --git a/plugin.video.wdrrockpalast/addon.xml
b/plugin.video.wdrrockpalast/addon.xml
index fbf18e9..7b015ed 100644
--- a/plugin.video.wdrrockpalast/addon.xml
+++ b/plugin.video.wdrrockpalast/addon.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<addon id="plugin.video.wdrrockpalast" name="WDR Rockpalast" version="1.0.7"
provider-name="xycl">
+<addon id="plugin.video.wdrrockpalast" name="WDR Rockpalast" version="1.1.0"
provider-name="xycl">
<requires>
<import addon="xbmc.python" version="2.0"/>
</requires>
diff --git a/plugin.video.wdrrockpalast/changelog.txt
b/plugin.video.wdrrockpalast/changelog.txt
index 0fcabd1..0637f3c 100644
--- a/plugin.video.wdrrockpalast/changelog.txt
+++ b/plugin.video.wdrrockpalast/changelog.txt
@@ -1,3 +1,7 @@
+[B]v1.1.0 (21.12.2012)[/B]
+- Change: xbmc.Player.play(url) to xbmc.Player.play(url, listitem) due to
several guys complaining about none working videos.
+- Update: Due to the set title in above listitem, in play mode the plugin now
shows the artist name instead of the video filename.
+
[B]v1.0.7 (29.08.2012)[/B]
- Change: Language tag added to addon.xml.
- Change: Icon resized to 256x256 pixels.
diff --git a/plugin.video.wdrrockpalast/default.py
b/plugin.video.wdrrockpalast/default.py
index 619d5cb..345e213 100644
--- a/plugin.video.wdrrockpalast/default.py
+++ b/plugin.video.wdrrockpalast/default.py
@@ -27,7 +27,13 @@ def playVideo(url):
response.close()
video_url=re.compile('dslSrc=([^&]+?)&').findall(link)
title_url=re.compile('<title>([^-]+?)- Rockpalast').findall(link)
- xbmc.Player().play(video_url[0])
+
+ url = urllib.unquote_plus(video_url[0])
+ title = title_url[0]
+
+ listitem = xbmcgui.ListItem(title, iconImage="DefaultFolder.png",
thumbnailImage='HTTP://www.wdr.de/tv/rockpalast/codebase/img/audioplayerbild_512x288.jpg')
+ listitem.setInfo('video', {'Title': title})
+ xbmc.Player(xbmc.PLAYER_CORE_AUTO).play( url, listitem)
def getParams():
param=[]
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=16b8202925a2adb0832d895baa58f44713957b4c
commit 16b8202925a2adb0832d895baa58f44713957b4c
Author: beenje <[email protected]>
Date: Fri Dec 21 23:32:30 2012 +0100
[plugin.video.funny.or.die] updated to version 1.0.3
diff --git a/plugin.video.funny.or.die/addon.xml
b/plugin.video.funny.or.die/addon.xml
index 1274753..e81fd9b 100644
--- a/plugin.video.funny.or.die/addon.xml
+++ b/plugin.video.funny.or.die/addon.xml
@@ -1,16 +1,15 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="plugin.video.funny.or.die"
name="Funny or Die"
- version="1.0.2"
+ version="1.0.3"
provider-name="divingmule">
<requires>
<import addon="xbmc.python" version="2.0"/>
- <import addon="script.module.beautifulsoup" version="3.0.8"/>
- <import addon="script.common.plugin.cache" version="1.0.0"/>
+ <import addon="script.module.beautifulsoup" version="3.2.0"/>
+ <import addon="script.common.plugin.cache" version="1.3.0"/>
</requires>
- <extension point="xbmc.python.pluginsource"
- library="default.py">
- <provides>video</provides>
+ <extension point="xbmc.python.pluginsource" library="default.py">
+ <provides>video</provides>
</extension>
<extension point="xbmc.addon.metadata">
<summary>funnyordie.com Videos</summary>
diff --git a/plugin.video.funny.or.die/changelog.txt
b/plugin.video.funny.or.die/changelog.txt
index d4e7551..de9e0e9 100644
--- a/plugin.video.funny.or.die/changelog.txt
+++ b/plugin.video.funny.or.die/changelog.txt
@@ -1,3 +1,7 @@
+Version 1.0.3
+fix website changes
+added search function
+
Version 1.0.2
fix for getting video url
diff --git a/plugin.video.funny.or.die/default.py
b/plugin.video.funny.or.die/default.py
index 312f247..878bf72 100644
--- a/plugin.video.funny.or.die/default.py
+++ b/plugin.video.funny.or.die/default.py
@@ -10,36 +10,49 @@ from BeautifulSoup import BeautifulSoup
import StorageServer
__settings__ = xbmcaddon.Addon(id='plugin.video.funny.or.die')
+addon_version = __settings__.getAddonInfo('version')
__language__ = __settings__.getLocalizedString
-sort = __settings__.getSetting('sort_by').replace(' ','_').lower()
-sort_time = __settings__.getSetting('sort_time').replace(' ','_').lower()
-home = __settings__.getAddonInfo('path')
-icon = xbmc.translatePath( os.path.join( home, 'icon.png' ) )
-cache = StorageServer.StorageServer("FunnyOrDie", 24)
+home = xbmc.translatePath(__settings__.getAddonInfo('path'))
+icon = os.path.join(home, 'icon.png')
+next_png = os.path.join(home, 'resources', 'next.png')
+cache = StorageServer.StorageServer("FunnyOrDie", 12)
+# settings type changed, reset is needed for updates
+if __settings__.getSetting('first_run') == 'true':
+ __settings__.setSetting('sort_by', '0')
+ __settings__.setSetting('sort_time', '0')
+ __settings__.setSetting('first_run', 'false')
-def make_request(url, headers=None):
+def addon_log(string):
+ xbmc.log("[addon.funnyordie-%s]: %s" %(addon_version, string))
+
+def make_request(url):
try:
- if headers is None:
- headers = {'User-agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64;
rv:14.0) Gecko/20100101 Firefox/14.0.1',
- 'Referer' : 'http://www.funnyordie.com/videos'}
+ headers = {
+ 'User-agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0)
Gecko/20100101 Firefox/17.0',
+ 'Referer' : 'http://www.funnyordie.com/videos'
+ }
req = urllib2.Request(url,None,headers)
response = urllib2.urlopen(req)
data = response.read()
response.close()
return data
except urllib2.URLError, e:
- print 'We failed to open "%s".' % url
+ addon_log('We failed to open "%s".' % url)
if hasattr(e, 'reason'):
- print 'We failed to reach a server.'
- print 'Reason: ', e.reason
+ addon_log('We failed to reach a server.')
+ addon_log('Reason: %s' %e.reason)
if hasattr(e, 'code'):
- print 'We failed with error code - %s.' % e.code
- xbmc.executebuiltin("XBMC.Notification(FunnyOrDie,HTTP ERROR:
"+str(e.code)+",5000,"+icon+")")
+ addon_log('We failed with error code - %s.' %e.code)
+ xbmc.executebuiltin(
+ "XBMC.Notification(FunnyOrDie,HTTP ERROR: %s,5000,%s)"
+ %(e.code, icon)
+ )
def cache_categories():
- soup =
BeautifulSoup(make_request('http://www.funnyordie.com/browse/videos/all/all/most_buzz'))
+ url = 'http://www.funnyordie.com/browse/videos/all/all/most_recent'
+ soup = BeautifulSoup(make_request(url),
convertEntities=BeautifulSoup.HTML_ENTITIES)
items = soup('div', attrs={'class' : 'dropdown'})[0]('a')
cat_list = []
for i in items:
@@ -48,10 +61,26 @@ def cache_categories():
def get_categories():
+ addDir(__language__(30024), 'search', 3, icon)
+ sort = {
+ '0': 'most_buzz',
+ '1': 'most_recent',
+ '2': 'most_viewed',
+ '3': 'most_favorited',
+ '4': 'highest_rated'
+ }
+ sort_t = {
+ '0': '',
+ '1': 'this_week',
+ '2': 'this_month'
+ }
+
+ sort_by = sort[__settings__.getSetting('sort_by')]
+ sort_time = sort_t[__settings__.getSetting('sort_time')]
for i in cache.cacheFunction(cache_categories):
- url = 'http://www.funnyordie.com/'
- url += '%s/%s/%s' %(i[1].rsplit('/', 1)[0], sort, sort_time)
- addDir(i[0],url,1,icon)
+ url = 'http://www.funnyordie.com'
+ url += '%s/%s/%s' %(i[1].rsplit('/', 1)[0], sort_by, sort_time)
+ addDir(i[0], url, 1, icon)
## Thanks to Fredrik Lundh for this function -
http://effbot.org/zone/re-sub.htm#unescape-html
@@ -86,7 +115,9 @@ def index(url):
try:
desc = unescape(re.findall('class="title" title="(.+?)"',
i)[0])
except:
- print '--desc exception--'
+ desc = ''
+ addon_log('desc exception')
+ continue
name = desc.split(' from')[0]
vid_id = re.findall('data-viewkey="(.+?)"', i)[0][1:]
try:
@@ -97,21 +128,27 @@ def index(url):
duration = re.findall('<span class="duration">(.+?)</span>',
i)[0]
except:
duration = ''
-
u=sys.argv[0]+"?url="+urllib.quote_plus(vid_id)+"&mode=2&name="+urllib.quote_plus(name)
- liz=xbmcgui.ListItem(name, iconImage="DefaultVideo.png",
thumbnailImage=thumb)
- liz.setInfo(type="Video", infoLabels={"Title": name, "Duration":
duration, "Plot": desc})
- liz.setProperty('IsPlayable', 'true')
-
xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz,totalItems=20)
+ addDir(name, vid_id, 2, thumb, duration, desc, True)
try:
page_num = re.findall('next_page = (.+?);', data)[0]
page = '?page='+page_num
- if not 'more' in url:
- url = url.replace('videos','more/videos')
- url = url.split('?page')[0]+page
- addDir(__language__(30031), url, 1,
xbmc.translatePath(os.path.join(home, 'resources', 'next.png')))
+ if not '?page=' in url:
+ page_url = None
+ replace_list = ['exclusives', 'immortal']
+ for i in replace_list:
+ if i in url:
+ page_url = url.replace('/all/',
'/').replace('/videos/','/more/videos/all/')
+ if not page_url:
+ page_url = url.replace('/videos/','/more/videos/')
+ if __settings__.getSetting('sort_time') == '0':
+ page_url += 'all_time'
+ page_url += page
+ else:
+ page_url = url.split('?page')[0]+page
+ addDir(__language__(30031), page_url, 1, next_png)
except:
- print '--- nextpage exception ---'
+ addon_log('nextpage exception')
def playVid(url):
@@ -120,6 +157,32 @@ def playVid(url):
xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item)
+def search(search_url):
+ if search_url == 'search':
+ keyboard = xbmc.Keyboard('', __language__(30006))
+ keyboard.doModal()
+ if keyboard.isConfirmed() == False:
+ return
+ search_query = keyboard.getText()
+ if len(search_query) == 0:
+ return
+ search_url =
'http://www.funnyordie.com/search/a/videos?q='+urllib.quote_plus(search_query)
+ soup = BeautifulSoup(make_request(search_url),
convertEntities=BeautifulSoup.HTML_ENTITIES)
+ search_results = soup.findAll('div', attrs={'class': "box
search_results_box"})[0]('div', attrs={'class': 'details '})
+ for i in search_results:
+ # href = i.a['href']
+ title = i.a['title'].encode('utf-8')
+ try: duration = i.find('span', attrs={'class': 'duration'}).string
+ except: duration = ''
+ thumb = i.findPrevious('a', attrs={'class': 'nail'}).img['src']
+ vid_key =
i.findPrevious('h2').findPrevious('div')['data-viewkey'][1:]
+ addDir(title, vid_key, 2, thumb, duration, '', True)
+ page = soup.find('a', attrs={'rel': 'next'})
+ if page:
+ page_url = 'http://www.funnyordie.com'+page['href']
+ addDir(__language__(30031), page_url, 3, next_png)
+
+
def get_params():
param=[]
paramstring=sys.argv[2]
@@ -139,12 +202,16 @@ def get_params():
return param
-def addDir(name,url,mode,iconimage):
+def addDir(name,url,mode,iconimage,duration='',desc='',isplayable=False):
u=sys.argv[0]+"?url="+urllib.quote_plus(url)+"&mode="+str(mode)+"&name="+urllib.quote_plus(name)
ok=True
liz=xbmcgui.ListItem(name, iconImage="DefaultFolder.png",
thumbnailImage=iconimage)
- liz.setInfo( type="Video", infoLabels={ "Title": name } )
-
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz,isFolder=True)
+ isfolder = True
+ if isplayable:
+ liz.setInfo(type="Video", infoLabels={"Title": name, "Duration":
duration, "Plot": desc})
+ liz.setProperty('IsPlayable', 'true')
+ isfolder = False
+
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz,isFolder=isfolder)
return ok
@@ -170,20 +237,20 @@ try:
except:
pass
-print "Mode: "+str(mode)
-print "URL: "+str(url)
-print "Name: "+str(name)
+addon_log("Mode: "+str(mode))
+addon_log("URL: "+str(url))
+addon_log("Name: "+str(name))
if mode==None:
- print ""
get_categories()
elif mode==1:
- print ""+url
index(url)
elif mode==2:
- print ""
playVid(url)
+elif mode==3:
+ search(url)
+
xbmcplugin.endOfDirectory(handle=int(sys.argv[1]))
\ No newline at end of file
diff --git a/plugin.video.funny.or.die/resources/language/English/strings.xml
b/plugin.video.funny.or.die/resources/language/English/strings.xml
index 2fa9c73..52f7ce8 100644
--- a/plugin.video.funny.or.die/resources/language/English/strings.xml
+++ b/plugin.video.funny.or.die/resources/language/English/strings.xml
@@ -1,30 +1,6 @@
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<strings>
- <string id="30000">All</string>
- <string id="30001">Exclusives</string>
- <string id="30002">Immortal</string>
- <string id="30003">Animation</string>
- <string id="30004">Animals Being Awesome</string>
- <string id="30005">Clean Comedy</string>
- <string id="30006">Doumb People</string>
- <string id="30007">Fails</string>
- <string id="30008">Internet Memes</string>
- <string id="30009">Kids Being Awesome</string>
- <string id="30010">Mashups</string>
- <string id="30011">Music</string>
- <string id="30012">News Fails</string>
- <string id="30013">Nostalgia</string>
- <string id="30014">Not Safe For Work Videos</string>
- <string id="30015">Parody</string>
- <string id="30016">Politics</string>
- <string id="30017">Rants</string>
- <string id="30018">Real Life</string>
- <string id="30019">Recaps</string>
- <string id="30020">Sketch</string>
- <string id="30021">Sports</string>
- <string id="30022">Stand Up</string>
- <string id="30023">Web Series</string>
- <string id="30024"></string>
+ <string id="30024">Search</string>
<string id="30025">Most Buzzed</string>
<string id="30026">Most Recent</string>
<string id="30027">Most Viewed</string>
diff --git a/plugin.video.funny.or.die/resources/settings.xml
b/plugin.video.funny.or.die/resources/settings.xml
index 5ae67b6..2b94758 100644
--- a/plugin.video.funny.or.die/resources/settings.xml
+++ b/plugin.video.funny.or.die/resources/settings.xml
@@ -1,4 +1,5 @@
<settings>
- <setting id="sort_by" type="select" lvalues="30025|30026|30027|30028|30029"
label="30030" default="highest_rated"/>
- <setting id="sort_time" type="select" lvalues="30038|30039|30040"
label="30037" default="all_time"/>
+ <setting id="sort_by" type="enum" lvalues="30025|30026|30027|30028|30029"
label="30030" default="0"/>
+ <setting id="sort_time" type="enum" lvalues="30038|30039|30040"
label="30037" default="0"/>
+ <setting id="first_run" type="bool" visible="false" label="First Run"
default="true"/>
</settings>
\ No newline at end of file
-----------------------------------------------------------------------
Summary of changes:
plugin.video.funny.or.die/addon.xml | 11 +-
plugin.video.funny.or.die/changelog.txt | 4 +
plugin.video.funny.or.die/default.py | 143 ++++++++++++++-----
.../resources/language/English/strings.xml | 26 +----
plugin.video.funny.or.die/resources/settings.xml | 5 +-
plugin.video.nolife/addon.xml | 2 +-
plugin.video.nolife/default.py | 3 +-
plugin.video.wdrrockpalast/addon.xml | 2 +-
plugin.video.wdrrockpalast/changelog.txt | 4 +
plugin.video.wdrrockpalast/default.py | 8 +-
10 files changed, 132 insertions(+), 76 deletions(-)
hooks/post-receive
--
Plugins
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons