The branch, eden-pre has been updated
       via  6a73d27ebf2ffa859d6fefe884f72c39ae3db559 (commit)
       via  06aa4a01e3dc02c243adb9727b595936c8f26eb4 (commit)
      from  5d495fce31ef424241e135f8526ff61e726905c5 (commit)

- Log -----------------------------------------------------------------
http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=6a73d27ebf2ffa859d6fefe884f72c39ae3db559

commit 6a73d27ebf2ffa859d6fefe884f72c39ae3db559
Author: spiff <[email protected]>
Date:   Fri Oct 7 09:08:51 2011 +0200

    [plugin.audio.twit] updated to version 1.0.1

diff --git a/plugin.audio.twit/addon.xml b/plugin.audio.twit/addon.xml
index 294bf86..470ceb7 100644
--- a/plugin.audio.twit/addon.xml
+++ b/plugin.audio.twit/addon.xml
@@ -1,19 +1,19 @@
-<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
-<addon id="plugin.audio.twit"
-       name="TWiT"
-       version="1.0.0"
-       provider-name="divingmule">
-  <requires>
-    <import addon="xbmc.python" version="2.0"/>
-    <import addon="script.module.beautifulsoup" version="3.0.8"/>
-  </requires>
-  <extension point="xbmc.python.pluginsource"
-            library="default.py">
-        <provides>audio</provides>
-  </extension>
-  <extension point="xbmc.addon.metadata">
-    <summary>TWiT</summary>
-    <description>Podcasts from the TWiT Network</description>
-    <platform>all</platform>
-  </extension>
-</addon>
+<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

+<addon id="plugin.audio.twit"

+       name="TWiT"

+       version="1.0.1"

+       provider-name="divingmule">

+  <requires>

+    <import addon="xbmc.python" version="2.0"/>

+    <import addon="script.module.beautifulsoup" version="3.0.8"/>

+  </requires>

+  <extension point="xbmc.python.pluginsource"

+            library="default.py">

+        <provides>audio</provides>

+  </extension>

+  <extension point="xbmc.addon.metadata">

+    <summary>TWiT</summary>

+    <description>Podcasts from the TWiT Network</description>

+    <platform>all</platform>

+  </extension>

+</addon>
\ No newline at end of file
diff --git a/plugin.audio.twit/changelog.txt b/plugin.audio.twit/changelog.txt
index 8ab09ff..fb2466a 100644
--- a/plugin.audio.twit/changelog.txt
+++ b/plugin.audio.twit/changelog.txt
@@ -1,2 +1,6 @@
-Version 1.0.0
+Version 1.0.1

+updated shows

+new icon and fanart

+

+Version 1.0.0

 initial for eden
\ No newline at end of file
diff --git a/plugin.audio.twit/default.py b/plugin.audio.twit/default.py
index 78b6365..053f47d 100644
--- a/plugin.audio.twit/default.py
+++ b/plugin.audio.twit/default.py
@@ -1,155 +1,155 @@
-import urllib,urllib2,re,os
-import xbmcplugin,xbmcgui,xbmcaddon
-from BeautifulSoup import BeautifulSoup
-
-__settings__ = xbmcaddon.Addon(id='plugin.audio.twit')
-__language__ = __settings__.getLocalizedString
-__home__ = __settings__.getAddonInfo('path')
-
-def CATEGORIES():
-        
addLinkLive(__language__(30000),'http://twit.am/listen',__home__+'/icon.png')  
-        
addDir(__language__(30001),'http://twit.tv/twit',1,'http://leoville.tv/podcasts/coverart/twit600audio.jpg')
-        
addDir(__language__(30002),'http://twit.tv/tnt',1,'http://leoville.tv/podcasts/coverart/tnt600audio.jpg')
-        
addDir(__language__(30003),'http://twit.tv/hn',1,'http://leoville.tv/podcasts/coverart/hn144audio.jpg')
-        
addDir(__language__(30004),'http://twit.tv/ipt',1,'http://leo.am/ipad600audio.jpg')
-        
addDir(__language__(30005),'http://twit.tv/aaa',1,'http://leo.am/podcasts/coverart/aaa600audio.jpg')
-        
addDir(__language__(30006),'http://twit.tv/tsh',1,'http://leoville.tv/podcasts/coverart/tsh600audio.jpg')
-        
addDir(__language__(30007),'http://twit.tv/tri',1,'http://leo.am/tri600audio.jpg')
-        
addDir(__language__(30008),'http://twit.tv/twig',1,'http://leoville.tv/podcasts/coverart/twig600audio.jpg')
-        
addDir(__language__(30009),'http://twit.tv/ww',1,'http://leoville.tv/podcasts/coverart/ww600audio.jpg')
-        
addDir(__language__(30010),'http://twit.tv/mbw',1,'http://leoville.tv/podcasts/coverart/mbw600audio.jpg')
-        
addDir(__language__(30011),'http://twit.tv/photo',1,'http://leo.am/photo144audio.jpg')
-        
addDir(__language__(30012),'http://twit.tv/fourcast',1,'http://leo.am/fc600audio.jpg')
-        
addDir(__language__(30013),'http://twit.tv/ttg',1,'http://leoville.tv/podcasts/coverart/ttg600audio.jpg')
-        
addDir(__language__(30014),'http://twit.tv/DGW',1,'http://leoville.tv/podcasts/coverart/dgw600audio.jpg')
-        
addDir(__language__(30015),'http://twit.tv/sn',1,'http://leoville.tv/podcasts/coverart/sn600audio.jpg')
-        
addDir(__language__(30016),'http://twit.tv/twirt',1,'http://leoville.tv/podcasts/coverart/twirt144audio.jpg')
-        
addDir(__language__(30017),'http://twit.tv/nsfw',1,'http://leoville.tv/podcasts/coverart/nsfw600audio.jpg')
-        
addDir(__language__(30018),'http://twit.tv/twich',1,'http://leoville.tv/podcasts/coverart/twich600audio.jpg')
-        
addDir(__language__(30019),'http://twit.tv/fr',1,'http://leo.am/fr600audio.jpg')
-        
addDir(__language__(30020),'http://twit.tv/htg',1,'http://leoville.tv/podcasts/coverart/htg600audio.jpg')
-        
addDir(__language__(30021),'http://twit.tv/specials',1,'http://leoville.tv/podcasts/coverart/specials600audio.jpg')
-        
addDir(__language__(30022),'http://twit.tv/kiki',1,'http://leoville.tv/podcasts/coverart/dksh600audio.jpg')
-        
addDir(__language__(30023),'http://twit.tv/FLOSS',1,'http://leoville.tv/podcasts/coverart/floss600audio.jpg')
-        
addDir(__language__(30024),'http://twit.tv/twil',1,'http://leoville.tv/podcasts/coverart/twil600audio.jpg')
-        
addDir(__language__(30025),'http://twit.tv/FIB',1,'http://leoville.tv/podcasts/coverart/fib600audio.jpg')
-        
addDir(__language__(30026),'http://twit.tv/gtt',1,'http://leo.am/gtt600audio.jpg')
-        
addDir(__language__(30027),'http://twit.tv/natn',1,'http://leoville.tv/podcasts/coverart/tsh600audio.jpg')
-        
addDir(__language__(30028),'http://twit.tv/cgw',1,'http://leo.am/cgw600audio.jpg')
-
-
-def INDEX(url,iconimage):
-        req = urllib2.Request(url)
-        req.addheaders = [('Referer', 'http://twit.tv/'),
-                ('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.3) 
Gecko/20100401 Firefox/3.6.3 ( .NET CLR 3.5.30729)')]
-        response = urllib2.urlopen(req)
-        link=response.read()
-        response.close()
-        soup = BeautifulSoup(link, convertEntities=BeautifulSoup.HTML_ENTITIES)
-        shows = soup.findAll('div', attrs={'class' : "podcast-meta"})
-        del shows[-1]
-        for show in shows:
-            try:
-                name = show('a')[0].string+' - '+show('p')[0].string
-            except:
-                name = show('a')[0].string
-            url = 'http://twit.tv'+show('a')[0]['href']
-            addLink(name,url,2,iconimage)
-        page=re.compile('<div class="episode-prevnext clearfix"><a href=".+?" 
class="episode-next pager-prev active"><span>Next</span></a><a href="(.+?)" 
class="episode-prev pager-next 
active"><span>Prev</span></a></div>').findall(link)
-        if len(page)<1:
-            page=re.compile('<span>Next</span></span><a href="(.+?)" 
class="episode-prev pager-next active">').findall(link)
-        for url in page:
-                addDir('Next Page','http://twit.tv'+url,1,'')
-
-def getURL(url):
-        req = urllib2.Request(url)
-        req.addheaders = [('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; 
rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 ( .NET CLR 3.5.30729)')]
-        response = urllib2.urlopen(req)
-        link=response.read()
-        response.close()
-        soup = BeautifulSoup(link, convertEntities=BeautifulSoup.HTML_ENTITIES)
-        url = soup.find('div', attrs={'class' : 'download'})('a')[0]['href']
-        item = xbmcgui.ListItem(path=url)
-        xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item)
-        
-def get_params():
-        param=[]
-        paramstring=sys.argv[2]
-        if len(paramstring)>=2:
-            params=sys.argv[2]
-            cleanedparams=params.replace('?','')
-            if (params[len(params)-1]=='/'):
-                params=params[0:len(params)-2]
-            pairsofparams=cleanedparams.split('&')
-            param={}
-            for i in range(len(pairsofparams)):
-                splitparams={}
-                splitparams=pairsofparams[i].split('=')
-                if (len(splitparams))==2:
-                    param[splitparams[0]]=splitparams[1]
-                    
-        return param
-
-def addLinkLive(name,url,iconimage):
-        ok=True
-        liz=xbmcgui.ListItem(name, iconImage="DefaultAudio.png", 
thumbnailImage=iconimage)
-        liz.setInfo( type="Audio", infoLabels={ "Title": name } )
-        
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=url,listitem=liz)
-        return ok
-
-def addLink(name,url,mode,iconimage):
-        
u=sys.argv[0]+"?url="+urllib.quote_plus(url)+"&mode="+str(mode)+"&name="+urllib.quote_plus(name)+"&iconimage="+urllib.quote_plus(iconimage)
-        ok=True
-        liz=xbmcgui.ListItem(name, iconImage=iconimage, 
thumbnailImage=iconimage)
-        liz.setInfo( type="Audio", infoLabels={ "Title": name} )
-        liz.setProperty('IsPlayable', 'true')
-        
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz)
-        return ok
-
-def addDir(name,url,mode,iconimage):
-        
u=sys.argv[0]+"?url="+urllib.quote_plus(url)+"&mode="+str(mode)+"&name="+urllib.quote_plus(name)+"&iconimage="+urllib.quote_plus(iconimage)
-        ok=True
-        liz=xbmcgui.ListItem(name, iconImage=iconimage, 
thumbnailImage=iconimage)
-        liz.setInfo( type="Audio", infoLabels={ "Title": name } )
-        
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz,isFolder=True)
-        return ok
-        
-params=get_params()
-url=None
-name=None
-mode=None
-
-try:
-    url=urllib.unquote_plus(params["url"])
-except:
-    pass
-try:
-    name=urllib.unquote_plus(params["name"])
-except:
-    pass
-try:
-    mode=int(params["mode"])
-except:
-    pass
-try:
-    iconimage=urllib.unquote_plus(params["iconimage"])
-except:
-    pass
-
-print "Mode: "+str(mode)
-print "URL: "+str(url)
-print "Name: "+str(name)
-
-if mode==None or url==None or len(url)<1:
-    print ""
-    CATEGORIES()
-
-elif mode==1:
-    print ""+url
-    INDEX(url,iconimage)
-        
-elif mode==2:
-    print ""+url
-    getURL(url)
-
+import urllib,urllib2,re,os

+import xbmcplugin,xbmcgui,xbmcaddon

+from BeautifulSoup import BeautifulSoup

+

+__settings__ = xbmcaddon.Addon(id='plugin.audio.twit')

+__language__ = __settings__.getLocalizedString

+home = __settings__.getAddonInfo('path')

+fanart = xbmc.translatePath( os.path.join( home, 'fanart.jpg' ) )

+

+

+def categories():

+        
addLink(__language__(30000),'http://twit.am/listen',3,xbmc.translatePath( 
os.path.join( home, 'resources', 'live.png' ) ))

+        
addDir(__language__(30001),'http://twit.tv/show/this-week-in-tech',1,'http://leoville.tv/podcasts/coverart/twit600audio.jpg')

+        
addDir(__language__(30002),'http://twit.tv/show/tech-news-today',1,'http://leoville.tv/podcasts/coverart/tnt600audio.jpg')

+        
addDir(__language__(30003),'http://twit.tv/show/fourcast',1,'http://leo.am/fc600audio.jpg')

+        
addDir(__language__(30004),'http://twit.tv/show/ipad-today',1,'http://leo.am/ipad600audio.jpg')

+        
addDir(__language__(30005),'http://twit.tv/show/all-about-android',1,'http://leo.am/podcasts/coverart/aaa600audio.jpg')

+        
addDir(__language__(30006),'http://twit.tv/show/tech-history-today',1,'http://leoville.tv/podcasts/coverart/tht600audio.jpg')

+        
addDir(__language__(30007),'http://twit.tv/show/this-week-in-google',1,'http://leoville.tv/podcasts/coverart/twig600audio.jpg')

+        
addDir(__language__(30008),'http://twit.tv/show/windows-weekly',1,'http://leoville.tv/podcasts/coverart/ww600audio.jpg')

+        
addDir(__language__(30009),'http://twit.tv/show/macbreak-weekly',1,'http://leoville.tv/podcasts/coverart/mbw600audio.jpg')

+        
addDir(__language__(30010),'http://twit.tv/show/triangulation',1,'http://leo.am/tri600audio.jpg')

+        
addDir(__language__(30011),'http://twit.tv/show/twit-photo',1,'http://leoville.tv/podcasts/coverart/photo144.jpg')

+        
addDir(__language__(30012),'http://twit.tv/show/the-tech-guy',1,'http://leoville.tv/podcasts/coverart/ttg600audio.jpg')

+        
addDir(__language__(30013),'http://twit.tv/show/security-now',1,'http://leoville.tv/podcasts/coverart/sn600audio.jpg')

+        
addDir(__language__(30014),'http://twit.tv/show/the-social-hour',1,'http://leoville.tv/podcasts/coverart/tsh600audio.jpg')

+        
addDir(__language__(30015),'http://twit.tv/show/weekly-daily-giz-wiz',1,'http://leoville.tv/podcasts/coverart/dgw600audio.jpg')

+        
addDir(__language__(30016),'http://twit.tv/show/nsfw',1,'http://leoville.tv/podcasts/coverart/nsfw600audio.jpg')

+        
addDir(__language__(30017),'http://twit.tv/show/dr-kikis-science-hour',1,'http://leoville.tv/podcasts/coverart/dksh600audio.jpg')

+        
addDir(__language__(30018),'http://twit.tv/show/floss-weekly',1,'http://leoville.tv/podcasts/coverart/floss600audio.jpg')

+        
addDir(__language__(30019),'http://twit.tv/show/this-week-in-law',1,'http://leoville.tv/podcasts/coverart/twil600audio.jpg')

+        
addDir(__language__(30020),'http://twit.tv/show/twit-live-specials',1,'http://leoville.tv/podcasts/coverart/specials600audio.jpg')

+        
addDir(__language__(30021),'http://twit.tv/show/home-theater-geeks',1,'http://leoville.tv/podcasts/coverart/htg600audio.jpg')

+        
addDir(__language__(30022),'http://twit.tv/show/frame-rate',1,'http://leo.am/fr600audio.jpg')

+        
addDir(__language__(30023),'http://twit.tv/show/this-week-in-computer-hardware',1,'http://leoville.tv/podcasts/coverart/twich600audio.jpg')

+        
addDir(__language__(30024),'http://twit.tv/show/ham-nation',1,'http://leoville.tv/podcasts/coverart/hn144audio.jpg')

+        
addDir(__language__(30025),'http://twit.tv/show/futures-in-biotech',1,'http://leoville.tv/podcasts/coverart/fib600audio.jpg')

+        
addDir(__language__(30026),'http://twit.tv/show/this-week-in-radio-tech',1,'http://static.mediafly.com/publisher/images/ab7b2412afa84674971e4c93665d0e06/icon-600x600.png')

+

+

+def index(url,iconimage):

+        headers = {'User-agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0) 
Gecko/20100101 Firefox/6.0'}

+        req = urllib2.Request(url,None,headers)

+        response = urllib2.urlopen(req)

+        link=response.read()

+        soup = BeautifulSoup(link, convertEntities=BeautifulSoup.HTML_ENTITIES)

+        items = soup.findAll('div', attrs={'class' : 
'view-content'})[3]('div', attrs={'class' : 'field-content'})

+        for i in items:

+            name = i.a.string

+            url = i.a['href']

+            addLink(name,url,2,iconimage)

+        try:

+            page = 'http://twit.tv'+soup('li', attrs={'class' : 
"pager-next"})[0].a['href']

+            addDir('Next Page',page,1,iconimage)

+        except:

+            pass

+

+

+def getAudio(url):

+        headers = {'User-agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0) 
Gecko/20100101 Firefox/6.0'}

+        req = urllib2.Request(url,None,headers)

+        response = urllib2.urlopen(req)

+        link=response.read()

+        soup = BeautifulSoup(link, convertEntities=BeautifulSoup.HTML_ENTITIES)

+        item = xbmcgui.ListItem(path = soup('a', attrs={'class' : "audio 
download"})[0]['href'])

+        xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item)

+

+

+def playLive(url):

+        item = xbmcgui.ListItem(path=url)

+        xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item)

+

+

+def get_params():

+        param=[]

+        paramstring=sys.argv[2]

+        if len(paramstring)>=2:

+            params=sys.argv[2]

+            cleanedparams=params.replace('?','')

+            if (params[len(params)-1]=='/'):

+                params=params[0:len(params)-2]

+            pairsofparams=cleanedparams.split('&')

+            param={}

+            for i in range(len(pairsofparams)):

+                splitparams={}

+                splitparams=pairsofparams[i].split('=')

+                if (len(splitparams))==2:

+                    param[splitparams[0]]=splitparams[1]

+        return param

+

+

+def addLink(name,url,mode,iconimage):

+        
u=sys.argv[0]+"?url="+urllib.quote_plus(url)+"&mode="+str(mode)+"&name="+urllib.quote_plus(name)+"&iconimage="+urllib.quote_plus(iconimage)

+        ok=True

+        liz=xbmcgui.ListItem(name, iconImage=iconimage, 
thumbnailImage=iconimage)

+        liz.setInfo( type="Audio", infoLabels={ "Title": name} )

+        liz.setProperty('IsPlayable', 'true')

+        liz.setProperty( "Fanart_Image", fanart )

+        
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz)

+        return ok

+

+

+def addDir(name,url,mode,iconimage):

+        
u=sys.argv[0]+"?url="+urllib.quote_plus(url)+"&mode="+str(mode)+"&name="+urllib.quote_plus(name)+"&iconimage="+urllib.quote_plus(iconimage)

+        ok=True

+        liz=xbmcgui.ListItem(name, iconImage=iconimage, 
thumbnailImage=iconimage)

+        liz.setInfo( type="Audio", infoLabels={ "Title": name } )

+        liz.setProperty( "Fanart_Image", fanart )

+        
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz,isFolder=True)

+        return ok

+

+

+params=get_params()

+url=None

+name=None

+mode=None

+

+try:

+    url=urllib.unquote_plus(params["url"])

+except:

+    pass

+try:

+    name=urllib.unquote_plus(params["name"])

+except:

+    pass

+try:

+    iconimage=urllib.unquote_plus(params["iconimage"])

+except:

+    pass

+try:

+    mode=int(params["mode"])

+except:

+    pass

+

+print "Mode: "+str(mode)

+print "URL: "+str(url)

+print "Name: "+str(name)

+

+if mode==None or url==None or len(url)<1:

+    print ""

+    categories()

+

+elif mode==1:

+    print ""

+    index(url,iconimage)

+

+elif mode==2:

+    print ""

+    getAudio(url)

+

+elif mode==3:

+    print ""

+    playLive(url)

+

 xbmcplugin.endOfDirectory(int(sys.argv[1]))
\ No newline at end of file
diff --git a/plugin.audio.twit/icon.png b/plugin.audio.twit/icon.png
index 370d0e2..869d86f 100644
Binary files a/plugin.audio.twit/icon.png and b/plugin.audio.twit/icon.png 
differ
diff --git a/plugin.audio.twit/resources/language/English/strings.xml 
b/plugin.audio.twit/resources/language/English/strings.xml
index b0c0c6a..af70e96 100644
--- a/plugin.audio.twit/resources/language/English/strings.xml
+++ b/plugin.audio.twit/resources/language/English/strings.xml
@@ -1,32 +1,30 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes"?>
-<strings>
-  <string id="30000">Twit Live</string>
-  <string id="30001">This WEEK in TECH</string>
-  <string id="30002">Tech News Today</string>
-  <string id="30003">Ham Nation</string>
-  <string id="30004">iPad Today</string>
-  <string id="30005">All About Android</string>
-  <string id="30006">The Social Hour</string>
-  <string id="30007">Triangulation</string>
-  <string id="30008">this WEEK in GOOGLE</string>
-  <string id="30009">Windows Weekly</string>
-  <string id="30010">MacBreak Weekly</string>
-  <string id="30011">TWiT Photo</string>
-  <string id="30012">FourCast</string>
-  <string id="30013">The Tech Guy</string>
-  <string id="30014">Weekly Daily Giz Wiz</string>
-  <string id="30015">Security Now</string>
-  <string id="30016">This Week in Radio Tech</string>
-  <string id='30017'>NSFW</string>
-  <string id='30018'>this WEEK in COMPUTER HARDWARE</string>
-  <string id='30019'>Frame Rate</string>
-  <string id='30020'>Home Theater Geeks</string>
-  <string id='30021'>TWiT Live Specials</string>
-  <string id='30022'>Dr. Kiki's Science Hour</string>
-  <string id='30023'>FLOSS Weekly</string>
-  <string id='30024'>this WEEK in LAW</string>
-  <string id='30025'>Futures in Biotech</string>
-  <string id='30026'>Green Tech Today</string>
-  <string id='30027'>The Social Hour</string>
-  <string id='30028'>Current Geek Weekly</string>
-</strings>
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>

+<strings>

+  <string id='30000'>Twit Live</string>

+  <string id="30001">This WEEK in TECH</string>

+  <string id="30002">Tech News Today</string>

+  <string id="30003">FourCast</string>

+  <string id="30004">iPad Today</string>

+  <string id='30005'>All About Android</string>

+  <string id="30006">Tech History Today</string>

+  <string id="30007">This WEEK in GOOGLE</string>

+  <string id="30008">Windows Weekly</string>

+  <string id="30009">MacBreak Weekly</string>

+  <string id='30010'>Triangulation</string>

+  <string id='30011'>TWiT Photo</string>

+  <string id="30012">The Tech Guy</string>

+  <string id="30013">Security Now</string>

+  <string id="30014">The Social Hour</string>

+  <string id="30015">Weekly Daily Giz Wiz</string>

+  <string id="30016">NSFW</string>

+  <string id="30017">Dr. Kikis Science Hour</string>

+  <string id="30018">FLOSS Weekly</string>

+  <string id="30019">This Week in Law</string>

+  <string id="30020">TWiT Live Specials</string>

+  <string id='30021'>Home Theater Geeks</string>

+  <string id='30022'>Frame Rate</string>

+  <string id='30023'>This Week In Computer Hardware</string>

+  <string id='30024'>Ham Nation</string>

+  <string id='30025'>Futures in Biotech</string>

+  <string id='30026'>This Week in Radio Tech</string>

+</strings>


http://xbmc.git.sourceforge.net/git/gitweb.cgi?p=xbmc/plugins;a=commit;h=06aa4a01e3dc02c243adb9727b595936c8f26eb4

commit 06aa4a01e3dc02c243adb9727b595936c8f26eb4
Author: spiff <[email protected]>
Date:   Fri Oct 7 09:07:48 2011 +0200

    [plugin.video.twit] updated to version 1.0.3

diff --git a/plugin.video.twit/addon.xml b/plugin.video.twit/addon.xml
index 416406d..3a67137 100644
--- a/plugin.video.twit/addon.xml
+++ b/plugin.video.twit/addon.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

 <addon id="plugin.video.twit"

        name="TWiT"

-       version="1.0.2"

+       version="1.0.3"

        provider-name="divingmule,thanks to Adam B.">

   <requires>

     <import addon="xbmc.python" version="2.0"/>

diff --git a/plugin.video.twit/changelog.txt b/plugin.video.twit/changelog.txt
index ab0fcc7..d5e3b2e 100644
--- a/plugin.video.twit/changelog.txt
+++ b/plugin.video.twit/changelog.txt
@@ -1,3 +1,8 @@
+Version 1.0.3

+updated shows

+new icon and fanart

+added TWiT Live via Justin.tv - 1 Mbs

+

 Version 1.0.2

 added TWiT Live via Ustream - 1.5 Mbs

 

diff --git a/plugin.video.twit/default.py b/plugin.video.twit/default.py
index 54323b3..12d4047 100644
--- a/plugin.video.twit/default.py
+++ b/plugin.video.twit/default.py
@@ -6,120 +6,85 @@ __settings__ = xbmcaddon.Addon(id='plugin.video.twit')
 __language__ = __settings__.getLocalizedString

 videoq = __settings__.getSetting('video_quality')

 home = __settings__.getAddonInfo('path')

-

-

-def CATEGORIES():

-        addDir(__language__(30017),'addLiveLinks',4,xbmc.translatePath( 
os.path.join( home, 'resources/live.png' ) ))

-        
addDir(__language__(30000),'http://feeds.twit.tv/twit_video_large',1,'http://static.mediafly.com/publisher/images/ba85558acd844c7384921f9f96989a37/icon-600x600.png')

-        
addDir(__language__(30001),'http://feeds.twit.tv/tnt_video_large',1,'http://static.mediafly.com/publisher/images/c21d95482417436ead61b0890a8fc282/icon-600x600.png')

-        
addDir(__language__(30002),'http://feeds.twit.tv/fc_video_large',1,'http://static.mediafly.com/publisher/images/f7f40bcf20c742cfb55cbccb56c2c68c/icon-600x600.png')

-        
addDir(__language__(30003),'http://feeds.twit.tv/ipad_video_large',1,'http://static.mediafly.com/publisher/images/201bc64beb6b4956971650fd1462a704/icon-600x600.png')

-        
addDir(__language__(30031),'http://feeds.twit.tv/aaa_video_large',1,'http://static.mediafly.com/publisher/images/7874016b2dd3490fa1e8b606dff4d2fa/icon-600x600.png')

-        
addDir(__language__(30004),'http://feeds.twit.tv/gtt_video_large',1,'http://static.mediafly.com/publisher/images/0cc717b3cc94406a885e5df42cac2b13/icon-600x600.png')

-        
addDir(__language__(30005),'http://feeds.twit.tv/twig_video_large',1,'http://static.mediafly.com/publisher/images/8248233e64fc4c68b722be0ec75d637d/icon-600x600.png')

-        
addDir(__language__(30006),'http://feeds.twit.tv/ww_video_large',1,'http://static.mediafly.com/publisher/images/ad659facf4cb4fe795b595d9b4275daf/icon-600x600.png')

-        
addDir(__language__(30007),'http://feeds.twit.tv/mbw_video_large',1,'http://static.mediafly.com/publisher/images/a24b7b336fb14a2ba3f1e31223f622ac/icon-600x600.png')

-        
addDir(__language__(30029),'http://feeds.twit.tv/tri_video_large',1,'http://static.mediafly.com/publisher/images/c60ef74e0a3545e490d7cefbc369d168/icon-600x600.png')

-        
addDir(__language__(30030),'http://feeds.twit.tv/photo_video_large',1,'http://static.mediafly.com/publisher/images/ca045f623e7d48509c8f4ff9a1ab7259/icon-600x600.png')
         

-        
addDir(__language__(30008),'http://feeds.twit.tv/ttg_video_large',1,'http://static.mediafly.com/publisher/images/d51aaf03dcfe4502a49e885d4201c278/icon-600x600.png')

-        
addDir(__language__(30009),'http://feeds.twit.tv/sn_video_large',1,'http://static.mediafly.com/publisher/images/1ac666ad22d940239754fe953207fb42/icon-600x600.png')

-        
addDir(__language__(30010),'http://twit.tv/tsh',2,'http://twit.tv/files/imagecache/coverart/coverart/tsh600.jpg')

-        
addDir(__language__(30011),'http://feeds.twit.tv/dgw_video_large',1,'http://static.mediafly.com/publisher/images/72acf86f350b40c5b5fd132dcacc78be/icon-600x600.png')

-        
addDir(__language__(30012),'http://feeds.twit.tv/nsfw_video_large',1,'http://static.mediafly.com/publisher/images/54f4a471ae6c418d89647968a2ea9c91/icon-600x600.png')

-        
addDir(__language__(30013),'http://feeds.twit.tv/dksh_video_large',1,'http://static.mediafly.com/publisher/images/c9ed18a67b134406a4d5fd357db8b0c9/icon-600x600.png')

-        
addDir(__language__(30014),'http://feeds.twit.tv/floss_video_large',1,'http://static.mediafly.com/publisher/images/06cecab60c784f9d9866f5dcb73227c3/icon-600x600.png')

-        
addDir(__language__(30015),'http://feeds.twit.tv/twil_video_large',1,'http://static.mediafly.com/publisher/images/b2911bcc34174461ba970d2e38507340/icon-600x600.png')

-        
addDir(__language__(30016),'http://feeds.twit.tv/specials_video_large',1,'http://static.mediafly.com/publisher/images/eed22d09b9524474ac49bc022b556b2b/icon-600x600.png')

-        
addDir(__language__(30022),'http://feeds.twit.tv/htg_video_large',1,'http://static.mediafly.com/publisher/images/441a40308195459b8e24f341dc68885c/icon-600x600.png')

-        
addDir(__language__(30023),'http://feeds.twit.tv/fr_video_large',1,'http://static.mediafly.com/publisher/images/5a081f72180e41939e549ec7d12be24d/icon-600x600.png')

-        
addDir(__language__(30024),'http://feeds.twit.tv/twich_video_large',1,'http://static.mediafly.com/publisher/images/f76d60fdd2ea4822adbc50d2027839ce/icon-600x600.png')

-        
addDir(__language__(30027),'http://feeds.twit.tv/hn_video_large',1,'http://static.mediafly.com/publisher/images/7a948708b1a3462bab8721556dd26704/icon-600x600.png')

-        
addDir(__language__(30025),'http://twit.tv/FIB',2,'http://leoville.tv/podcasts/coverart/fib600audio.jpg')

-        
addDir(__language__(30026),'http://feeds.twit.tv/twirt_video_large',1,'http://static.mediafly.com/publisher/images/ab7b2412afa84674971e4c93665d0e06/icon-600x600.png')

-

-

-def INDEX(url,iconimage):

-        req = urllib2.Request(url)

-        req.addheaders = [('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; 
rv:1.9.2.3) Gecko/20100401 Firefox/3.6.3 ( .NET CLR 3.5.30729)')]

-        response = urllib2.urlopen(req)

-        link=response.read()

-        response.close()

-        if videoq==__language__(30018):

-            link=link.replace('_h264b_640x368_500','_h264b_864x480_2000')

-        elif videoq==__language__(30019):

-            link=link.replace('_h264b_640x368_500','_h264b_864x480_1000')      
        

-        elif videoq==__language__(30020):

-            link=link.replace('_h264b_640x368_500','_h264b_640x368_256')

-        else:

-            link=link

-        link=link.replace('&amp;',' & ')

-        soup = BeautifulSoup(link)

-        info = soup.findAll('enclosure')

-        url=re.compile('<enclosure url="(.+?)" length=".+?" type="video/mp4" 
mediafly:profile="H264b_640x368_500">').findall(str(info))

-        title = soup.findAll('title')

-        del title[0];del title[0]

-        name=re.compile('<title>(.+?)</title>').findall(str(title))

-        desc = soup.findAll('itunes:subtitle')

-        del desc[0]

-        
description=re.compile('<itunes:subtitle>(.+?)</itunes:subtitle>').findall(str(desc))

-        pubdate = soup.findAll('pubdate')

-        del pubdate[0]

-        date=re.compile('<pubdate>(.+?)</pubdate>').findall(str(pubdate))

-        for index in range (len(name)):

-            if len(name)==len(description):

-                
addLink(name[index],url[index],description[index],date[index],iconimage)

-            else:

-                addLink(name[index],url[index],'',date[index],iconimage)

-

-def INDEXWebsite(url,iconimage):

-        req = urllib2.Request(url)

-        req.addheaders = [('Referer', 'http://twit.tv/'),

-                ('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.3) 
Gecko/20100401 Firefox/3.6.3 ( .NET CLR 3.5.30729)')]

+fanart = xbmc.translatePath( os.path.join( home, 'fanart.jpg' ) )

+

+

+def categories():

+        addDir(__language__(30000),'addLiveLinks',3,xbmc.translatePath( 
os.path.join( home, 'resources', 'live.png' ) ))

+        
addDir(__language__(30001),'http://twit.tv/show/this-week-in-tech',1,'http://static.mediafly.com/publisher/images/ba85558acd844c7384921f9f96989a37/icon-600x600.png')

+        
addDir(__language__(30002),'http://twit.tv/show/tech-news-today',1,'http://static.mediafly.com/publisher/images/c21d95482417436ead61b0890a8fc282/icon-600x600.png')

+        
addDir(__language__(30003),'http://twit.tv/show/fourcast',1,'http://static.mediafly.com/publisher/images/f7f40bcf20c742cfb55cbccb56c2c68c/icon-600x600.png')

+        
addDir(__language__(30004),'http://twit.tv/show/ipad-today',1,'http://static.mediafly.com/publisher/images/201bc64beb6b4956971650fd1462a704/icon-600x600.png')

+        
addDir(__language__(30005),'http://twit.tv/show/all-about-android',1,'http://static.mediafly.com/publisher/images/7874016b2dd3490fa1e8b606dff4d2fa/icon-600x600.png')

+        
addDir(__language__(30006),'http://twit.tv/show/tech-history-today',1,'http://static.mediafly.com/publisher/images/88fcc18ed4234a2e9f96a13f74afe7b9/icon-600x600.png')

+        
addDir(__language__(30007),'http://twit.tv/show/this-week-in-google',1,'http://static.mediafly.com/publisher/images/8248233e64fc4c68b722be0ec75d637d/icon-600x600.png')

+        
addDir(__language__(30008),'http://twit.tv/show/windows-weekly',1,'http://static.mediafly.com/publisher/images/ad659facf4cb4fe795b595d9b4275daf/icon-600x600.png')

+        
addDir(__language__(30009),'http://twit.tv/show/macbreak-weekly',1,'http://static.mediafly.com/publisher/images/a24b7b336fb14a2ba3f1e31223f622ac/icon-600x600.png')

+        
addDir(__language__(30010),'http://twit.tv/show/triangulation',1,'http://static.mediafly.com/publisher/images/c60ef74e0a3545e490d7cefbc369d168/icon-600x600.png')

+        
addDir(__language__(30011),'http://twit.tv/show/twit-photo',1,'http://static.mediafly.com/publisher/images/ca045f623e7d48509c8f4ff9a1ab7259/icon-600x600.png')

+        
addDir(__language__(30012),'http://twit.tv/show/the-tech-guy',1,'http://static.mediafly.com/publisher/images/d51aaf03dcfe4502a49e885d4201c278/icon-600x600.png')

+        
addDir(__language__(30013),'http://twit.tv/show/security-now',1,'http://static.mediafly.com/publisher/images/1ac666ad22d940239754fe953207fb42/icon-600x600.png')

+        
addDir(__language__(30014),'http://twit.tv/show/the-social-hour',1,'http://twit.tv/files/imagecache/coverart/coverart/tsh600.jpg')

+        
addDir(__language__(30015),'http://twit.tv/show/weekly-daily-giz-wiz',1,'http://static.mediafly.com/publisher/images/72acf86f350b40c5b5fd132dcacc78be/icon-600x600.png')

+        
addDir(__language__(30016),'http://twit.tv/show/nsfw',1,'http://static.mediafly.com/publisher/images/54f4a471ae6c418d89647968a2ea9c91/icon-600x600.png')

+        
addDir(__language__(30017),'http://twit.tv/show/dr-kikis-science-hour',1,'http://static.mediafly.com/publisher/images/c9ed18a67b134406a4d5fd357db8b0c9/icon-600x600.png')

+        
addDir(__language__(30018),'http://twit.tv/show/floss-weekly',1,'http://static.mediafly.com/publisher/images/06cecab60c784f9d9866f5dcb73227c3/icon-600x600.png')

+        
addDir(__language__(30019),'http://twit.tv/show/this-week-in-law',1,'http://static.mediafly.com/publisher/images/b2911bcc34174461ba970d2e38507340/icon-600x600.png')

+        
addDir(__language__(30020),'http://twit.tv/show/twit-live-specials',1,'http://static.mediafly.com/publisher/images/eed22d09b9524474ac49bc022b556b2b/icon-600x600.png')

+        
addDir(__language__(30021),'http://twit.tv/show/home-theater-geeks',1,'http://static.mediafly.com/publisher/images/441a40308195459b8e24f341dc68885c/icon-600x600.png')

+        
addDir(__language__(30022),'http://twit.tv/show/frame-rate',1,'http://static.mediafly.com/publisher/images/5a081f72180e41939e549ec7d12be24d/icon-600x600.png')

+        
addDir(__language__(30023),'http://twit.tv/show/this-week-in-computer-hardware',1,'http://static.mediafly.com/publisher/images/f76d60fdd2ea4822adbc50d2027839ce/icon-600x600.png')

+        
addDir(__language__(30024),'http://twit.tv/show/ham-nation',1,'http://static.mediafly.com/publisher/images/7a948708b1a3462bab8721556dd26704/icon-600x600.png')

+        
addDir(__language__(30025),'http://twit.tv/show/futures-in-biotech',1,'http://leoville.tv/podcasts/coverart/fib600audio.jpg')

+        
addDir(__language__(30026),'http://twit.tv/show/this-week-in-radio-tech',1,'http://static.mediafly.com/publisher/images/ab7b2412afa84674971e4c93665d0e06/icon-600x600.png')

+

+

+def index(url,iconimage):

+        headers = {'User-agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0) 
Gecko/20100101 Firefox/6.0'}

+        req = urllib2.Request(url,None,headers)

         response = urllib2.urlopen(req)

         link=response.read()

-        response.close()

-        
link=link.replace('&amp;','').replace('#039;',"'").replace('amp;','').replace('quot;','"')

-        match=re.compile('<h3 class="podcast-date">(.+?)</h3>\n    <h2><a 
href="(.+?)" title="(.+?)" alt=".+?">.+?</a></h2>\n    
<p>(.+?)</p>\n').findall(link)

-        for date,url,name,description in match:                

-                
addWebLink(name,'http://twit.tv'+url,description,date,3,iconimage)

-        page=re.compile('<div class="episode-prevnext clearfix"><a href=".+?" 
class="episode-next pager-prev active"><span>Next</span></a><a href="(.+?)" 
class="episode-prev pager-next 
active"><span>Prev</span></a></div>').findall(link)

-        if len(page)<1:

-                page=re.compile('<span>Next</span></span><a href="(.+?)" 
class="episode-prev pager-next active">').findall(link)

-        for url in page:

-                addDir('Next Page','http://twit.tv'+url,2,'')

-

-

-def VIDEOLINKS(url):

-        req = urllib2.Request(url)

-        req.addheaders = [('Referer', 'http://twit.tv/'),

-                ('Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.3) 
Gecko/20100401 Firefox/3.6.3 ( .NET CLR 3.5.30729)')]

+        soup = BeautifulSoup(link, convertEntities=BeautifulSoup.HTML_ENTITIES)

+        items = soup.findAll('div', attrs={'class' : 
'view-content'})[3]('div', attrs={'class' : 'field-content'})

+        for i in items:

+            name = i.a.string

+            url = i.a['href']

+            try:

+                description = i.p.string

+            except:

+                description = ''

+            date = i.findPrevious('span').string

+            addLink(name,url,description,date,2,iconimage)

+        try:

+            page = 'http://twit.tv'+soup('li', attrs={'class' : 
"pager-next"})[0].a['href']

+            addDir('Next Page',page,1,iconimage)

+        except:

+            pass

+

+

+def getVideo(url):

+        headers = {'User-agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0) 
Gecko/20100101 Firefox/6.0'}

+        req = urllib2.Request(url,None,headers)

         response = urllib2.urlopen(req)

         link=response.read()

-        response.close()

-        link=link.replace(' ','')

-        
match=re.compile('</div>\n<divclass="download"><ahref="(.+?)">DownloadVideo\(\High\)\</a>').findall(link)

-        if len(match)<1:

-                dialog = xbmcgui.Dialog()

-                ok = dialog.ok('TWiT',__settings__.getLocalizedString(30028))

-                print 'Sorry video not up yet'

-        for url in match:

-                aurl=url[0:-15]

-                if videoq==__language__(30018):

-                        url=aurl+('864x480_2000.mp4')

-                elif videoq==__language__(30019):

-                        url=aurl+('864x480__1000.mp4')         

-                elif videoq==__language__(30020):

-                        url=aurl+('864x480_640x368_256.mp4')

-                else:

-                        url=url

-                item = xbmcgui.ListItem(path=url)

-                xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item)

+        soup = BeautifulSoup(link, convertEntities=BeautifulSoup.HTML_ENTITIES)

+        link = soup('span', attrs={'class' : "download"})[0]('a')[0]['href']

+        if videoq == __language__(30027):

+            link = link.replace('_h264b_864x480_500','_h264b_864x480_2000')

+        elif videoq == __language__(30028):

+            link = link.replace('_h264b_864x480_500','_h264b_864x480_1000')    
        

+        elif videoq == __language__(30030):

+            link = link.replace('_h264b_864x480_500','_h264b_640x368_256')

+        item = xbmcgui.ListItem(path=link)

+        xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item)

 

 

 def addLiveLinks():

-        
addLinkLive(__language__(30032),'http://bglive-a.bitgravity.com/twit/live/high?noprefix',5,xbmc.translatePath(
 os.path.join( home, 'resources/live.png' ) ))

-        
addLinkLive(__language__(30033),'http://bglive-a.bitgravity.com/twit/live/low?noprefix',5,xbmc.translatePath(
 os.path.join( home, 'resources/live.png' ) ))

-        
addLinkLive(__language__(30034),'http://cgw.ustream.tv/Viewer/getStream/1/1524.amf',6,xbmc.translatePath(
 os.path.join( home, 'resources/live.png' ) ))

+        
addLink(__language__(30032),'http://bglive-a.bitgravity.com/twit/live/high?noprefix','','',4,xbmc.translatePath(
 os.path.join( home, 'resources/live.png' ) ))

+        
addLink(__language__(30033),'http://bglive-a.bitgravity.com/twit/live/low?noprefix','','',4,xbmc.translatePath(
 os.path.join( home, 'resources/live.png' ) ))

+        
addLink(__language__(30034),'http://cgw.ustream.tv/Viewer/getStream/1/1524.amf','','',5,xbmc.translatePath(
 os.path.join( home, 'resources/live.png' ) ))

+        addLink(__language__(30035),'URL','','',6,xbmc.translatePath( 
os.path.join( home, 'resources/live.png' ) ))

+

 

 def getSwf():

         url = 'http://www.ustream.tv/flash/viewer.swf'

@@ -143,67 +108,74 @@ def getUstream(url):
         swf = ' swfUrl='+getSwf()

         pageUrl = ' pageUrl=http://live.twit.tv'

         url = rtmp + playpath + swf + pageUrl + ' swfVfy=1 live=true'

-        playLive(url)

-        

-        

+        item = xbmcgui.ListItem(path=url)

+        xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item)

+

+

+def getJtv():

+        headers = {'User-agent' : 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:6.0) 
Gecko/20100101 Firefox/6.0',

+                   'Referer' : 'http://www.justin.tv/twit'}

+        req = 
urllib2.Request('http://usher.justin.tv/find/twit.xml?type=live',None,headers)

+        response = urllib2.urlopen(req)

+        link=response.read()

+        response.close()

+        soup = BeautifulSoup(link)

+        token = ' jtv='+soup.token.string.replace('\\','\\5c').replace(' 
','\\20').replace('"','\\22')

+        rtmp = soup.connect.string+'/'+soup.play.string

+        Pageurl = ' Pageurl=http://www.justin.tv/twit'

+        swf = ' 
swfUrl=http://www.justin.tv/widgets/live_embed_player.swf?channel=twit'

+        url = rtmp+token+swf+Pageurl

+        item = xbmcgui.ListItem(path=url)

+        xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item)

+

+

 def playLive(url):

         item = xbmcgui.ListItem(path=url)

         xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, item)

 

-        

+

 def get_params():

         param=[]

         paramstring=sys.argv[2]

         if len(paramstring)>=2:

-                params=sys.argv[2]

-                cleanedparams=params.replace('?','')

-                if (params[len(params)-1]=='/'):

-                        params=params[0:len(params)-2]

-                pairsofparams=cleanedparams.split('&')

-                param={}

-                for i in range(len(pairsofparams)):

-                        splitparams={}

-                        splitparams=pairsofparams[i].split('=')

-                        if (len(splitparams))==2:

-                                param[splitparams[0]]=splitparams[1]

-

+            params=sys.argv[2]

+            cleanedparams=params.replace('?','')

+            if (params[len(params)-1]=='/'):

+                params=params[0:len(params)-2]

+            pairsofparams=cleanedparams.split('&')

+            param={}

+            for i in range(len(pairsofparams)):

+                splitparams={}

+                splitparams=pairsofparams[i].split('=')

+                if (len(splitparams))==2:

+                    param[splitparams[0]]=splitparams[1]

         return param

 

 

-def addLink(name,url,description,date,iconimage):

-        ok=True

-        liz=xbmcgui.ListItem(name, iconImage="DefaultVideo.png", 
thumbnailImage=iconimage)

-        description = description + "\n \n Published: " + date

-        liz.setInfo( type="Video", infoLabels={ "Title": 
name,"Plot":description,"Date": date } )

-        liz.setProperty( "Fanart_Image", iconimage )

-        
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=url,listitem=liz)

-        return ok

-

-def addWebLink(name,url,description,date,mode,iconimage):

+def addLink(name,url,description,date,mode,iconimage):

+        try:

+            description = description + "\n \n Published: " + date

+        except:

+            description = "Published: " + date

         
u=sys.argv[0]+"?url="+urllib.quote_plus(url)+"&mode="+str(mode)+"&name="+urllib.quote_plus(name)+"&iconimage="+urllib.quote_plus(iconimage)

         ok=True

-        description = description + "\n \n Published: " + date

-        liz=xbmcgui.ListItem(name, iconImage="DefaultFolder.png", 
thumbnailImage=iconimage)

-        liz.setInfo( type="Video", infoLabels={ "Title": 
name,"Plot":description,"Date": date } )

+        liz=xbmcgui.ListItem(name, iconImage="DefaultVideo.png", 
thumbnailImage=iconimage)

+        liz.setInfo( type="Video", infoLabels={ "Title": 
name,"Plot":description } )

+        liz.setProperty( "Fanart_Image", fanart )

         liz.setProperty('IsPlayable', 'true')

         
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz)

         return ok

 

+

 def addDir(name,url,mode,iconimage):

         
u=sys.argv[0]+"?url="+urllib.quote_plus(url)+"&mode="+str(mode)+"&name="+urllib.quote_plus(name)+"&iconimage="+urllib.quote_plus(iconimage)

         ok=True

         liz=xbmcgui.ListItem(name, iconImage="DefaultFolder.png", 
thumbnailImage=iconimage)

         liz.setInfo( type="Video", infoLabels={ "Title": name } )

+        liz.setProperty( "Fanart_Image", fanart )

         
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz,isFolder=True)

         return ok

 

-def addLinkLive(name,url,mode,iconimage):

-        
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, path=url)

-        liz.setProperty('IsPlayable', 'true')

-        
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz)

-        return ok

 

 params=get_params()

 url=None

@@ -233,30 +205,30 @@ print "Name: "+str(name)
 

 if mode==None or url==None or len(url)<1:

     print ""

-    CATEGORIES()

+    categories()

 

 elif mode==1:

-    print ""+url

-    INDEX(url,iconimage)

-        

+    print ""

+    index(url,iconimage)

+

 elif mode==2:

-    print ""+url

-    INDEXWebsite(url,iconimage)

+    print ""

+    getVideo(url)

 

 elif mode==3:

-    print ""+url

-    VIDEOLINKS(url)

+    print ""

+    addLiveLinks()

 

 elif mode==4:

-    print ""+url

-    addLiveLinks()

-    

-elif mode==5:

-    print ""+url

+    print ""

     playLive(url)

 

-elif mode==6:

-    print ""+url

+elif mode==5:

+    print ""

     getUstream(url)

-    

-xbmcplugin.endOfDirectory(int(sys.argv[1]))

+

+elif mode==6:

+    print ""

+    getJtv()

+

+xbmcplugin.endOfDirectory(int(sys.argv[1]))
\ No newline at end of file
diff --git a/plugin.video.twit/icon.png b/plugin.video.twit/icon.png
index 370d0e2..869d86f 100644
Binary files a/plugin.video.twit/icon.png and b/plugin.video.twit/icon.png 
differ
diff --git a/plugin.video.twit/resources/language/English/strings.xml 
b/plugin.video.twit/resources/language/English/strings.xml
index 78a2164..6527ac4 100644
--- a/plugin.video.twit/resources/language/English/strings.xml
+++ b/plugin.video.twit/resources/language/English/strings.xml
@@ -1,38 +1,39 @@
-<?xml version="1.0" encoding="utf-8" standalone="yes"?>
-<strings>
-  <string id="30000">This WEEK in TECH</string>
-  <string id="30001">Tech News Today</string>
-  <string id="30002">FourCast</string>
-  <string id="30003">iPad Today</string>
-  <string id="30004">Green Tech Today</string>
-  <string id="30005">This WEEK in GOOGLE</string>
-  <string id="30006">Windows Weekly</string>
-  <string id="30007">MacBreak Weekly</string>
-  <string id="30008">The Tech Guy</string>
-  <string id="30009">Security Now</string>
-  <string id="30010">The Social Hour</string>
-  <string id="30011">Weekly Daily Giz Wiz</string>
-  <string id="30012">NSFW</string>
-  <string id="30013">Dr. Kikis Science Hour</string>
-  <string id="30014">FLOSS Weekly</string>
-  <string id="30015">This Week in Law</string>
-  <string id="30016">TWiT Live Specials</string>
-  <string id='30017'>Twit Live</string>
-  <string id='30018'>High          864x480 Bitrate 2000</string>
-  <string id='30019'>Medium          864x480 Bitrate 1000</string>
-  <string id='30020'>Low          640x368 Bitrate 256</string>
-  <string id='30021'>Video Quality</string>
-  <string id='30022'>Home Theater Geeks</string>
-  <string id='30023'>Frame Rate</string>
-  <string id='30024'>This Week In Computer Hardware</string>
-  <string id='30025'>Futures in Biotech</string>
-  <string id='30026'>This Week in Radio Tech</string>
-  <string id='30027'>Ham Nation</string>
-  <string id='30028'>Sorry, video not up yet.</string>
-  <string id='30029'>Triangulation</string>
-  <string id='30030'>TWiT Photo</string>
-  <string id='30031'>All About Android</string>
-  <string id='30032'>Bitgravity 1 Mbps</string>
-  <string id='30033'>Bitgravity 400 kbps</string>
-  <string id='30034'>Ustream 1.5 Mbps</string>
-</strings>
+<?xml version="1.0" encoding="utf-8" standalone="yes"?>

+<strings>

+  <string id='30000'>Twit Live</string>

+  <string id="30001">This WEEK in TECH</string>

+  <string id="30002">Tech News Today</string>

+  <string id="30003">FourCast</string>

+  <string id="30004">iPad Today</string>

+  <string id='30005'>All About Android</string>

+  <string id="30006">Tech History Today</string>

+  <string id="30007">This WEEK in GOOGLE</string>

+  <string id="30008">Windows Weekly</string>

+  <string id="30009">MacBreak Weekly</string>

+  <string id='30010'>Triangulation</string>

+  <string id='30011'>TWiT Photo</string>

+  <string id="30012">The Tech Guy</string>

+  <string id="30013">Security Now</string>

+  <string id="30014">The Social Hour</string>

+  <string id="30015">Weekly Daily Giz Wiz</string>

+  <string id="30016">NSFW</string>

+  <string id="30017">Dr. Kikis Science Hour</string>

+  <string id="30018">FLOSS Weekly</string>

+  <string id="30019">This Week in Law</string>

+  <string id="30020">TWiT Live Specials</string>

+  <string id='30021'>Home Theater Geeks</string>

+  <string id='30022'>Frame Rate</string>

+  <string id='30023'>This Week In Computer Hardware</string>

+  <string id='30024'>Ham Nation</string>

+  <string id='30025'>Futures in Biotech</string>

+  <string id='30026'>This Week in Radio Tech</string>

+  <string id='30027'>864x480 Bitrate 2000</string>

+  <string id='30028'>864x480 Bitrate 1000</string>

+  <string id='30029'>864x480 Bitrate 500</string>

+  <string id='30030'>640x368 Bitrate 256</string>

+  <string id='30031'>Video Quality</string>

+  <string id='30032'>Bitgravity 1 Mbps</string>

+  <string id='30033'>Bitgravity 400 kbps</string>

+  <string id='30034'>Ustream 1.5 Mbps</string>

+  <string id='30035'>Justin.TV 1 Mbps</string>

+</strings>

diff --git a/plugin.video.twit/resources/settings.xml 
b/plugin.video.twit/resources/settings.xml
index f435d42..b0d0fc2 100644
--- a/plugin.video.twit/resources/settings.xml
+++ b/plugin.video.twit/resources/settings.xml
@@ -1,3 +1,3 @@
 <settings>

-   <setting id="video_quality" type="select" lvalues="30018|30019|30020" 
label="30021" default=""/>

-</settings>

+   <setting id="video_quality" type="select" lvalues="30027|30028|30029|30030" 
label="30031" default=""/>

+</settings>
\ No newline at end of file

-----------------------------------------------------------------------

Summary of changes:
 plugin.audio.twit/addon.xml                        |   38 ++--
 plugin.audio.twit/changelog.txt                    |    6 +-
 plugin.audio.twit/default.py                       |  308 ++++++++++----------
 plugin.audio.twit/fanart.jpg                       |  Bin 0 -> 61219 bytes
 plugin.audio.twit/icon.png                         |  Bin 21647 -> 53653 bytes
 .../resources/language/English/strings.xml         |   62 ++--
 plugin.audio.twit/resources/twit.png               |  Bin 120264 -> 0 bytes
 plugin.video.twit/addon.xml                        |    2 +-
 plugin.video.twit/changelog.txt                    |    5 +
 plugin.video.twit/default.py                       |  292 +++++++++----------
 plugin.video.twit/fanart.jpg                       |  Bin 0 -> 61219 bytes
 plugin.video.twit/icon.png                         |  Bin 21647 -> 53653 bytes
 .../resources/language/English/strings.xml         |   77 +++---
 plugin.video.twit/resources/settings.xml           |    4 +-
 14 files changed, 387 insertions(+), 407 deletions(-)
 create mode 100644 plugin.audio.twit/fanart.jpg
 delete mode 100644 plugin.audio.twit/resources/twit.png
 create mode 100644 plugin.video.twit/fanart.jpg


hooks/post-receive
-- 
Plugins

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security
threats, fraudulent activity, and more. Splunk takes this data and makes
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2dcopy2
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons

Reply via email to