The branch, dharma has been updated
       via  01ddecbc5f0e16f59ff8f34a90a77453a284dd34 (commit)
      from  f1f9a939fff8a5769f2a2ec4877432a7c2ecb702 (commit)

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

commit 01ddecbc5f0e16f59ff8f34a90a77453a284dd34
Author: spiff <[email protected]>
Date:   Tue Jun 7 09:44:36 2011 +0200

    [plugin.program.jdownloader] updated to version 1.0.4

diff --git a/plugin.program.jdownloader/addon.xml 
b/plugin.program.jdownloader/addon.xml
index 02509a4..96784e0 100644
--- a/plugin.program.jdownloader/addon.xml
+++ b/plugin.program.jdownloader/addon.xml
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 <addon id="plugin.program.jdownloader"
        name="JDownloader"
-       version="1.0.3"
+       version="1.0.4"
        provider-name="pgoeri">
   <requires>
     <import addon="xbmc.python" version="1.0"/>
diff --git a/plugin.program.jdownloader/changelog.txt 
b/plugin.program.jdownloader/changelog.txt
index 6c570da..6ed6631 100644
--- a/plugin.program.jdownloader/changelog.txt
+++ b/plugin.program.jdownloader/changelog.txt
@@ -1,3 +1,7 @@
+[B]Version 1.0.4[/B]
+    * Added new features: use hostname, use fall back connection
+    * Fixed quoting problem
+
 [B]Version 1.0.3[/B]
     * Fixed problem with adding unquoted urls
 
diff --git a/plugin.program.jdownloader/default.py 
b/plugin.program.jdownloader/default.py
index e62b77b..680946a 100644
--- a/plugin.program.jdownloader/default.py
+++ b/plugin.program.jdownloader/default.py
@@ -6,10 +6,10 @@ __url__                               = 
"http://pgoeri-xbmc-plugins.googlecode.com";
 __svn_url__                    = 
"http://pgoeri-xbmc-plugins.googlecode.com/svn/trunk/plugin.program.jdownloader/";

 __credits__                    = "Team XBMC passion, http://passion-xbmc.org & 
pgoeri"

 __platform__           = "xbmc media center, [LINUX, OS X, WIN32]"

-__date__                       = "28-03-2011"

-__version__                    = "1.0.3"

+__date__                       = "05-06-2011"

+__version__                    = "1.0.4"

 __svn_revision__       = "$Revision:  $".replace( "Revision", "" ).strip( "$: 
" )

-__XBMC_Revision__      = "ce6dff4f3480834cc1134072e45e5deb0c8557c4" # Trunk 
(15/01/11)

+__XBMC_Revision__      = "4fbc70fda4f3706e4e90ff353acde49176c6a07c" # Trunk 
(01/06/11)

 __useragent__          = "Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; 
rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1"

 

 from traceback import print_exc

@@ -22,7 +22,9 @@ import urllib
 import time

 

 __addon__ = xbmcaddon.Addon(__addonID__)

-__language__ = __addon__.getLocalizedString

+__language__   = __addon__.getLocalizedString

+__dbg__                        = __addon__.getSetting( "debug" ) == "true"

+__logprefix__  = "p.p.jd-"+__version__+": "

 

 BASE_RESOURCE_PATH = os.path.join( __addon__.getAddonInfo('path'), "resources" 
)

 sys.path.append( os.path.join( BASE_RESOURCE_PATH, "lib" ) )

@@ -113,8 +115,8 @@ try:
        if "action" in params: mode=3

 except: pass

 

-print "Mode: "+str(mode)

-print "URL: "+str(url)

+if __dbg__:

+       print __logprefix__ + "MODE: " + str(mode) + " URL: " + str(url)

 

 #check connection

 try:

diff --git a/plugin.program.jdownloader/resources/language/English/strings.xml 
b/plugin.program.jdownloader/resources/language/English/strings.xml
index 8746d7f..87b213d 100644
--- a/plugin.program.jdownloader/resources/language/English/strings.xml
+++ b/plugin.program.jdownloader/resources/language/English/strings.xml
@@ -2,6 +2,7 @@
 <strings>

   <!-- strings 32000 thru 32999 reserved for scripts -->

   <!--SETTINGS STRINGS -->

+  <string id="30000">Connection</string>

   <string id="30001">IP Adress</string>

   <string id="30002">Port</string>

   <string id="30003">Add new links direct to downloads</string>

@@ -9,11 +10,18 @@
   <string id="30005">Yes</string>

   <string id="30006">Start downloading after adding new links</string>

   <string id="30007">Interface</string>

+  <string id="30008">Use hostname</string>

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

+  <string id="30010">Fall back connection</string>

+  <string id="30011">Enable fall back connection</string>

+  

   <string id="30020">Files</string>

   <string id="30021">Default Path</string>

   <string id="30022">Default TXT File</string>

   <string id="30023">Default DLC File</string>

   

+  <string id="30030">Advanced</string>

+  <string id="30031">Debug</string>

   

   <!--GENERAL STRINGS -->

   <string id="30050">All Packages</string>

diff --git a/plugin.program.jdownloader/resources/language/German/strings.xml 
b/plugin.program.jdownloader/resources/language/German/strings.xml
index 91147e0..1db6406 100644
--- a/plugin.program.jdownloader/resources/language/German/strings.xml
+++ b/plugin.program.jdownloader/resources/language/German/strings.xml
@@ -2,6 +2,7 @@
 <strings>

   <!-- strings 32000 thru 32999 reserved for scripts -->

   <!--SETTINGS STRINGS -->

+  <string id="30000">Verbindung</string>

   <string id="30001">IP Adresse</string>

   <string id="30002">Port</string>

   <string id="30003">Neue Links sofort hinzufügen</string>

@@ -9,11 +10,19 @@
   <string id="30005">Ja</string>

   <string id="30006">Download danach starten</string>

   <string id="30007">Schnittstelle</string>

+  <string id="30008">Hostnamen benutzen</string>

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

+  <string id="30010">Ausweichverbindung</string>

+  <string id="30011">Ausweichverbindung aktivieren</string>

+  

   <string id="30020">Dateien</string>

   <string id="30021">Default Pfad</string>

   <string id="30022">Default TXT File</string>

   <string id="30023">Default DLC File</string>

   

+  <string id="30030">Erweitert</string>

+  <string id="30031">Debug</string>

+  

   <!--GENERAL STRINGS -->

   <string id="30050">Alle Pakete</string>

   <string id="30051">Status</string>

diff --git a/plugin.program.jdownloader/resources/lib/jdownloader.py 
b/plugin.program.jdownloader/resources/lib/jdownloader.py
index 5a9f0fe..fa621c4 100644
--- a/plugin.program.jdownloader/resources/lib/jdownloader.py
+++ b/plugin.program.jdownloader/resources/lib/jdownloader.py
@@ -7,6 +7,9 @@ from traceback import print_exc
 import xbmc,xbmcaddon

 import sys

 

+__dbg__                                = sys.modules[ "__main__" ].__dbg__

+__logprefix__          = sys.modules[ "__main__" ].__logprefix__

+

 #defines

 GET_SPEED                      = "downloadspeed"

 GET_SPEEDLIMIT         = "speedlimit"

@@ -14,38 +17,38 @@ GET_STATUS                  = "status"
 GET_CURRENTFILECNT     = "currentfilecount"

 

 STATE_RUNNING          = "RUNNING"

-STATE_NOTRUNNING               = "NOT_RUNNING"

+STATE_NOTRUNNING       = "NOT_RUNNING"

 STATE_STOPPING         = "STOPPING"

 

 ACTION_START                   = "01 start"

-ACTION_STOP                    = "02 stop"

+ACTION_STOP                            = "02 stop"

 ACTION_PAUSE                   = "03 pause"

-ACTION_TOGGLE          = "04 toggle"

+ACTION_TOGGLE                  = "04 toggle"

 

 ACTION_SPEEDLIMIT              = "05 speed limit"

-ACTION_MAXDOWNLOADS    = "06 max downloads"

+ACTION_MAXDOWNLOADS            = "06 max downloads"

 

 ACTION_ADD_LINKS               = "07 add links"

-ACTION_ADD_DLC         = "08 add dlc"

+ACTION_ADD_DLC                 = "08 add dlc"

 

 ACTION_RECONNECT               = "10 reconnect"

 

 ACTION_JD_UPDATE               = "20 update JDownloader"

 ACTION_JD_RESTART              = "21 restart JDownloader"

-ACTION_JD_SHUTDOWN     = "22 shutdown JDownloader"

+ACTION_JD_SHUTDOWN             = "22 shutdown JDownloader"

 

 ALL_ACTIONS = {

-       ACTION_START:                           30060,

-       ACTION_STOP:                            30061,

+       ACTION_START:                   30060,

+       ACTION_STOP:                    30061,

        ACTION_PAUSE:                   30062,

        ACTION_TOGGLE:                  30063,

-       ACTION_SPEEDLIMIT:                      30064,

+       ACTION_SPEEDLIMIT:              30064,

        ACTION_MAXDOWNLOADS:    30065,

-       ACTION_ADD_LINKS:                       30069,

+       ACTION_ADD_LINKS:               30069,

        ACTION_ADD_DLC:                 30070,

        ACTION_RECONNECT:               30071,

-       ACTION_JD_UPDATE:                       30066,

-       ACTION_JD_RESTART:                      30067,

+       ACTION_JD_UPDATE:               30066,

+       ACTION_JD_RESTART:              30067,

        ACTION_JD_SHUTDOWN:             30068

 }

 

@@ -55,12 +58,6 @@ BASE_RESOURCE_PATH = xbmc.translatePath( Addon.getAddonInfo( 
"Profile" ) )
 try: os.mkdir(BASE_RESOURCE_PATH)

 except: pass

 

-# load settings

-ip_adress = str(Addon.getSetting("ip_adress"))

-ip_port = str(Addon.getSetting("ip_port"))

-

-urlPrefix = 'http://' + ip_adress + ':' + ip_port

-

 class JDError(Exception):

         def __init__(self, message='', original=None):

                  Exception.__init__(self, message)

@@ -74,8 +71,10 @@ class JDError(Exception):
                  else:

                        return self.message

 

-def _http_query(query):

+def _http_query_with_urlprefix(query,urlPrefix):

        request = urlPrefix+query

+       if __dbg__:

+               print __logprefix__ + "httpQuery: " + repr(request)

        request_count = 0

        while True:

                error_data = ""

@@ -97,6 +96,32 @@ def _http_query(query):
        response.close()

        return result

 

+

+def _get_urlprefix(setting_suffix):

+       # load settings

+       ip_adress = str(Addon.getSetting("ip_adress"+setting_suffix))

+       ip_port = str(Addon.getSetting("ip_port"+setting_suffix))

+       use_hostname = Addon.getSetting("use_hostname"+setting_suffix) == "true"

+       hostname = str(Addon.getSetting("hostname"+setting_suffix))

+       

+       if (use_hostname):

+               urlPrefix = 'http://' + hostname + ':' + ip_port

+       else:

+               urlPrefix = 'http://' + ip_adress + ':' + ip_port

+       

+       return urlPrefix

+

+def _http_query(query):

+       try:

+               result = _http_query_with_urlprefix(query, _get_urlprefix(""))

+       except JDError, error:

+               use_conn2 = Addon.getSetting("use_conn2") == "true"

+               if (use_conn2):

+                       result = _http_query_with_urlprefix(query, 
_get_urlprefix("2"))

+               else:

+                       raise error

+       return result

+

 # Get Info #

 

 # As long as only the package info gets parsed, it doesn't matter which list 
gets loaded (currentlist,alllist,finishedlist)

@@ -193,7 +218,7 @@ def action_addcontainer(link):
        # add link

        # Parameter 'start' is not supported with rc-version 9568!

        #_http_query('/action/add/container/grabber' + str(grabber) + '/start' 
+ str(start) + '/' + str(link))

-       result = _http_query('/action/add/container/grabber' + str(grabber) + 
'/' + str(urllib.quote(link)))

+       result = _http_query('/action/add/container/grabber' + str(grabber) + 
'/' + str(link))

        return result

 

 # Links seperated by spaces, won't work, call this functions for each link 
seperatly

@@ -201,8 +226,12 @@ def action_addlink(link):
        # get settings

        grabber = Addon.getSetting("add_use_grabber")

        start = Addon.getSetting("add_start")

+       # prepare link - quote special chars, e.g '?'

+       link = urllib.quote(link)

+       # restore double point (won't work atm)

+       link = link.replace( '%3A', ':' )

        # add link

-       result = _http_query('/action/add/links/grabber' + str(grabber) + 
'/start' + str(start) + '/' + str(urllib.quote(link)))

+       result = _http_query('/action/add/links/grabber' + str(grabber) + 
'/start' + str(start) + '/' + str(link))

        return result

 

 def action_addlinks_from_file(filename):

diff --git a/plugin.program.jdownloader/resources/settings.xml 
b/plugin.program.jdownloader/resources/settings.xml
index c4136f6..b563236 100644
--- a/plugin.program.jdownloader/resources/settings.xml
+++ b/plugin.program.jdownloader/resources/settings.xml
@@ -1,9 +1,18 @@
 <?xml version="1.0" encoding="utf-8" standalone="yes"?>

 <settings>

-  <!-- General -->

-  <category>

-    <setting id="ip_adress" type="ipaddress" label="30001" 
default="127.0.0.1"/>

+  <!-- Connection -->

+  <category label="30000">

+    <setting id="use_hostname" type="bool" label="30008" default="false" />

+    <setting id="hostname" type="text" label="30009" default="" 
visible="eq(-1,true)" />

+    <setting id="ip_adress" type="ipaddress" label="30001" default="127.0.0.1" 
visible="eq(-2,false)" />

     <setting id="ip_port" type="number" label="30002" default="10025"/>

+    

+    <setting label="30010" type="lsep" />

+    <setting id="use_conn2" type="bool" label="30011" default="false" />

+    <setting id="use_hostname2" type="bool" label="30008" default="false"  
enable="eq(-1,true)" />

+    <setting id="hostname2" type="text" label="30009" default="" 
visible="eq(-1,true)"  enable="eq(-2,true)" />

+    <setting id="ip_adress2" type="ipaddress" label="30001" 
default="127.0.0.1" visible="eq(-2,false)" enable="eq(-3,true)" />

+    <setting id="ip_port2" type="number" label="30002" default="10025" 
enable="eq(-4,true)" />

   </category>

   <!-- Interface -->

   <category label="30007">

@@ -16,4 +25,10 @@
     <setting id="def_txt_file" type="file" label="30022" default="" 
source="files" mask="*.txt" />

     <setting id="def_dlc_file" type="file" label="30023" default="" 
source="files" mask="*.dlc" />

   </category>

+  

+  <!-- Advanced -->

+  <category label="30030">

+    <setting id="debug" type="bool" label="30031" default="false" />

+  </category>

+  

 </settings> 


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

Summary of changes:
 plugin.program.jdownloader/addon.xml               |    2 +-
 plugin.program.jdownloader/changelog.txt           |    4 +
 plugin.program.jdownloader/default.py              |   14 ++--
 .../resources/language/English/strings.xml         |    8 ++
 .../resources/language/German/strings.xml          |    9 +++
 .../resources/lib/jdownloader.py                   |   71 ++++++++++++++------
 plugin.program.jdownloader/resources/settings.xml  |   21 +++++-
 7 files changed, 98 insertions(+), 31 deletions(-)


hooks/post-receive
-- 
Plugins

------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
Xbmc-addons mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xbmc-addons

Reply via email to