The branch, eden has been updated
       via  85f52c31a6923260e1cc391fb03458d955c9fdac (commit)
       via  43e9e3cac9d92d97bd101a63af2e9a20e8f9969a (commit)
       via  75c9bcf80c7572ec8e3f12e00dc0ec8d0e540fc0 (commit)
      from  c51066a4a4854cd9b312269f559875cce3f24843 (commit)

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

commit 85f52c31a6923260e1cc391fb03458d955c9fdac
Author: spiff <[email protected]>
Date:   Fri Nov 2 15:33:11 2012 +0100

    [plugin.video.twit] updated to version 1.1.0

diff --git a/plugin.video.twit/addon.xml b/plugin.video.twit/addon.xml
index c98be4a..5a7342a 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.9"

+       version="1.1.0"

        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 03918ed..3c093ba 100644
--- a/plugin.video.twit/changelog.txt
+++ b/plugin.video.twit/changelog.txt
@@ -1,3 +1,7 @@
+Version 1.1.0

+fix for website changes

+added support for 'content_type' parameter, when launched as a music add-on, 
the playback setting is ignored and audio will be selected 

+

 Version 1.0.9

 added scraping and caching of shows

 

diff --git a/plugin.video.twit/default.py b/plugin.video.twit/default.py
index f8b1874..3cb3c12 100644
--- a/plugin.video.twit/default.py
+++ b/plugin.video.twit/default.py
@@ -17,38 +17,38 @@ except:
 

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

 __language__ = __settings__.getLocalizedString

-playback = __settings__.getSetting('playback')

 home = __settings__.getAddonInfo('path')

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

 icon = xbmc.translatePath( os.path.join(home, 'icon.png'))

 cache = StorageServer.StorageServer("twit", 24)

 

+# thumbs are from http://leoville.tv/podcasts/coverart/

 thumbs = {

-          'All About Android' : 
'http://leo.am/podcasts/coverart/aaa600video.jpg',

-          'Before You Buy' : 
'http://leoville.tv/podcasts/coverart/byb600video.jpg',

-          'FLOSS Weekly' : 
'http://leoville.tv/podcasts/coverart/floss600video.jpg',

-          'Frame Rate' : 'http://leoville.tv/podcasts/coverart/fr600video.jpg',

-          'Ham Nation' : 'http://leoville.tv/podcasts/coverart/hn144video.jpg',

-          'Home Theater Geeks' : 
'http://leoville.tv/podcasts/coverart/htg144video.jpg',

-          'iFive for the iPhone' : 
'http://feeds.twit.tv/podcasts/coverart/ifive600video.jpg',

-          'iPad Today' : 
'http://leoville.tv/podcasts/coverart/ipad600video.jpg',

-          'Know How...' : 
'http://feeds.twit.tv/podcasts/coverart/kh600video.jpg',

-          'MacBreak Weekly' : 
'http://leoville.tv/podcasts/coverart/mbw144video.jpg',

-          'NSFW' : 'http://leoville.tv/podcasts/coverart/nsfw144video.jpg',

-          'Radio Leo' : 
'http://twit.tv/files/imagecache/coverart-small/coverart/aaa600.jpg',

-          'Security Now' : 
'http://leoville.tv/podcasts/coverart/sn600video.jpg',

-          'Tech News Today' : 
'http://leoville.tv/podcasts/coverart/tnt144video.jpg',

-          'The Giz Wiz' : 
'http://static.mediafly.com/publisher/images/72acf86f350b40c5b5fd132dcacc78be/icon-600x600.png',

-          'The Social Hour' : 
'http://leoville.tv/podcasts/coverart/tsh600video.jpg',

-          'The Tech Guy' : 
'http://leoville.tv/podcasts/coverart/ttg144video.jpg',

-          'This Week In Computer Hardware' : 
'http://static.mediafly.com/publisher/images/f76d60fdd2ea4822adbc50d2027839ce/icon-600x600.png',

-          'This Week in Enterprise Tech' : 
'http://feeds.twit.tv/podcasts/coverart/twiet600video.jpg',

-          'This Week in Google' : 
'http://leoville.tv/podcasts/coverart/twig600video.jpg',

-          'this WEEK in LAW' : 
'http://static.mediafly.com/publisher/images/b2911bcc34174461ba970d2e38507340/icon-600x600.png',

-          'this WEEK in TECH' : 
'http://leoville.tv/podcasts/coverart/twit144video.jpg',

-          'Triangulation' : 
'http://static.mediafly.com/publisher/images/c60ef74e0a3545e490d7cefbc369d168/icon-600x600.png',

-          'TWiT Live Specials' : 
'http://leoville.tv/podcasts/coverart/specials144video.jpg',

-          'Windows Weekly' : 
'http://leoville.tv/podcasts/coverart/ww600video.jpg',

+    'All About Android' : 'aaa600.jpg',

+    'Before You Buy' : 'byb600.jpg',

+    'FLOSS Weekly' : 'floss600.jpg',

+    'Frame Rate' : 'fr600.jpg',

+    'Ham Nation' : 'hn600.jpg',

+    'Home Theater Geeks' : 'htg600.jpg',

+    'iFive for the iPhone' : 'ifive600.jpg',

+    'iPad Today' : 'ipad600.jpg',

+    'Know How...' : 'kh600.jpg',

+    'MacBreak Weekly' : 'mbw600.jpg',

+    'NSFW' : 'nsfw600.jpg',

+    'Radio Leo' : 'nsfw600.jpg',

+    'Security Now' : 'sn600.jpg',

+    'Tech News Today' : 'tnt600.jpg',

+    'The Giz Wiz' : 'dgw600.jpg',

+    'The Social Hour' : 'tsh600.jpg',

+    'The Tech Guy' : 'ttg600.jpg',

+    'This Week In Computer Hardware' : 'twich600.png',

+    'This Week in Enterprise Tech' : 'twiet600.jpg',

+    'This Week in Google' : 'twig600.jpg',

+    'This Week in Law' : 'twil600.jpg',

+    'This Week in Tech' : 'twit600.jpg',

+    'Triangulation' : 'tri600.jpg',

+    'TWiT Live Specials' : 'specials600.jpg',

+    'Windows Weekly' : 'ww600.jpg',

           }

 

 

@@ -72,60 +72,36 @@ def make_request(url):
 

 def get_thumb(url):

         soup = BeautifulSoup(make_request(url), 
convertEntities=BeautifulSoup.HTML_ENTITIES)

-        items = soup('div', attrs={'class' : "dropdown"})[1]('option')

-        for i in items:

-            if i.string == 'RSS':

-                feed_url = i['value']

-                break

         try:

-            thumb = re.compile('<itunes:image 
href="(.+?)"/>').findall(make_request(feed_url))[0].split(' ')[0].strip()

+            thumb = soup.find('div', attrs={'class' : "views-field 
views-field-field-cover-art-fid"})('img')['src']

+            if thumb == None: raise

         except:

-            try:

-                thumb = soup('span', attrs={'class' : 
"field-content"})[0].img['src']

-            except:

-                thumb = icon

+            thumb = icon

         return thumb

 

 

-def show_check():

-        try:

-            show_list = json.loads(cache.get("show_list"))

-        except:

-            show_list = []

+def cache_shows():

         url = 'http://twit.tv/shows'

         soup = BeautifulSoup(make_request(url), 
convertEntities=BeautifulSoup.HTML_ENTITIES)

         shows = soup.findAll('div', attrs={'class' : 'item-list'})[2]('li')

-        for i in shows:

-            name = str(i('a')[-1].string)

-            if not name in show_list:

-                cache_shows(shows)

-                break

-        return(json.loads(cache.get("show_list")))

-

-

-def cache_shows(shows):

         show_list = []

         for i in shows:

             name = str(i('a')[-1].string)

-            url = 
('http://twit.tv/show/'+name.replace("'",'').replace('.','').replace(' 
','-').lower()

-                   
.replace('-for-the','').replace('the-giz-wiz','weekly-daily-giz-wiz'))

+            show_url = 
('http://twit.tv/show/'+name.replace("'",'').replace('.','').replace(' 
','-').lower()

+                        
.replace('-for-the','').replace('the-giz-wiz','weekly-daily-giz-wiz'))

             try:

-                thumb = thumbs[name]

+                thumb = 
'http://twit-xbmc.googlecode.com/svn/images/'+thumbs[name]

             except:

                 print '--- NO Thumb in Thumbs ---'

-                try:

-                    thumb = get_thumb(url)

-                except:

-                    thumb = icon

-                    print '--- get_thumb FAILED: %s - %s ---' %(name, url)

-            show_list.append((name, url, thumb))

-        cache.set("show_list", json.dumps(show_list))

+                thumb = get_thumb(url)

+            show_list.append((name, show_url, thumb))

+        return show_list

 

 

 def get_shows():

-        
addDir(__language__(30038),'none',7,xbmc.translatePath(os.path.join(home, 
'icon.png')))

+        
addDir(__language__(30008),'none',7,xbmc.translatePath(os.path.join(home, 
'icon.png')))

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

-        shows = cache.cacheFunction(show_check)

+        shows = cache.cacheFunction(cache_shows)

         for i in shows:

             if i[0] == 'Radio Leo': continue

             addDir(i[0], i[1], 1, i[2])

@@ -231,6 +207,10 @@ def getVideo(url):
 

 

 def setUrl(url_list, set=True):

+        if content_type == 'audio':

+            playback = '3'

+        else:

+            playback = __settings__.getSetting('playback')

         if playback == '3':

             url = url_list[3]

         if playback == '2':

@@ -252,7 +232,7 @@ def setUrl(url_list, set=True):
         else:

             if url == 'no_url':

                 dialog = xbmcgui.Dialog()

-                ret = dialog.yesno(__language__(30040), __language__(30039))

+                ret = dialog.yesno(__language__(30001), __language__(30002))

                 if ret:

                     url = url_list[3]

                 else: return

@@ -261,11 +241,11 @@ def setUrl(url_list, set=True):
 

 

 def addLiveLinks():

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

-        
addLink(__language__(30041),'http://twit.am/listen','','',4,xbmc.translatePath( 
os.path.join( home, 'resources', 'live.png' ) ))

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

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

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

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

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

 

 

 def getUstream(url):

@@ -324,7 +304,8 @@ def addLink(name,url,description,date,mode,iconimage):
             description += "\n \n Published: " + date

         except:

             pass

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

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

+           
"&iconimage="+urllib.quote_plus(iconimage)+"&content_type="+content_type)

         ok=True

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

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

@@ -335,7 +316,8 @@ def addLink(name,url,description,date,mode,iconimage):
 

 

 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)

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

+           
"&iconimage="+urllib.quote_plus(iconimage)+"&content_type="+content_type)

         ok=True

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

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

@@ -348,6 +330,7 @@ params=get_params()
 url=None

 name=None

 mode=None

+content_type='video'

 

 try:

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

@@ -365,6 +348,10 @@ try:
     mode=int(params["mode"])

 except:

     pass

+try:

+    content_type=str(params["content_type"])

+except:

+    pass

 

 print "Mode: "+str(mode)

 print "URL: "+str(url)

diff --git a/plugin.video.twit/resources/language/English/strings.xml 
b/plugin.video.twit/resources/language/English/strings.xml
index 15c4dbe..91dd1e9 100644
--- a/plugin.video.twit/resources/language/English/strings.xml
+++ b/plugin.video.twit/resources/language/English/strings.xml
@@ -1,46 +1,18 @@
 <?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'>Video (HD) 1280x720 Bitrate 2500</string>

-  <string id='30028'>Video (SD) 864x480 Bitrate 500</string>

-  <string id='30029'>Video (low/mobile) 640x368 Bitrate 256</string>

-  <string id='30030'>Audio</string>

-  <string id='30031'>Playback</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>

-  <string id='30036'>Before You Buy</string>

-  <string id='30037'>Game On</string>

-  <string id='30038'>Latest Episodes</string>

-  <string id='30039'>Seems the video is not up yet.  Play the audio?</string>

-  <string id='30040'>TWiT</string>

-  <string id='30041'>Audio TWiT.am/listen</string>

-  <string id='30042'>Trey's Variety Hour</string>

+  <string id="30001">TWiT</string>

+  <string id="30002">Seems the video is not up yet.  Play the audio?</string>

+  <string id="30003">Bitgravity 1 Mbps</string>

+  <string id="30004">Bitgravity 400 kbps</string>

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

+  <string id="30006">Justin.TV 1 Mbps</string>

+  <string id="30007">Audio TWiT.am/listen</string>

+  <string id="30008">Latest Episodes</string>

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

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

+  <string id='30011'>Video (HD) 1280x720 Bitrate 2500</string>

+  <string id="30012">Video (SD) 864x480 Bitrate 500</string>

+  <string id="30013">Video (low/mobile) 640x368 Bitrate 256</string>

+  <string id="30014">Audio</string>

 </strings>
\ No newline at end of file
diff --git a/plugin.video.twit/resources/settings.xml 
b/plugin.video.twit/resources/settings.xml
index a05f3b0..2266cd2 100644
--- a/plugin.video.twit/resources/settings.xml
+++ b/plugin.video.twit/resources/settings.xml
@@ -1,3 +1,3 @@
 <settings>

-   <setting id="playback" type="enum" lvalues="30027|30028|30029|30030" 
label="30031" default="1"/>

+   <setting id="playback" type="enum" lvalues="30011|30012|30013|30014" 
label="30010" default="1"/>

 </settings>
\ No newline at end of file

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

commit 43e9e3cac9d92d97bd101a63af2e9a20e8f9969a
Author: spiff <[email protected]>
Date:   Fri Nov 2 15:32:05 2012 +0100

    [plugin.video.sagetv] updated to version 1.3.7

diff --git a/plugin.video.sagetv/addon.xml b/plugin.video.sagetv/addon.xml
index 24454e5..74fb61e 100644
--- a/plugin.video.sagetv/addon.xml
+++ b/plugin.video.sagetv/addon.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

 <addon id="plugin.video.sagetv"

        name="SageTV"

-       version="1.3.4"

+       version="1.3.7"

        provider-name="kricker,lehighbri,aaronb">

   <requires>

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

diff --git a/plugin.video.sagetv/changelog.txt 
b/plugin.video.sagetv/changelog.txt
index 51f5f4d..0dec0d6 100644
--- a/plugin.video.sagetv/changelog.txt
+++ b/plugin.video.sagetv/changelog.txt
@@ -1,3 +1,13 @@
+[B]Version 1.3.7 (Nov 1, 2012)[/B]

+- Streamlined initial check for the sagex-api-services plugin upon launch of 
the addon; this should enable loading the addon's main menu much faster

+- **Note that this change requires you to copy the updated xbmc.js file to 
your sagetv\sagex\services folder

+

+[B]Version 1.3.6 (Nov 1, 2012)[/B]

+- Handle SageTV recording path setting that is with and without a trailing 
slash (previously the addon didn't work if you didn't include the trailing 
slash in your recording path)

+

+[B]Version 1.3.5 (Oct 30, 2012)[/B]

+- Fixed UTF8 issue when browsing channels and searching (missed those in the 
previous fix)

+

 [B]Version 1.3.4 (Oct 17, 2012)[/B]

 - Improved display of show titles that contain special (non-ASCII) characters 
(added UTF8 support)

 

diff --git a/plugin.video.sagetv/contextmenuactions.py 
b/plugin.video.sagetv/contextmenuactions.py
index fb67e32..4c788fc 100644
--- a/plugin.video.sagetv/contextmenuactions.py
+++ b/plugin.video.sagetv/contextmenuactions.py
@@ -113,6 +113,13 @@ if ( sage_unc5 != '' and sage_unc5 != None ):
 def filemap(filepath):

     for (rec, unc) in sagemappings:

         if ( filepath.find(rec) != -1 ):

+            # If the user didn't specify a trailing \ or / in the recording 
path setting, add that as that's critical to mapping the path correctly

+            if(rec.find("\\") != -1):

+                if(rec.rfind("\\") != (len(rec)-1)):

+                    rec = rec + "\\"

+            elif(rec.find("/") != -1):

+                if(rec.rfind("/") != (len(rec)-1)):

+                    rec = rec + "/"

             return filepath.replace(rec, unc)

 

     return filepath

diff --git a/plugin.video.sagetv/default.py b/plugin.video.sagetv/default.py
index 1848350..aa7da63 100644
--- a/plugin.video.sagetv/default.py
+++ b/plugin.video.sagetv/default.py
@@ -42,6 +42,13 @@ if ( sage_unc5 != '' and sage_unc5 != None ):
 def filemap(filepath):

     for (rec, unc) in sagemappings:

         if ( filepath.find(rec) != -1 ):

+            # If the user didn't specify a trailing \ or / in the recording 
path setting, add that as that's critical to mapping the path correctly

+            if(rec.find("\\") != -1):

+                if(rec.rfind("\\") != (len(rec)-1)):

+                    rec = rec + "\\"

+            elif(rec.find("/") != -1):

+                if(rec.rfind("/") != (len(rec)-1)):

+                    rec = rec + "/"

             return filepath.replace(rec, unc)

 

     return filepath

@@ -59,19 +66,23 @@ confluence_views = [500,501,502,503,504,508]
 

 def TOPLEVELCATEGORIES():

 

-    url = strUrl + '/sagex/api?command=GetInstalledPlugins&encoder=json'

-    plugins = executeSagexAPIJSONCall(url, "Result")

-

-    if(plugins == None or len(plugins) == 0):

-        print "SageTV not detected, or required plugins not installed"

-        
xbmcgui.Dialog().ok(__language__(21000),__language__(21001),__language__(21002),__language__(21003))

-        return

+    #url = strUrl + '/sagex/api?command=GetInstalledPluginss&encoder=json'

+    url = strUrl + 
'/sagex/api?c=xbmc:GetPluginVersion&1=sagex-api-services&encoder=json'

+    sagexVersion = executeSagexAPIJSONCall(url, "Result")

+

+    if(sagexVersion == None or sagexVersion.find("Exception") != -1):

+        #If no plugins were returned, first check that the user has the 
appropriate xbmc.js which has the required GetPluginVersion method

+        print "************errorMsg=" + str(sagexVersion)

+        if(sagexVersion == "java.lang.NoSuchMethodException: no such method: 
GetPluginVersion"):

+            print "GetPluginVersion method not found in the xbmc.js file; user 
must make sure they have the latest xbmc.js installed on their SageTV server"

+            
xbmcgui.Dialog().ok(__language__(21004),__language__(21045),__language__(21046),__language__(21047))

+            return

+        else:

+            print "SageTV not detected, or required plugins not installed"

+            
xbmcgui.Dialog().ok(__language__(21000),__language__(21001),__language__(21002),__language__(21003))

+            return

         

     print "Successfully able to connect to the SageTV server @ " + 
__settings__.getSetting("sage_ip") + ':' + __settings__.getSetting("sage_port")

-    sagexVersion = ""

-    for plugin in plugins:

-        if(plugin.get("PluginIdentifier") == "sagex-api-services"):

-            sagexVersion = plugin.get("PluginVersion")

  

     print "TOPLEVELCATEGORIES STARTED; sagex-api-services version=" + 
sagexVersion

     if(sagexVersion == ""):

@@ -197,7 +208,7 @@ def VIEWUPCOMINGRECORDINGS(url,name):
     for airing in airings:

         show = airing.get("Show")

         strTitle = airing.get("AiringTitle")

-        strTitle = unicodedata.normalize('NFKD', 
strTitle).encode('ascii','ignore')

+        strTitleEncoded = strTitle.encode("utf8")

         strEpisode = show.get("ShowEpisode")

         if(strEpisode == None):

             strEpisode = ""        

@@ -223,22 +234,22 @@ def VIEWUPCOMINGRECORDINGS(url,name):
 

         # if there is no episode name use the description in the title

         

-        strDisplayText = strTitle

+        strDisplayText = strTitleEncoded

         if(strGenre.find("Movie")<0 and strGenre.find("Movies")<0 and 
strGenre.find("Film")<0 and strGenre.find("Shopping")<0 and 
strGenre.find("Consumer")<0):

             if(strEpisode == ""):

                 if(strDescription != ""):

-                    strDisplayText = strTitle + ' - ' + strDescription

+                    strDisplayText = strTitleEncoded + ' - ' + strDescription

                 else:

                     if(strGenre.find("News")>=0):

                         strDisplayText = studio + " News - " + strftime('%a %b 
%d', time.localtime(startTime)) + " @ " + airTime

                         strDescription = strGenre

                     elif(strGenre.find("Sports")>=0):

-                        strDisplayText = strTitle + " - " + strftime('%a %b 
%d', time.localtime(startTime)) + " @ " + airTime

+                        strDisplayText = strTitleEncoded + " - " + 
strftime('%a %b %d', time.localtime(startTime)) + " @ " + airTime

                         strDescription = strGenre

             else:

-                strDisplayText = strTitle + ' - ' + strEpisode

+                strDisplayText = strTitleEncoded + ' - ' + strEpisode

         strDisplayText = strftime('%a %b %d', time.localtime(startTime)) + " @ 
" + airTime + ": " + strDisplayText

-        
addAiringLink(strDisplayText,'',strDescription,IMAGE_THUMB,strGenre,strOriginalAirdate,strAiringdate,strTitle,strAiringID,seasonNum,episodeNum,studio,isFavorite,
 airing.get("AiringStartTime"), airing.get("AiringEndTime"))

+        
addAiringLink(strDisplayText,'',strDescription,IMAGE_THUMB,strGenre,strOriginalAirdate,strAiringdate,strTitleEncoded,strAiringID,seasonNum,episodeNum,studio,isFavorite,
 airing.get("AiringStartTime"), airing.get("AiringEndTime"))

 

     xbmc.executebuiltin("Container.SetViewMode(504)")

 

@@ -268,7 +279,7 @@ def VIEWAIRINGSONCHANNEL(url,name):
     for airing in airings:

         show = airing.get("Show")

         strTitle = airing.get("AiringTitle")

-        strTitle = unicodedata.normalize('NFKD', 
strTitle).encode('ascii','ignore')

+        strTitleEncoded = strTitle.encode("utf8")

         strEpisode = show.get("ShowEpisode")

         if(strEpisode == None):

             strEpisode = ""        

@@ -293,22 +304,22 @@ def VIEWAIRINGSONCHANNEL(url,name):
             strOriginalAirdate = "%02d.%02d.%s" % 
(strOriginalAirdateObject.day, strOriginalAirdateObject.month, 
strOriginalAirdateObject.year)

 

         # if there is no episode name use the description in the title

-        strDisplayText = strTitle

+        strDisplayText = strTitleEncoded

         if(strGenre.find("Movie")<0 and strGenre.find("Movies")<0 and 
strGenre.find("Film")<0 and strGenre.find("Shopping")<0 and 
strGenre.find("Consumer")<0):

             if(strEpisode == ""):

                 if(strDescription != ""):

-                    strDisplayText = strTitle + ' - ' + strDescription

+                    strDisplayText = strTitleEncoded + ' - ' + strDescription

                 else:

                     if(strGenre.find("News")>=0):

                         strDisplayText = studio + " News - " + strftime('%a %b 
%d', time.localtime(startTime)) + " @ " + airTime

                         strDescription = strGenre

                     elif(strGenre.find("Sports")>=0):

-                        strDisplayText = strTitle + " - " + strftime('%a %b 
%d', time.localtime(startTime)) + " @ " + airTime

+                        strDisplayText = strTitleEncoded + " - " + 
strftime('%a %b %d', time.localtime(startTime)) + " @ " + airTime

                         strDescription = strGenre

             else:

-                strDisplayText = strTitle + ' - ' + strEpisode

+                strDisplayText = strTitleEncoded + ' - ' + strEpisode

         strDisplayText = strftime('%a %b %d', time.localtime(startTime)) + " @ 
" + airTime + ": " + strDisplayText

-        
addAiringLink(strDisplayText,'',strDescription,IMAGE_THUMB,strGenre,strOriginalAirdate,strAiringdate,strTitle,strAiringID,seasonNum,episodeNum,studio,isFavorite,
 airing.get("AiringStartTime"), airing.get("AiringEndTime"))

+        
addAiringLink(strDisplayText,'',strDescription,IMAGE_THUMB,strGenre,strOriginalAirdate,strAiringdate,strTitleEncoded,strAiringID,seasonNum,episodeNum,studio,isFavorite,
 airing.get("AiringStartTime"), airing.get("AiringEndTime"))

 

     xbmc.executebuiltin("Container.SetViewMode(504)")

 

@@ -402,7 +413,7 @@ def SEARCHFORAIRINGS(url,name):
     for airing in airings:

         show = airing.get("Show")

         strTitle = airing.get("AiringTitle")

-        strTitle = unicodedata.normalize('NFKD', 
strTitle).encode('ascii','ignore')

+        strTitleEncoded = strTitle.encode("utf8")

         strEpisode = show.get("ShowEpisode")

         if(strEpisode == None):

             strEpisode = ""        

@@ -427,18 +438,18 @@ def SEARCHFORAIRINGS(url,name):
             strOriginalAirdate = "%02d.%02d.%s" % 
(strOriginalAirdateObject.day, strOriginalAirdateObject.month, 
strOriginalAirdateObject.year)

 

         # if there is no episode name use the description in the title

-        strDisplayText = strTitle

+        strDisplayText = strTitleEncoded

         if(strGenre.find("Movie")<0 and strGenre.find("Movies")<0 and 
strGenre.find("Film")<0 and strGenre.find("Shopping")<0 and 
strGenre.find("Consumer")<0):

             if(strEpisode == ""):

                 if(strDescription != ""):

-                    strDisplayText = strTitle + ' - ' + strDescription

+                    strDisplayText = strTitleEncoded + ' - ' + strDescription

                 else:

                     strDisplayText = studio + " News - " + strftime('%a %b 
%d', time.localtime(startTime)) + " @ " + airTime

                     strDescription = strGenre

             else:

-                strDisplayText = strTitle + ' - ' + strEpisode

+                strDisplayText = strTitleEncoded + ' - ' + strEpisode

         strDisplayText = strftime('%a %b %d', time.localtime(startTime)) + " @ 
" + airTime + ": " + strDisplayText

-        
addAiringLink(strDisplayText,'',strDescription,IMAGE_THUMB,strGenre,strOriginalAirdate,strAiringdate,strTitle,strAiringID,seasonNum,episodeNum,studio,isFavorite,
 airing.get("AiringStartTime"), airing.get("AiringEndTime"))

+        
addAiringLink(strDisplayText,'',strDescription,IMAGE_THUMB,strGenre,strOriginalAirdate,strAiringdate,strTitleEncoded,strAiringID,seasonNum,episodeNum,studio,isFavorite,
 airing.get("AiringStartTime"), airing.get("AiringEndTime"))

 

     xbmc.executebuiltin("Container.SetViewMode(504)")

 

@@ -611,7 +622,12 @@ def executeSagexAPIJSONCall(url, resultToGet):
     numKeys = len(objKeys)

     if(numKeys == 1):

         return resp.get(resultToGet)    

-

+    elif(numKeys > 1):

+        error = resp.get("error")

+        if(error != None and error != ""):

+            return error

+        else:

+            return None

     else:

         return None

 

diff --git a/plugin.video.sagetv/extras/sagex/services/xbmc.js 
b/plugin.video.sagetv/extras/sagex/services/xbmc.js
index 82b531c..aabf8eb 100644
--- a/plugin.video.sagetv/extras/sagex/services/xbmc.js
+++ b/plugin.video.sagetv/extras/sagex/services/xbmc.js
@@ -134,9 +134,24 @@ function GetFavoriteIDForShowTitle(showtitle) {
    for (var i=0;i<s;i++) {
       var fav = favs[i];
       if(showtitle == FavoriteAPI.GetFavoriteTitle(fav)) {
-        favoriteID = ""+FavoriteAPI.GetFavoriteID(fav);
-        break;
+        favoriteID = ""+FavoriteAPI.GetFavoriteID(fav);
+        break;
       }
    }
    return favoriteID;
 }
+
+function GetPluginVersion(pluginidentifier) {
+   var PluginAPI = Packages.sagex.api.PluginAPI;
+   var plugins =  PluginAPI.GetInstalledPlugins();
+   pluginVersion = "";
+   var s = plugins.length;
+   for (var i=0;i<s;i++) {
+      var plugin = plugins[i];
+      if(pluginidentifier == PluginAPI.GetPluginIdentifier(plugin)) {
+        pluginVersion = PluginAPI.GetPluginVersion(plugin);
+        break;
+      }
+   }
+   return pluginVersion;
+}
diff --git a/plugin.video.sagetv/resources/language/English/strings.xml 
b/plugin.video.sagetv/resources/language/English/strings.xml
index 0f6ca14..85d1298 100644
--- a/plugin.video.sagetv/resources/language/English/strings.xml
+++ b/plugin.video.sagetv/resources/language/English/strings.xml
@@ -14,7 +14,7 @@
     <string id="21000">SageTV Server Not Found</string>

     <string id="21001">Unable to connect to your SageTV server.</string>

     <string id="21002">1) Please confirm it is running.</string>

-    <string id="21003">2. Confirm the settings of this addon are 
correct.</string>

+    <string id="21003">2) Confirm the settings of this addon are 
correct.</string>

     <string id="21004">Dependency Missing</string>

     <string id="21005">This addon requires sagex-api-services version</string>

     <string id="21006">You do not have the sagex-api-services plugin 
installed</string>

@@ -56,4 +56,7 @@
     <string id="21042">Set All Watched</string>

     <string id="21043">Clear All Watched</string>

     <string id="21044">Delete All</string>

+    <string id="21045">Your xbmc.js file is not up-to-date</string>

+    <string id="21046">Please confirm that you copied the latest xbmc.js 
file</string>

+    <string id="21047">to your SageTV\sagex\services folder</string>

 </strings>


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

commit 75c9bcf80c7572ec8e3f12e00dc0ec8d0e540fc0
Author: spiff <[email protected]>
Date:   Fri Nov 2 15:30:32 2012 +0100

    [plugin.video.tagesschau] updated to version 1.3.2

diff --git a/plugin.video.tagesschau/addon.xml 
b/plugin.video.tagesschau/addon.xml
index e870e6f..8c93b2f 100644
--- a/plugin.video.tagesschau/addon.xml
+++ b/plugin.video.tagesschau/addon.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <addon
     id="plugin.video.tagesschau"
-    version="1.3.1"
+    version="1.3.2"
     name="Tagesschau"
     provider-name="nevermore">
   <requires>
diff --git a/plugin.video.tagesschau/changelog.txt 
b/plugin.video.tagesschau/changelog.txt
index 1825d51..2c6326d 100644
--- a/plugin.video.tagesschau/changelog.txt
+++ b/plugin.video.tagesschau/changelog.txt
@@ -1,3 +1,6 @@
+version 1.3.2
+ * Fixed default settings
+
 version 1.3.1
  * Added language tag
 
diff --git a/plugin.video.tagesschau/resources/settings.xml 
b/plugin.video.tagesschau/resources/settings.xml
index c4a843f..efb8a08 100644
--- a/plugin.video.tagesschau/resources/settings.xml
+++ b/plugin.video.tagesschau/resources/settings.xml
@@ -1,4 +1,4 @@
 <?xml version="1.0" encoding="utf-8" standalone="yes"?>
 <settings>
-  <setting id="quality" type="enum" label="30001" values="Medium 
(512x288)|Large (960x544)" default="L" />
+  <setting id="quality" type="enum" label="30001" values="Medium 
(512x288)|Large (960x544)" default="1" />
 </settings>

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

Summary of changes:
 plugin.video.sagetv/addon.xml                      |    2 +-
 plugin.video.sagetv/changelog.txt                  |   10 ++
 plugin.video.sagetv/contextmenuactions.py          |    7 +
 plugin.video.sagetv/default.py                     |   74 +++++++-----
 plugin.video.sagetv/extras/sagex/services/xbmc.js  |   19 +++-
 .../resources/language/English/strings.xml         |    5 +-
 plugin.video.tagesschau/addon.xml                  |    2 +-
 plugin.video.tagesschau/changelog.txt              |    3 +
 plugin.video.tagesschau/resources/settings.xml     |    2 +-
 plugin.video.twit/addon.xml                        |    2 +-
 plugin.video.twit/changelog.txt                    |    4 +
 plugin.video.twit/default.py                       |  127 +++++++++-----------
 .../resources/language/English/strings.xml         |   56 ++-------
 plugin.video.twit/resources/settings.xml           |    2 +-
 14 files changed, 166 insertions(+), 149 deletions(-)


hooks/post-receive
-- 
Plugins

------------------------------------------------------------------------------
LogMeIn Central: Instant, anywhere, Remote PC access and management.
Stay in control, update software, and manage PCs from one command center
Diagnose problems and improve visibility into emerging IT issues
Automate, monitor and manage. Do more in less time with Central
http://p.sf.net/sfu/logmein12331_d2d
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons

Reply via email to