The branch, eden has been updated
       via  43f105efb88540a9a9b205298d906406bdfbae75 (commit)
       via  7fca124ab45e8717eb140a2c59a38e9b3b8c7925 (commit)
      from  2ba8a51350b1345659d060aa05416bc43a8b1fe3 (commit)

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

commit 43f105efb88540a9a9b205298d906406bdfbae75
Author: spiff <[email protected]>
Date:   Tue Mar 20 09:45:47 2012 +0100

    [plugin.video.revision3] updated to version 2.0.3

diff --git a/plugin.video.revision3/addon.xml b/plugin.video.revision3/addon.xml
index 8d602aa..8e9eb48 100644
--- a/plugin.video.revision3/addon.xml
+++ b/plugin.video.revision3/addon.xml
@@ -1,14 +1,12 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 <addon id="plugin.video.revision3"
        name="Revision3"
-       version="2.0.2" 
+       version="2.0.3" 
        provider-name="stacked">
   <requires>
     <import addon="xbmc.python" version="2.0"/>
-       <import addon="script.module.parsedom" version="0.9.1"/>
-       <!-- Waiting for dependency to become final
-       <import addon="script.module.simple.downloader" version="0.9.1"/>
-       -->
+       <import addon="script.module.parsedom" version="0.9.2"/>
+       <import addon="script.module.simple.downloader" version="0.9.2"/>
   </requires>
   <extension point="xbmc.python.pluginsource"
             library="default.py">
diff --git a/plugin.video.revision3/changelog.txt 
b/plugin.video.revision3/changelog.txt
index e0cab85..6a1b0e6 100644
--- a/plugin.video.revision3/changelog.txt
+++ b/plugin.video.revision3/changelog.txt
@@ -1,3 +1,8 @@
+[B]Version 2.0.3[/B]
+
+- Fixed error when trying to play new shows
+- Restored downloading feature
+
 [B]Version 2.0.2[/B]
 
 - Fixed error on start up
diff --git a/plugin.video.revision3/default.py 
b/plugin.video.revision3/default.py
index 65ac2d1..7c890fd 100644
--- a/plugin.video.revision3/default.py
+++ b/plugin.video.revision3/default.py
@@ -4,8 +4,8 @@ import xbmc, xbmcgui, xbmcplugin, urllib2, urllib, re, string, 
sys, os, tracebac
 plugin =  'Revision3'
 __author__ = 'stacked <[email protected]>'
 __url__ = 'http://code.google.com/p/plugin/'
-__date__ = '02-01-2012'
-__version__ = '2.0.2'
+__date__ = '03-19-2012'
+__version__ = '2.0.3'
 settings = xbmcaddon.Addon(id='plugin.video.revision3')
 dbg = False
 dbglevel = 3
@@ -20,8 +20,8 @@ import CommonFunctions
 common = CommonFunctions
 common.plugin = plugin + ' ' + __version__
 
-#import SimpleDownloader as downloader
-#downloader = downloader.SimpleDownloader()
+import SimpleDownloader as downloader
+downloader = downloader.SimpleDownloader()
 
 def open_url(url):
        req = urllib2.Request(url)
@@ -196,7 +196,7 @@ def build_search_directory(url):
        xbmcplugin.endOfDirectory(int(sys.argv[1]))
 
 def clean(name):
-       remove = [('&amp;','&'), ('&quot;','"'), ('&#039;','\''), ('\r\n',''), 
('&apos;','\''), ('&#150;','-'), ('%3A',':'), ('%2F','/')]
+       remove = [('&amp;','&'), ('&quot;','"'), ('&#039;','\''), ('\r\n',''), 
('&apos;','\''), ('&#150;','-'), ('%3A',':'), ('%2F','/'), ('<link>',''), 
('</link>','')]
        for trash, crap in remove:
                name = name.replace(trash,crap)
        return name
@@ -210,8 +210,15 @@ def clean_file(name):
 def get_video(url, name, plot, studio, episode, thumb):
        #result = common.fetchPage({"link": url})['content']
        result = open_url(url)
-       list = ['MP4','Quicktime','Xvid','WMV']
+       video_id = common.parseDOM(result, "meta", attrs = { "property": 
"og:video" }, ret="content")[0].replace('http://revision3.com/player-v','')
+       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 = {}
+       for type_api in videos_api:
+               content_api = clean(common.parseDOM(api, "media", attrs = { 
"type": type_api })[0])
+               durl[type_api] = content_api
+       list = ['MP4','Quicktime','Xvid','WMV']
        for type in list:
                content = common.parseDOM(result, "div", attrs = { "id": 
"action-panels-download-" + type })
                videos = common.parseDOM(content, "a", attrs = { "class": 
"sizename" })
@@ -226,7 +233,22 @@ def get_video(url, name, plot, studio, episode, thumb):
                dictList.append(key)
        quality = settings.getSetting('type')
        try:
-               purl = durl[quality]
+               try:
+                       purl = durl[quality]
+               except:
+                       if quality == 'MP4:HD':
+                               if 'Quicktime:HD' in durl:
+                                       quality_api = 'Quicktime:HD'
+                               else:
+                                       quality_api = 'hd'
+                       if quality == 'MP4:Large':
+                               if 'Quicktime:Large' in durl:
+                                       quality_api = 'Quicktime:Large'
+                               else:
+                                       quality_api = 'high'
+                       if quality == 'MP4:Phone':
+                               quality_api = 'low'
+                       purl = durl[quality_api]
                ret = None
        except:
                dialog = xbmcgui.Dialog()
diff --git a/plugin.video.revision3/resources/settings.xml 
b/plugin.video.revision3/resources/settings.xml
index 151dc87..3a50672 100644
--- a/plugin.video.revision3/resources/settings.xml
+++ b/plugin.video.revision3/resources/settings.xml
@@ -1,8 +1,6 @@
 <settings>
    <setting id="type" type="select" lvalues="30001|30002|30003" label="30000" 
default="MP4:HD"/>
-   <!-- Waiting for simple downloader to become stable
    <setting id="download" type="bool" label="30004" default="false"/>
    <setting id="downloadPath" type="folder" enable="eq(-1,true)" label="30005" 
default="" /> 
    <setting id="folder" type="bool" enable="eq(-2,true)" label="30008" 
default="true"/>
-   -->
 </settings>

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

commit 7fca124ab45e8717eb140a2c59a38e9b3b8c7925
Author: spiff <[email protected]>
Date:   Tue Mar 20 09:45:12 2012 +0100

    [plugin.video.svtplay] updated to version 2.0.3

diff --git a/.gitignore b/.gitignore
index 8eb9e91..0718a77 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,6 +4,7 @@ plugin.video.drnu/.git
 plugin.video.drnu/.idea
 plugin.video.nederland24/.git
 plugin.video.svtplay/.git
+plugin.video.svtplay/.gitignore
 plugin.video.dr.dk.podcast/.git
 plugin.video.dr.dk.podcast/.idea
 plugin.program.rtorrent/.git
diff --git a/plugin.video.svtplay/addon.xml b/plugin.video.svtplay/addon.xml
index 38fcc00..2a2bf29 100644
--- a/plugin.video.svtplay/addon.xml
+++ b/plugin.video.svtplay/addon.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 <addon id="plugin.video.svtplay"
        name="SVT Play"
-       version="2.0.2"
+       version="2.0.3"
        provider-name="nilzen">
   <requires>
     <import addon="xbmc.python" version="2.0"/>
diff --git a/plugin.video.svtplay/changelog.txt 
b/plugin.video.svtplay/changelog.txt
index 0c4689a..703f679 100644
--- a/plugin.video.svtplay/changelog.txt
+++ b/plugin.video.svtplay/changelog.txt
@@ -1,6 +1,10 @@
+Version 2.0.3
+-------------
+- Better exception handling and removed unplausible todo (by arvidericsson)
+
 Version 2.0.2
 -------------
-- Updated SWF-player URL
+- Updated SWF-player URL (by arvidericsson)
 
 Version 2.0.1
 -------------
diff --git a/plugin.video.svtplay/default.py b/plugin.video.svtplay/default.py
index ac76e51..c53d8c1 100644
--- a/plugin.video.svtplay/default.py
+++ b/plugin.video.svtplay/default.py
@@ -9,6 +9,7 @@ import xbmcplugin
 import xbmcaddon
 
 from xml.dom.minidom import parseString
+from datetime import datetime
 
 __settings__ = xbmcaddon.Addon(id='plugin.video.svtplay')
 __language__ = __settings__.getLocalizedString
@@ -36,6 +37,7 @@ BASE_URL_TITLE = "http://xml.svtplay.se/v1/title/list/";
 BASE_URL_VIDEO = "http://xml.svtplay.se/v1/video/list/";
 BASE_URL_SEARCH_TITLE = "http://xml.svtplay.se/v1/title/search/";
 BASE_URL_SEARCH_VIDEO = "http://xml.svtplay.se/v1/video/search/";
+SWF_PLAYER_URL = "http://svtplay.se/flash/svtplayer-2012.1.swf";
 
 END_URL_SEARCH_VIDEO = "expression=full"
 END_URL_SEARCH_CLIP = "expression=sample"
@@ -138,11 +140,8 @@ def video_list(ids="", url="", offset=1, list_size=0):
                        thumb = get_media_thumbnail(item)
                        title = get_node_value(media, "title", NS_MEDIA)
                        description = get_node_value(item, "description")
+                       date = parse_svt_date( get_node_value(item, "pubDate"), 
"%d.%m.%Y" )
 
-                       # TODO: parse date/time
-                       # TODO: add label "date" (string (%d.%m.%Y / 
01.01.2009) - file date)
-                       # TODO: add label "premiered" (string (2005-03-04))
-                       
                        if title is None:
                                title = "";
 
@@ -150,7 +149,8 @@ def video_list(ids="", url="", offset=1, list_size=0):
                                description = "";
                        
                        infoLabels = { "Title": title.encode('utf_8'),
-                                      "Plot": description.encode('utf_8') }
+                                      "Plot": description.encode('utf_8'),
+                                      "date": date }
 
                        params = { "url": media.getAttribute("url") }
                        
@@ -309,7 +309,7 @@ def add_directory_item(name, params={}, thumbnail=None, 
isFolder=True,
                url = params["url"]
 
                if url.find('rtmp') == 0:
-                       url += " 
swfUrl=http://svtplay.se/flash/svtplayer-2012.1.swf swfVfy=1"
+                       url += " swfUrl=%s swfVfy=1" % SWF_PLAYER_URL
                
                if not infoLabels:
                        infoLabels = { "Title": name }
@@ -351,6 +351,22 @@ def parameters_string_to_dict(param_string):
        
        return params
 
+def parse_svt_date(date_string, date_format):
+       """
+       @param date_string    A string on the format "Sun, 04 Mar 2012 18:35:31 
GMT"
+       @return:              A string on the format "2012-03-04"
+       """
+       
+       try:
+               day_month_year = date_string[5:16]
+               datetime_object = datetime.strptime(day_month_year, "%d %b %Y")
+               return datetime_object.strftime(date_format)
+       
+       except Exception as ex:
+               xbmc.log( "Exception in parse_svt_date(): " + str(ex) )
+               return ""
+
+
 def search(mode,url):
        searchString = unikeyboard(__settings__.getSetting( "latestSearch" ), 
"" )
        if searchString == "":
@@ -389,10 +405,9 @@ def debug(url, name):
                                os.system("%s" % (command))
                        elif (sys.platform.startswith('darwin')):
                                os.system("\"%s\"" % (command))
-                       else:
-                               pass;
-               except:
-                       pass
+
+               except Exception as ex:
+                       xbmc.log( str(ex) )
 
        return None
 
@@ -412,8 +427,15 @@ def load_xml(url):
                response.close()
        
                return parseString(xml)
-       except:
-               xbmc.log("unable to load url: " + url)
+
+       except (urllib2.HTTPError, urllib2.URLError) as ex:
+               xbmcgui.Dialog().ok( __language__(30301), __language__(30600))
+               raise ex
+               
+       except Exception as ex:
+               xbmc.log( "An unhandled exception was triggered in the SVT Play 
adddon." )
+               raise ex
+               
 
 params = parameters_string_to_dict(sys.argv[2])
 
diff --git a/plugin.video.svtplay/resources/language/English/strings.xml 
b/plugin.video.svtplay/resources/language/English/strings.xml
index 2c36cd3..0c72136 100644
--- a/plugin.video.svtplay/resources/language/English/strings.xml
+++ b/plugin.video.svtplay/resources/language/English/strings.xml
@@ -19,4 +19,6 @@
        <string id="30501">Context menu label</string>
        <string id="30502">URL video quality</string>
        <string id="30503">Command</string>
+       
+       <string id="30600">Address or network problem. It might get better by 
itself, if you wait for a bit.</string>
 </strings>
diff --git a/plugin.video.svtplay/resources/language/Swedish/strings.xml 
b/plugin.video.svtplay/resources/language/Swedish/strings.xml
index 1a0f165..9ccdb89 100644
--- a/plugin.video.svtplay/resources/language/Swedish/strings.xml
+++ b/plugin.video.svtplay/resources/language/Swedish/strings.xml
@@ -19,4 +19,6 @@
        <string id="30501">Snabbmenytext</string>
        <string id="30502">URL videokvalitet</string>
        <string id="30503">Kommando</string>
+       
+       <string id="30600">Adress eller nätverksproblem. Det kan eventuellt 
gå bättre om du provar igen.</string>
 </strings>

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

Summary of changes:
 .gitignore                                         |    1 +
 plugin.video.revision3/addon.xml                   |    8 +--
 plugin.video.revision3/changelog.txt               |    5 ++
 plugin.video.revision3/default.py                  |   36 ++++++++++++---
 plugin.video.revision3/resources/settings.xml      |    2 -
 plugin.video.svtplay/addon.xml                     |    2 +-
 plugin.video.svtplay/changelog.txt                 |    6 ++-
 plugin.video.svtplay/default.py                    |   46 ++++++++++++++-----
 .../resources/language/English/strings.xml         |    2 +
 .../resources/language/Swedish/strings.xml         |    2 +
 10 files changed, 82 insertions(+), 28 deletions(-)


hooks/post-receive
-- 
Plugins

------------------------------------------------------------------------------
This SF email is sponsosred by:
Try Windows Azure free for 90 days Click Here 
http://p.sf.net/sfu/sfd2d-msazure
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons

Reply via email to