The branch, dharma-pre has been updated
       via  ced5a550553de0c0c60bcb3f61a338b848b2732f (commit)
      from  67e642c373dc8092aabbef10016aa8a1185c506e (commit)

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

commit ced5a550553de0c0c60bcb3f61a338b848b2732f
Author: spiff <[email protected]>
Date:   Thu Nov 25 10:00:30 2010 +0100

    [plugin.video.twit] updated to version 0.0.5

diff --git a/plugin.video.twit/addon.xml b/plugin.video.twit/addon.xml
index 6658902..8184a15 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="0.0.4"

+       version="0.0.5"

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

   <requires>

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

diff --git a/plugin.video.twit/changelog.txt b/plugin.video.twit/changelog.txt
index a7ce11b..a3df323 100644
--- a/plugin.video.twit/changelog.txt
+++ b/plugin.video.twit/changelog.txt
@@ -9,4 +9,8 @@ added release date to title
 added subtitle as plot

 

 Version 0.0.4

-fixed an issue with TNT
\ No newline at end of file
+fixed an issue with TNT

+

+Version 0.0.5

+added five new shows

+added addon settings for video quality
\ No newline at end of file
diff --git a/plugin.video.twit/default.py b/plugin.video.twit/default.py
index 3fde4f9..12baa35 100644
--- a/plugin.video.twit/default.py
+++ b/plugin.video.twit/default.py
@@ -1,119 +1,146 @@
-import urllib,urllib2,re,xbmcplugin,xbmcgui,xbmcaddon

-

-__settings__ = xbmcaddon.Addon(id='plugin.video.twit')

-__language__ = __settings__.getLocalizedString

-

-

-def CATEGORIES():

-               
addLink(__language__(30017),'http://bglive-a.bitgravity.com/twit/live/high','','','http://twit.tv/sites/all/themes/twit/img/logo.gif')
  

-               
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/9ff0322cc0444e599a010cdb9005d90a/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__(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__(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://feeds.twit.tv/natn_video_large',1,'http://static.mediafly.com/publisher/images/7f7185fe4b564de7a6c79f8f57bb59eb/icon-600x600.png')

-               
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')

-

-        

-        

-def INDEX(url):

-        req = urllib2.Request(url)

-        req.add_header('User-Agent', 'Mozilla/5.0 (Windows; U; Windows NT 5.1; 
en-GB; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3')

-        response = urllib2.urlopen(req)

-        link=response.read()

-        response.close()

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

-        match=re.compile('url="(.+?)" fileSize=".+?" type="video/mp4" 
medium="video" bitrate="1000" framerate="29.97" samplingrate="48" channels="1" 
duration=".+?" width="864" height="480" mediafly:profile="H264b_864x480_1000" 
/>\n').findall(link)

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

-        
desc=re.compile('<itunes:subtitle>(.+?)</itunes:subtitle>\n').findall(link)

-        date=re.compile('<pubDate>(.+?)</pubDate>\n').findall(link)

-       icon=re.compile('<img src="(.+?)"').findall(link)       

-       del name[0];del name[0];del desc[0];del date[0] # The first two strings 
do not apply.

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

-               if len(match) == len(desc) == len(icon):

-                       
addLink(name[index],match[index],desc[index],date[index],icon[index])

-               else:

-                       addLink(name[index],match[index],'',date[index],'') 

-

-                

-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,desc,date,iconimage):

-        ok=True

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

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

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

-        
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=url,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)

-        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)

-        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

-

-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)

-        

-

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

+import urllib,urllib2,re,xbmcplugin,xbmcgui,xbmcaddon
+
+__settings__ = xbmcaddon.Addon(id='plugin.video.twit')
+__language__ = __settings__.getLocalizedString
+
+def CATEGORIES():
+       
addLinkLive(__language__(30017),'http://bglive-a.bitgravity.com/twit/live/high','special://home/addons/plugin.video.twit/icon.png')
     
+       
addDir(__language__(30000),'http://twit.tv/twit',1,'http://static.mediafly.com/publisher/images/ba85558acd844c7384921f9f96989a37/icon-600x600.png')
+       
addDir(__language__(30001),'http://twit.tv/tnt',1,'http://static.mediafly.com/publisher/images/9ff0322cc0444e599a010cdb9005d90a/icon-600x600.png')
+       
addDir(__language__(30002),'http://twit.tv/fourcast',1,'http://static.mediafly.com/publisher/images/f7f40bcf20c742cfb55cbccb56c2c68c/icon-600x600.png')
+       
addDir(__language__(30003),'http://twit.tv/ipt',1,'http://static.mediafly.com/publisher/images/201bc64beb6b4956971650fd1462a704/icon-600x600.png')
+       
addDir(__language__(30004),'http://twit.tv/gtt',1,'http://static.mediafly.com/publisher/images/0cc717b3cc94406a885e5df42cac2b13/icon-600x600.png')
+       
addDir(__language__(30005),'http://twit.tv/twig',1,'http://static.mediafly.com/publisher/images/8248233e64fc4c68b722be0ec75d637d/icon-600x600.png')
+       
addDir(__language__(30006),'http://twit.tv/ww',1,'http://static.mediafly.com/publisher/images/ad659facf4cb4fe795b595d9b4275daf/icon-600x600.png')
+       
addDir(__language__(30007),'http://twit.tv/mbw',1,'http://static.mediafly.com/publisher/images/a24b7b336fb14a2ba3f1e31223f622ac/icon-600x600.png')
+       
addDir(__language__(30008),'http://twit.tv/ttg',1,'http://static.mediafly.com/publisher/images/d51aaf03dcfe4502a49e885d4201c278/icon-600x600.png')
+       
addDir(__language__(30009),'http://twit.tv/sn',1,'http://static.mediafly.com/publisher/images/1ac666ad22d940239754fe953207fb42/icon-600x600.png')
+       
addDir(__language__(30010),'http://twit.tv/natn',1,'http://static.mediafly.com/publisher/images/7f7185fe4b564de7a6c79f8f57bb59eb/icon-600x600.png')
+       
addDir(__language__(30011),'http://twit.tv/DGW',1,'http://static.mediafly.com/publisher/images/72acf86f350b40c5b5fd132dcacc78be/icon-600x600.png')
+       
addDir(__language__(30012),'http://twit.tv/nsfw',1,'http://static.mediafly.com/publisher/images/54f4a471ae6c418d89647968a2ea9c91/icon-600x600.png')
+       
addDir(__language__(30013),'http://twit.tv/kiki',1,'http://static.mediafly.com/publisher/images/c9ed18a67b134406a4d5fd357db8b0c9/icon-600x600.png')
+       
addDir(__language__(30014),'http://twit.tv/floss',1,'http://static.mediafly.com/publisher/images/06cecab60c784f9d9866f5dcb73227c3/icon-600x600.png')
+       
addDir(__language__(30015),'http://twit.tv/twil',1,'http://static.mediafly.com/publisher/images/b2911bcc34174461ba970d2e38507340/icon-600x600.png')
+       
addDir(__language__(30016),'http://twit.tv/specials',1,'http://static.mediafly.com/publisher/images/eed22d09b9524474ac49bc022b556b2b/icon-600x600.png')
+       
addDir(__language__(30022),'http://twit.tv/htg',1,'http://leoville.tv/podcasts/coverart/htg600audio.jpg')
+       
addDir(__language__(30023),'http://twit.tv/fr',1,'http://static.mediafly.com/publisher/images/5a081f72180e41939e549ec7d12be24d/icon-600x600.png')
+       
addDir(__language__(30024),'http://twit.tv/twich',1,'http://leoville.tv/podcasts/coverart/twich600audio.jpg')
+       
addDir(__language__(30025),'http://twit.tv/FIB',1,'http://leoville.tv/podcasts/coverart/fib600audio.jpg')
+       
addDir(__language__(30026),'http://twit.tv/twif',1,'http://leo.am/podcasts/coverart/twif600audio.jpg')
+       
addDir(__language__(30027),'http://twit.tv/cgw',1,'http://static.mediafly.com/publisher/images/e974ef72d2134d7b91c2908e8ceb5850/icon-600x600.png')
      
+
+def INDEX(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)')]
+       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,desc in match:                
+               
addLink(name,'http://twit.tv'+url,2,date,desc,'special://home/addons/plugin.video.twit/icon.png')
+       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 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)')]
+       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)
+       for url in match:
+               videoq = __settings__.getSetting('video_quality')
+               if videoq==__language__(30018):
+                       
url=url.replace('_h264b_864x480_500.mp4','_h264b_864x480_2000.mp4')
+               elif videoq==__language__(30019):
+                       
url=url.replace('_h264b_864x480_500.mp4','_h264b_864x480_1000.mp4')             
+               elif videoq==__language__(30020):
+                       
url=url.replace('_h264b_864x480_500.mp4','_h264b_640x368_256.mp4')
+               else:
+                       url=url
+               play=xbmc.Player().play(url)
+               
+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="DefaultVideo.png", 
thumbnailImage=iconimage)
+       liz.setInfo( type="Video", infoLabels={ "Title": name } )
+       
ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=url,listitem=liz)
+       return ok
+
+def addLink(name,url,mode,date,desc,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="DefaultVideo.png", 
thumbnailImage=iconimage)
+       description = desc + "\n \n Published: " + date
+       liz.setInfo( type="Video", infoLabels={ "Title": 
name,"Plot":description,"Date": date } )
+       
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)
+       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)
+       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
+
+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)
+               
+elif mode==2:
+       print ""+url
+       VIDEOLINKS(url)
+
+xbmcplugin.endOfDirectory(int(sys.argv[1]))
\ No newline at end of file
diff --git a/plugin.video.twit/resources/language/English/strings.xml 
b/plugin.video.twit/resources/language/English/strings.xml
index 76c86cf..6dff876 100644
--- a/plugin.video.twit/resources/language/English/strings.xml
+++ b/plugin.video.twit/resources/language/English/strings.xml
@@ -18,4 +18,14 @@
   <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 FUN</string>
+  <string id='30027'>Current Geek Weekly</string>
 </strings>

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

Summary of changes:
 plugin.video.twit/addon.xml                        |    2 +-
 plugin.video.twit/changelog.txt                    |    6 +-
 plugin.video.twit/default.py                       |  265 +++++++++++---------
 .../resources/language/English/strings.xml         |   10 +
 plugin.video.twit/resources/settings.xml           |    3 +
 5 files changed, 165 insertions(+), 121 deletions(-)
 create mode 100644 plugin.video.twit/resources/settings.xml


hooks/post-receive
-- 
Plugins

------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons

Reply via email to