The branch, eden has been updated
       via  8fafaca32d36af8cf5e7bbae2d1bbf99c8a95c17 (commit)
       via  67f20e980e4ff83d3f50beae5fbeecf9e8bc976b (commit)
       via  81572446ffb06577117a0a1bb2d316b29e846aef (commit)
       via  a8d8d2bcfc86958d27f4b18cb404e266f929bd54 (commit)
      from  90b0658df943ab464c62280852bd40e587d5f818 (commit)

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

commit 8fafaca32d36af8cf5e7bbae2d1bbf99c8a95c17
Author: spiff <[email protected]>
Date:   Mon Oct 1 09:07:46 2012 +0200

    [plugin.video.manoto] updated to version 0.0.5

diff --git a/plugin.video.manoto/addon.xml b/plugin.video.manoto/addon.xml
index a245f6e..13ed162 100755
--- a/plugin.video.manoto/addon.xml
+++ b/plugin.video.manoto/addon.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

 <addon id="plugin.video.manoto"

        name="Manoto TV"

-       version="0.0.4"

+       version="0.0.5"

        provider-name="babak">

   <requires>

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

diff --git a/plugin.video.manoto/default.py b/plugin.video.manoto/default.py
index f77be77..35b41b4 100644
--- a/plugin.video.manoto/default.py
+++ b/plugin.video.manoto/default.py
@@ -69,6 +69,15 @@ def getStreamsFromPlayList(playlist):
 
 def loginAndParse():
        url = 'http://' + domain + '/live'
+
+       if not cj:              
+               resp = opener.open(url)         
+               html_data = resp.read()         
+               parsedJS = 
re.findall(r"setCookie\('(.*?)'\s*,\s*'(.*?)'\s*,\s*(.*?)\);", html_data)       
     
+               
+               if len(parsedJS) > 0:   
+                       ck = cookielib.Cookie(version=0, name=parsedJS[0][0], 
value=parsedJS[0][1], port=None, port_specified=False, domain=domain, 
domain_specified=False, domain_initial_dot=False, path='/', 
path_specified=True, secure=False, expires=None, discard=True, comment=None, 
comment_url=None, rest={'HttpOnly': None}, rfc2109=False)          
+                       cj.set_cookie(ck)
        
        resp = opener.open(url)
        html_data = resp.read()
@@ -77,6 +86,10 @@ def loginAndParse():
        eventVal = soup.find('input',id='__EVENTVALIDATION',type='hidden')
        viewState = soup.find('input',id='__VIEWSTATE',type='hidden')
 
+       if eventVal is None or viewState is None:
+                xbmcplugin.endOfDirectory(handle=int(sys.argv[1]))
+                return False
+
        params = 
'__EVENTARGUMENT=&__EVENTTARGET=ctl00%%24ContentPlaceHolderMainContent%%24lbtnEnter&__EVENTVALIDATION=%s&__VIEWSTATE=%s&ctl00%%24ContentPlaceHolderMainContent%%24txtUsername=%s&ctl00%%24ContentPlaceHolderMainContent%%24txtPassword=%s'
 % (urllib.quote(eventVal['value']), urllib.quote(viewState['value']), 
urllib.quote(__settings__.getSetting('username')), 
urllib.quote(__settings__.getSetting('password')))

        
        resp = opener.open('http://www.manoto1.com/LiveStream.aspx', params)    

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

commit 67f20e980e4ff83d3f50beae5fbeecf9e8bc976b
Author: spiff <[email protected]>
Date:   Mon Oct 1 09:06:27 2012 +0200

    [plugin.video.revision3] updated to version 2.0.10

diff --git a/plugin.video.revision3/addon.xml b/plugin.video.revision3/addon.xml
index 86ac928..fcba953 100644
--- a/plugin.video.revision3/addon.xml
+++ b/plugin.video.revision3/addon.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 <addon id="plugin.video.revision3"
        name="Revision3"
-       version="2.0.9" 
+       version="2.0.10" 
        provider-name="stacked">
   <requires>
     <import addon="xbmc.python" version="2.0"/>
diff --git a/plugin.video.revision3/changelog.txt 
b/plugin.video.revision3/changelog.txt
index 3fb1599..add6453 100644
--- a/plugin.video.revision3/changelog.txt
+++ b/plugin.video.revision3/changelog.txt
@@ -1,3 +1,8 @@
+[B]Version 2.0.10[/B]
+- Added better support for HTTP Errors
+- Fixed reported 'UnicodeDecodeError' errors
+- Fixed reported 'IndexError' errors
+
 [B]Version 2.0.9[/B]
 - Fixed error when loading shows
 
diff --git a/plugin.video.revision3/default.py 
b/plugin.video.revision3/default.py
index 880037f..c0902d3 100644
--- a/plugin.video.revision3/default.py
+++ b/plugin.video.revision3/default.py
@@ -4,8 +4,8 @@ import xbmc, xbmcgui, xbmcplugin, xbmcaddon, urllib, re, 
string, sys, os, time,
 plugin =  'Revision3'
 __author__ = 'stacked <[email protected]>'
 __url__ = 'http://code.google.com/p/plugin/'
-__date__ = '09-23-2012'
-__version__ = '2.0.9'
+__date__ = '09-30-2012'
+__version__ = '2.0.10'
 settings = xbmcaddon.Addon(id='plugin.video.revision3')
 buggalo.SUBMIT_URL = 'http://www.xbmc.byethost17.com/submit.php'
 dbg = False
@@ -25,57 +25,53 @@ common.plugin = plugin + ' ' + __version__
 import SimpleDownloader as downloader
 downloader = downloader.SimpleDownloader()
 
-def ListItem(label, image, url, mode, isFolder, infoLabels = False, fanart = 
False, name = False):
-       listitem = xbmcgui.ListItem(label = label, iconImage = image, 
thumbnailImage = image)
-       if fanart:
-               listitem.setProperty('fanart_image', fanart)
-       if infoLabels:
-               listitem.setInfo( type = "Video", infoLabels = infoLabels )
-       if not isFolder:
-               if settings.getSetting('download') == 'false':
-                       listitem.setProperty('IsPlayable', 'true')
-       if mode:
-               if name:
-                       label = name
-               if mode == '2':
-                       u = sys.argv[0] + "?mode=2&name=" + 
urllib.quote_plus(label) + "&url=" + urllib.quote_plus(url) + "&plot=" + 
urllib.quote_plus(infoLabels['Plot']) + "&studio=" + 
urllib.quote_plus(infoLabels['Studio']) + "&episode=" + 
urllib.quote_plus(str(infoLabels['Episode'])) + "&thumb=" + 
urllib.quote_plus(image) + "&date=" + urllib.quote_plus(infoLabels['Aired'])
-               else:
-                       u = sys.argv[0] + "?mode=" + mode + "&name=" + 
urllib.quote_plus(label) + "&url=" + urllib.quote_plus(url) + "&thumb=" + 
urllib.quote_plus(image)
-       else:
-               u = url
-       ok = xbmcplugin.addDirectoryItem(handle = int(sys.argv[1]), url = u, 
listitem = listitem, isFolder = isFolder)
-       return ok
-       
-def open_url(url):
-       retries = 0
-       while retries < 3:
-               try:
-                       data = common.fetchPage({"link": url})
-                       if len(data['content']) > 0 and data['status'] == 200:
-                               return data
-                       else:
-                               retries += 1
-               except:
-                       retries += 1
-                       time.sleep(3)
-       buggalo.addExtraData('url', url)
-       buggalo.addExtraData('status', data['status'])
-       dialog = xbmcgui.Dialog()
-       ok = dialog.ok(plugin, settings.getLocalizedString( 30023 ) + '\n' + 
settings.getLocalizedString( 30024 ))
-       raise Exception("open_url ERROR")
-       
-def open_url2(url):
-       req = urllib2.Request(url)
-       req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 6.1; WOW64; 
rv:12.0) Gecko/20100101 Firefox/12.0')
-       content = urllib2.urlopen(req)
-       data = content.read()
-       content.close()
-       return data
+def retry(ExceptionToCheck, tries=4, delay=3, backoff=2, logger=None):
+    """Retry calling the decorated function using an exponential backoff.
+
+    http://www.saltycrane.com/blog/2009/11/trying-out-retry-decorator-python/
+    original from: http://wiki.python.org/moin/PythonDecoratorLibrary#Retry
 
+    :param ExceptionToCheck: the exception to check. may be a tuple of
+        excpetions to check
+    :type ExceptionToCheck: Exception or tuple
+    :param tries: number of times to try (not retry) before giving up
+    :type tries: int
+    :param delay: initial delay between retries in seconds
+    :type delay: int
+    :param backoff: backoff multiplier e.g. value of 2 will double the delay
+        each retry
+    :type backoff: int
+    :param logger: logger to use. If None, print
+    :type logger: logging.Logger instance
+    """
+    def deco_retry(f):
+        def f_retry(*args, **kwargs):
+            mtries, mdelay = tries, delay
+            try_one_last_time = True
+            while mtries > 1:
+                try:
+                    return f(*args, **kwargs)
+                    try_one_last_time = False
+                    break
+                except ExceptionToCheck, e:
+                    msg = "%s, Retrying in %d seconds..." % (str(e), mdelay)
+                    if logger:
+                        logger.warning(msg)
+                    else:
+                        print msg
+                    time.sleep(mdelay)
+                    mtries -= 1
+                    mdelay *= backoff
+            if try_one_last_time:
+                return f(*args, **kwargs)
+            return
+        return f_retry  # true decorator
+    return deco_retry
+
+@retry(IndexError, tries=4)
 def build_main_directory(url):
        path = url
-       #html = common.fetchPage({"link": url})['content']
-       html = open_url(url)['content']
+       html = open_url(url)
        shows = common.parseDOM(html, "ul", attrs = { "id": "shows" })[0]
        url_name = re.compile('<h3><a 
href="(.+?)">(.+?)</a></h3>').findall(shows)
        image = re.compile('class="thumbnail"><img src="(.+?)" 
/></a>').findall(shows)
@@ -106,12 +102,12 @@ def build_main_directory(url):
        setViewMode("515")
        xbmcplugin.endOfDirectory(int(sys.argv[1]))
 
+@retry(IndexError, tries=4)
 def build_sub_directory(url, name):
        saveurl = url
        studio = name
        savestudio = name
-       #html = common.fetchPage({"link": url})['content']
-       html = open_url(url)['content']
+       html = open_url(url)
        ret = common.parseDOM(html, "div", attrs = { "id": "main-episodes" })
        pageLoad = common.parseDOM(ret, "a", ret = "onclick")
        if len(ret) == 0:
@@ -126,10 +122,9 @@ def build_sub_directory(url, name):
        if not '[ ' + settings.getLocalizedString( 30013 ) + ' ]' == name:
                try:
                        downloads = 'http://revision3.com/' + 
img.rsplit('/')[6] + '/' + img.rsplit('/')[6] + '_downloads'
-                       if common.fetchPage({"link": downloads})['status'] != 
200:
-                               raise Exception("HTTP ERROR")
-                       # fresult = common.fetchPage({"link": 
downloads})['content']
-                       fresult = open_url(downloads)['content']
+                       fresult = get_page(downloads)
+                       if fresult == 'error':
+                               raise Exception("build_sub_directory ERROR")
                        data = re.compile( '<a href="(.+?)" 
target="_blank">1920x1200</a>' ).findall(fresult)
                        if len(data) > 1:
                                fanart = data[1]
@@ -138,15 +133,10 @@ def build_sub_directory(url, name):
                        settings.setSetting(img.rsplit('/')[6], fanart)
                except:
                        fanart = 'http://statics.revision3.com/_/images/shows/' 
+ img.rsplit('/')[6] + '/show_background.jpg'
-                       try:
-                               test = open_url2(fanart)
-                               settings.setSetting(img.rsplit('/')[6], fanart)
-                       except:
+                       if get_page(fanart) == 'error':
                                settings.setSetting(img.rsplit('/')[6], 
fanart_bg)
-                       # if common.fetchPage({"link": fanart})['status'] == 
200:
-                               # settings.setSetting(img.rsplit('/')[6], 
fanart)
-                       # else:
-                               # settings.setSetting(img.rsplit('/')[6], 
fanart_bg)
+                       else:
+                               settings.setSetting(img.rsplit('/')[6], fanart) 
        
        try:
                child = common.parseDOM(html, "div", attrs = { "id": 
"child-episodes" })
                label = common.parseDOM(html, "a", attrs = { "href": 
"#child-episodes" })[0]
@@ -201,75 +191,12 @@ def build_sub_directory(url, name):
        xbmcplugin.setContent(int( sys.argv[1] ), 'episodes')
        setViewMode("503")
        xbmcplugin.endOfDirectory(int(sys.argv[1]))
-
-def build_search_directory(url):
-       if url == 'search':
-               try:
-                       search = common.getUserInput("Enter search term", 
"").replace(' ','+')
-                       url = 'http://revision3.com/search/page?type=video&q=' 
+ search + '&limit=10&page=1'
-               except:
-                       return
-       #html = common.fetchPage({"link": url})['content']
-       html = open_url(url)['content']
-       current = common.parseDOM(html, "span", attrs = { "class": "active" })
-       pageLoad = common.parseDOM(html, "a", ret = "onclick")
-       try:
-               strs = 'http://revision3.com' + pageLoad[-1:][0].rsplit('\'')[1]
-               params = common.getParameters(strs)
-               saveurl = strs.rstrip('&page=' + params['page']) + '&page=' + 
str( int(current[0]) + 1 )
-               if int(params['page']) > int(current[0]):
-                       next = True
-               else:
-                       next = False
-       except:
-               next = False
-       episodes = common.parseDOM(html, "li", attrs = { "class": "video" })
-       if len(episodes) == 0:
-               dialog = xbmcgui.Dialog()
-               ok = dialog.ok( plugin , settings.getLocalizedString( 30009 ) + 
'\n' + settings.getLocalizedString( 30010 ) )
-               return
-       for data in episodes:
-               thumb = common.parseDOM(data, "img", ret = "src")[0]
-               url = common.parseDOM(data, "a", attrs = { "class": "thumbnail" 
}, ret = "href" )[0]
-               url = 
clean(url.replace('http://www.videosurf.com/webui/inc/go.php?redirect=','')).replace('&client_id=revision3','')
-               title = clean(common.parseDOM(data, "a", attrs = { "class": 
"title" })[0])
-               plot = clean(common.stripTags(common.parseDOM(data, "div", 
attrs = { "class": "description" })[0]))
-               try:
-                       studio = title.rsplit(' - ')[1]
-               except:
-                       studio = plugin
-               infoLabels = { "Title": title, "Studio": studio, "Plot": plot, 
"Episode": 0, "Aired": "0000-00-00" }
-               ListItem(title, thumb, url, '2', False, infoLabels, fanart_bg)
-       if next == True:
-               infoLabels = { "Title": settings.getLocalizedString( 30016 ), 
"Plot": settings.getLocalizedString( 30016 ) }
-               ListItem(settings.getLocalizedString( 30016 ) + ' (' + str( 
int(current[0]) + 1 ) + ')', next_thumb, saveurl, '4', True, infoLabels, 
fanart_bg, studio)
-       xbmcplugin.addSortMethod( handle=int( sys.argv[ 1 ] ), 
sortMethod=xbmcplugin.SORT_METHOD_UNSORTED )
-       xbmcplugin.setContent(int( sys.argv[1] ), 'episodes')
-       setViewMode("503")
-       xbmcplugin.endOfDirectory(int(sys.argv[1]))
-       
-def setViewMode(id):
-       if xbmc.getSkinDir() == "skin.confluence" and 
settings.getSetting('view') == 'true':
-               xbmc.executebuiltin("Container.SetViewMode(" + id + ")")
-
-def clean(name):
-       remove = [('&amp;','&'), ('&quot;','"'), ('&#039;','\''), ('\r\n',' '), 
('\n',' '), ('&apos;','\''), ('&#150;','-'), ('%3A',':'), ('%2F','/'), 
('<link>',''), ('</link>','')]
-       for trash, crap in remove:
-               name = name.replace(trash,crap)
-       return name
        
-def clean_file(name):
-    remove=[('\"',''),('\\',''),('/',''),(':',' - 
'),('|',''),('>',''),('<',''),('?',''),('*','')]
-    for old, new in remove:
-        name=name.replace(old,new)
-    return name
-
+@retry(IndexError, tries=4)
 def get_video(url, name, plot, studio, episode, thumb, date):
-       #result = common.fetchPage({"link": url})['content']
-       result = open_url(url)['content']
+       result = open_url(url)
        video_id = 
re.compile('player\.loadRevision3Item\(\'video_id\',(.+?)\);').findall(result)[0].replace('
 ','')
-       #api = common.fetchPage({"link": 
'http://revision3.com/api/flash?video_id=' + video_id})['content']
-       api = open_url('http://revision3.com/api/flash?video_id=' + 
video_id)['content']
+       api = open_url('http://revision3.com/api/flash?video_id=' + video_id)
        videos_api = common.parseDOM(api, "media", ret = "type")
        videos_api[:] = (value for value in videos_api if value != 'thumbnail')
        durl = {}
@@ -329,7 +256,122 @@ def get_video(url, name, plot, studio, episode, thumb, 
date):
                else:
                        listitem = xbmcgui.ListItem(label = name , iconImage = 
'DefaultVideo.png', thumbnailImage = thumb, path = purl)
                        listitem.setInfo( type = "Video", infoLabels={ "Title": 
name, "Studio": studio, "Plot": plot, "Episode": int(episode), "Aired": date  } 
)
-                       xbmcplugin.setResolvedUrl( handle = int( sys.argv[1] ), 
succeeded = True, listitem = listitem ) 
+                       xbmcplugin.setResolvedUrl( handle = int( sys.argv[1] ), 
succeeded = True, listitem = listitem )
+
+@retry(IndexError, tries=4)
+def build_search_directory(url):
+       if url == 'search':
+               try:
+                       search = common.getUserInput("Enter search term", 
"").replace(' ','+')
+                       url = 'http://revision3.com/search/page?type=video&q=' 
+ search + '&limit=10&page=1'
+               except:
+                       return
+       html = open_url(url)
+       current = common.parseDOM(html, "span", attrs = { "class": "active" })
+       pageLoad = common.parseDOM(html, "a", ret = "onclick")
+       try:
+               strs = 'http://revision3.com' + pageLoad[-1:][0].rsplit('\'')[1]
+               params = common.getParameters(strs)
+               saveurl = strs.rstrip('&page=' + params['page']) + '&page=' + 
str( int(current[0]) + 1 )
+               if int(params['page']) > int(current[0]):
+                       next = True
+               else:
+                       next = False
+       except:
+               next = False
+       episodes = common.parseDOM(html, "li", attrs = { "class": "video" })
+       if len(episodes) == 0:
+               dialog = xbmcgui.Dialog()
+               ok = dialog.ok( plugin , settings.getLocalizedString( 30009 ) + 
'\n' + settings.getLocalizedString( 30010 ) )
+               return
+       for data in episodes:
+               thumb = common.parseDOM(data, "img", ret = "src")[0]
+               url = common.parseDOM(data, "a", attrs = { "class": "thumbnail" 
}, ret = "href" )[0]
+               url = 
clean(url.replace('http://www.videosurf.com/webui/inc/go.php?redirect=','')).replace('&client_id=revision3','')
+               title = clean(common.parseDOM(data, "a", attrs = { "class": 
"title" })[0])
+               plot = clean(common.stripTags(common.parseDOM(data, "div", 
attrs = { "class": "description" })[0]))
+               try:
+                       studio = title.rsplit(' - ')[1]
+               except:
+                       studio = plugin
+               infoLabels = { "Title": title, "Studio": studio, "Plot": plot, 
"Episode": 0, "Aired": "0000-00-00" }
+               ListItem(title, thumb, url, '2', False, infoLabels, fanart_bg)
+       if next == True:
+               infoLabels = { "Title": settings.getLocalizedString( 30016 ), 
"Plot": settings.getLocalizedString( 30016 ) }
+               ListItem(settings.getLocalizedString( 30016 ) + ' (' + str( 
int(current[0]) + 1 ) + ')', next_thumb, saveurl, '4', True, infoLabels, 
fanart_bg, studio)
+       xbmcplugin.addSortMethod( handle=int( sys.argv[ 1 ] ), 
sortMethod=xbmcplugin.SORT_METHOD_UNSORTED )
+       xbmcplugin.setContent(int( sys.argv[1] ), 'episodes')
+       setViewMode("503")
+       xbmcplugin.endOfDirectory(int(sys.argv[1]))
+       
+def ListItem(label, image, url, mode, isFolder, infoLabels = False, fanart = 
False, name = False):
+       listitem = xbmcgui.ListItem(label = label, iconImage = image, 
thumbnailImage = image)
+       if fanart:
+               listitem.setProperty('fanart_image', fanart)
+       if infoLabels:
+               listitem.setInfo( type = "Video", infoLabels = infoLabels )
+       if not isFolder:
+               if settings.getSetting('download') == 'false':
+                       listitem.setProperty('IsPlayable', 'true')
+       if mode:
+               if name:
+                       label = name
+               if mode == '2':
+                       u = sys.argv[0] + "?mode=2&name=" + 
urllib.quote_plus(label) + "&url=" + urllib.quote_plus(url) + "&plot=" + 
urllib.quote_plus(infoLabels['Plot'].encode('ascii', 'ignore')) + "&studio=" + 
urllib.quote_plus(infoLabels['Studio']) + "&episode=" + 
urllib.quote_plus(str(infoLabels['Episode'])) + "&thumb=" + 
urllib.quote_plus(image) + "&date=" + urllib.quote_plus(infoLabels['Aired'])
+               else:
+                       u = sys.argv[0] + "?mode=" + mode + "&name=" + 
urllib.quote_plus(label) + "&url=" + urllib.quote_plus(url) + "&thumb=" + 
urllib.quote_plus(image)
+       else:
+               u = url
+       ok = xbmcplugin.addDirectoryItem(handle = int(sys.argv[1]), url = u, 
listitem = listitem, isFolder = isFolder)
+       return ok
+       
+def open_url(url):
+       retries = 0
+       while retries < 4:
+               try:
+                       time.sleep(5*retries)
+                       data = get_page(url)
+                       if len(data) > 0 and data != 'error':
+                               return data
+                       else:
+                               retries += 1
+               except:
+                       retries += 1
+       buggalo.addExtraData('url', url)
+       dialog = xbmcgui.Dialog()
+       ok = dialog.ok(plugin, settings.getLocalizedString( 30023 ) + '\n' + 
settings.getLocalizedString( 30024 ))
+       raise Exception("open_url ERROR")
+       
+def get_page(url):
+       try:
+               req = urllib2.Request(url)
+               req.add_header('User-Agent', 'Mozilla/5.0 (Windows NT 6.1; 
WOW64; rv:15.0) Gecko/20100101 Firefox/15.0.1')
+               content = urllib2.urlopen(req)
+               data = content.read()
+               content.close()
+               try:
+                       return data.decode("utf-8")
+               except:
+                       return data
+       except Exception, e:
+               buggalo.addExtraData('error', str(e))
+               return 'error'
+       
+def setViewMode(id):
+       if xbmc.getSkinDir() == "skin.confluence" and 
settings.getSetting('view') == 'true':
+               xbmc.executebuiltin("Container.SetViewMode(" + id + ")")
+
+def clean(name):
+       remove = [('&amp;','&'), ('&quot;','"'), ('&#039;','\''), ('\r\n',' '), 
('\n',' '), ('&apos;','\''), ('&#150;','-'), ('%3A',':'), ('%2F','/'), 
('<link>',''), ('</link>','')]
+       for trash, crap in remove:
+               name = name.replace(trash,crap)
+       return name
+       
+def clean_file(name):
+    remove=[('\"',''),('\\',''),('/',''),(':',' - 
'),('|',''),('>',''),('<',''),('?',''),('*','')]
+    for old, new in remove:
+        name=name.replace(old,new)
+    return name
 
 params = common.getParameters(sys.argv[2])
 url = None

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

commit 81572446ffb06577117a0a1bb2d316b29e846aef
Author: spiff <[email protected]>
Date:   Mon Oct 1 09:02:11 2012 +0200

    [plugin.video.cnet.podcasts] updated to version 1.0.6

diff --git a/plugin.video.cnet.podcasts/addon.xml 
b/plugin.video.cnet.podcasts/addon.xml
index 2e10ed4..0025e15 100644
--- a/plugin.video.cnet.podcasts/addon.xml
+++ b/plugin.video.cnet.podcasts/addon.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

 <addon id="plugin.video.cnet.podcasts"

        name="cnet Podcasts"

-       version="1.0.5"

+       version="1.0.6"

        provider-name="divingmule">

   <requires>

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

diff --git a/plugin.video.cnet.podcasts/changelog.txt 
b/plugin.video.cnet.podcasts/changelog.txt
index 17080b7..fad15a9 100644
--- a/plugin.video.cnet.podcasts/changelog.txt
+++ b/plugin.video.cnet.podcasts/changelog.txt
@@ -1,3 +1,6 @@
+version 1.0.6

+fix bug in scraper

+

 version 1.0.5

 updated show list, thanks pkscuot

 

@@ -22,4 +25,12 @@ added video descriptions
 added categories for SD and HD

 

 version - 0.0.1

-initial
\ No newline at end of file
+initial

+

+

+

+

+

+

+

+

diff --git a/plugin.video.cnet.podcasts/default.py 
b/plugin.video.cnet.podcasts/default.py
index b44406f..093686b 100644
--- a/plugin.video.cnet.podcasts/default.py
+++ b/plugin.video.cnet.podcasts/default.py
@@ -72,10 +72,12 @@ def INDEX(url,hd_url,audio_url,iconimage):
                 continue

             try:

                 desc = i('itunes:summary')[0].string

+                if desc == None: raise

             except:

                 desc = ''

             try:

                 date = i('pubdate')[0].string

+                if date == None: raise

             except:

                 date = ''

             try:


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

commit a8d8d2bcfc86958d27f4b18cb404e266f929bd54
Author: spiff <[email protected]>
Date:   Mon Oct 1 09:01:32 2012 +0200

    [plugin.video.mlbmc] updated to version 1.1.0

diff --git a/plugin.video.mlbmc/addon.xml b/plugin.video.mlbmc/addon.xml
index 4c67772..78d9b43 100644
--- a/plugin.video.mlbmc/addon.xml
+++ b/plugin.video.mlbmc/addon.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

 <addon id="plugin.video.mlbmc"

        name="MLBMC"

-       version="1.0.9"

+       version="1.1.0"

        provider-name="divingmule">

   <requires>

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

diff --git a/plugin.video.mlbmc/changelog.txt b/plugin.video.mlbmc/changelog.txt
index 9c0a1d1..4425e61 100644
--- a/plugin.video.mlbmc/changelog.txt
+++ b/plugin.video.mlbmc/changelog.txt
@@ -1,3 +1,6 @@
+Version 1.1.0

+fix bug in mlb.tv listing

+

 Version 1.0.9

 added option to show scores in game lists

 added a kind-of calender function for getting game dates, thanks to J_K_M_A_N 
for the inspiration!

diff --git a/plugin.video.mlbmc/default.py b/plugin.video.mlbmc/default.py
index beeeb7b..0356365 100644
--- a/plugin.video.mlbmc/default.py
+++ b/plugin.video.mlbmc/default.py
@@ -548,8 +548,8 @@ def getGames(url):
         except:
             
xbmc.executebuiltin("XBMC.Notification("+__language__(30015)+","+__language__(30030)+",10000,"+icon+")")
             return
-        mode = '7'
         for game in games:
+            mode = '7'
             home_team = game['home_team_city']
             away_team = game['away_team_city']
             status = game['status']['status']

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

Summary of changes:
 plugin.video.cnet.podcasts/addon.xml     |    2 +-
 plugin.video.cnet.podcasts/changelog.txt |   13 ++-
 plugin.video.cnet.podcasts/default.py    |    2 +
 plugin.video.manoto/.gitattributes       |    7 -
 plugin.video.manoto/addon.xml            |    2 +-
 plugin.video.manoto/default.py           |   13 ++
 plugin.video.mlbmc/addon.xml             |    2 +-
 plugin.video.mlbmc/changelog.txt         |    3 +
 plugin.video.mlbmc/default.py            |    2 +-
 plugin.video.revision3/addon.xml         |    2 +-
 plugin.video.revision3/changelog.txt     |    5 +
 plugin.video.revision3/default.py        |  304 +++++++++++++++++-------------
 12 files changed, 213 insertions(+), 144 deletions(-)
 delete mode 100644 plugin.video.manoto/.gitattributes


hooks/post-receive
-- 
Plugins

------------------------------------------------------------------------------
Got visibility?
Most devs has no idea what their production app looks like.
Find out how fast your code is with AppDynamics Lite.
http://ad.doubleclick.net/clk;262219671;13503038;y?
http://info.appdynamics.com/FreeJavaPerformanceDownload.html
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons

Reply via email to