diff options
author | Marcos Pinto <markybob@dipconsultants.com> | 2007-11-22 04:20:42 +0000 |
---|---|---|
committer | Marcos Pinto <markybob@dipconsultants.com> | 2007-11-22 04:20:42 +0000 |
commit | cc0d1502ccbd777be6aa829d68569e9ed735c79a (patch) | |
tree | a5a6219ee4964a06096dad907bec9a5e424c8273 /plugins | |
parent | 74f739a6937b970f6771e1ec5f6ace714d646153 (diff) | |
download | deluge-cc0d1502ccbd777be6aa829d68569e9ed735c79a.tar.gz deluge-cc0d1502ccbd777be6aa829d68569e9ed735c79a.tar.bz2 deluge-cc0d1502ccbd777be6aa829d68569e9ed735c79a.zip |
revert webui
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/WebUi/__init__.py | 26 | ||||
-rw-r--r-- | plugins/WebUi/dbus_interface.py | 24 | ||||
-rw-r--r-- | plugins/WebUi/deluge_webserver.py | 58 | ||||
-rw-r--r-- | plugins/WebUi/revno | 2 | ||||
-rwxr-xr-x | plugins/WebUi/static/simple_site_style.css | 33 | ||||
-rw-r--r-- | plugins/WebUi/templates/deluge/index.html | 18 | ||||
-rw-r--r-- | plugins/WebUi/templates/deluge/part_stats.html | 7 | ||||
-rw-r--r-- | plugins/WebUi/templates/deluge/sort_column_head.html | 2 | ||||
-rw-r--r-- | plugins/WebUi/templates/deluge/tab_meta.html | 85 | ||||
-rw-r--r-- | plugins/WebUi/templates/deluge/torrent_delete.html | 13 | ||||
-rw-r--r-- | plugins/WebUi/templates/deluge/torrent_info.html | 90 | ||||
-rw-r--r-- | plugins/WebUi/templates/hacking-templates.txt | 25 | ||||
-rw-r--r-- | plugins/WebUi/tests/test_all.py | 58 | ||||
-rw-r--r-- | plugins/WebUi/version | 6 | ||||
-rw-r--r-- | plugins/WebUi/webserver_common.py | 12 | ||||
-rw-r--r-- | plugins/WebUi/webserver_framework.py | 10 |
16 files changed, 158 insertions, 311 deletions
diff --git a/plugins/WebUi/__init__.py b/plugins/WebUi/__init__.py index c0a44655f..4202d21ba 100644 --- a/plugins/WebUi/__init__.py +++ b/plugins/WebUi/__init__.py @@ -45,20 +45,13 @@ Other contributors: """ import deluge.common -try: - import deluge.pref - from deluge.dialogs import show_popup_warning - import webserver_common -except ImportError: - print 'WebUi:not imported as a plugin' - - - +import deluge.pref +from deluge.dialogs import show_popup_warning try: from dbus_interface import get_dbus_manager except: pass #for unit-test. - +import webserver_common import time import gtk @@ -124,9 +117,6 @@ class plugin_WebUi(object): else: self.config.set("run_in_thread", False) - if self.config.get("use_https") == None: - self.config.set("use_https", False) - self.dbus_manager = get_dbus_manager(deluge_core, deluge_interface, self.config, self.config_file) @@ -177,6 +167,8 @@ class plugin_WebUi(object): def __del__(self): self.kill_server() + + class ConfigDialog(gtk.Dialog): """ sorry, can't get used to gui builders. @@ -203,12 +195,6 @@ class ConfigDialog(gtk.Dialog): gtk.combo_box_new_text()) self.cache_templates = self.add_widget(_('Cache Templates'), gtk.CheckButton()) - """ - temporary disable for 0.5.7 - self.use_https = self.add_widget(_('Use https://'), - gtk.CheckButton()) - """ - #self.share_downloads = self.add_widget(_('Share Download Directory'), # gtk.CheckButton()) @@ -236,7 +222,6 @@ class ConfigDialog(gtk.Dialog): # bool(self.config.get("share_downloads"))) self.cache_templates.set_active(self.config.get("cache_templates")) - """0.5.7.. self.use_https.set_active(self.config.get("use_https"))""" self.vbox.pack_start(self.vb, True, True, 0) self.vb.show_all() @@ -272,7 +257,6 @@ class ConfigDialog(gtk.Dialog): self.config.set("template", self.template.get_active_text()) self.config.set("button_style", self.button_style.get_active()) self.config.set("cache_templates", self.cache_templates.get_active()) - #0.5.7.. self.config.set("use_https", self.use_https.get_active()) #self.config.set("share_downloads", self.share_downloads.get_active()) self.config.save(self.plugin.config_file) self.plugin.start_server() #restarts server diff --git a/plugins/WebUi/dbus_interface.py b/plugins/WebUi/dbus_interface.py index 9f0f826bc..f14a382e0 100644 --- a/plugins/WebUi/dbus_interface.py +++ b/plugins/WebUi/dbus_interface.py @@ -95,8 +95,7 @@ class DbusManager(dbus.service.Object): "total_size": state["total_size"], "num_pieces": state["num_pieces"], "state": state['state'], - "user_paused": self.core.is_user_paused(torrent_id), - "paused":state['is_paused'], + "paused": self.core.is_user_paused(torrent_id), "progress": int(state["progress"] * 100), "next_announce": state["next_announce"], "total_payload_download":state["total_payload_download"], @@ -154,22 +153,16 @@ class DbusManager(dbus.service.Object): self.core.update_tracker(torrent_id) @dbus.service.method(dbus_interface=dbus_interface, - in_signature="asbb", out_signature="") - def remove_torrent(self, torrent_ids, data_also, torrent_also): + in_signature="sbb", out_signature="") + def remove_torrent(self, torrent_id, data_also, torrent_also): """remove a torrent,and optionally data and torrent additions compared to 0.6 interface: (data_also, torrent_also) """ - for torrent_id in torrent_ids: - torrent_id = int(torrent_id) - self.core.remove_torrent(torrent_id, bool(data_also) - ,bool( torrent_also)) - - #this should not be needed: - gtk.gdk.threads_enter() - try: - self.interface.torrent_model_remove(torrent_id) - except: - pass + torrent_id = int(torrent_id) + self.core.remove_torrent(torrent_id, bool(data_also) + ,bool( torrent_also)) + #this should not be needed: + self.interface.torrent_model_remove(torrent_id) @dbus.service.method(dbus_interface=dbus_interface, in_signature="s", out_signature="b") @@ -181,6 +174,7 @@ class DbusManager(dbus.service.Object): @dbus.service.method(dbus_interface=dbus_interface, in_signature="s", out_signature="b") def queue_up(self, torrent_id): + print 'UP!' self.core.queue_up(int(torrent_id)) return True diff --git a/plugins/WebUi/deluge_webserver.py b/plugins/WebUi/deluge_webserver.py index d63ae55f9..69ddb495c 100644 --- a/plugins/WebUi/deluge_webserver.py +++ b/plugins/WebUi/deluge_webserver.py @@ -46,9 +46,7 @@ urls = ( "/login", "login", "/index", "index", "/torrent/info/(.*)", "torrent_info", - "/torrent/info_inner/(.*)", "torrent_info_inner", - "/torrent/stop/(.*)", "torrent_stop", - "/torrent/start/(.*)", "torrent_start", + "/torrent/pause", "torrent_pause", "/torrent/reannounce/(.*)", "torrent_reannounce", "/torrent/add", "torrent_add", "/torrent/delete/(.*)", "torrent_delete", @@ -117,38 +115,19 @@ class index: class torrent_info: @deluge_page @auto_refreshed - def GET(self, name): - torrent_id = name.split(',')[0] + def GET(self, torrent_id): return ws.render.torrent_info(get_torrent_status(torrent_id)) -class torrent_info_inner: - @deluge_page - def GET(self, torrent_ids): - torrent_ids = torrent_ids.split(',') - info = get_torrent_status(torrent_ids[0]) - if len(torrent_ids) > 1: - #todo : hmm, lots of manual stuff here :( - pass - - - return ws.render.torrent_info_inner(info) - -class torrent_start: - @check_session - def POST(self, name): - torrent_ids = name.split(',') - ws.proxy.resume_torrent(torrent_ids) - do_redirect() - -class torrent_stop: +class torrent_pause: @check_session def POST(self, name): - torrent_ids = name.split(',') - ws.proxy.pause_torrent(torrent_ids) + vars = web.input(stop = None, start = None, redir = None) + if vars.stop: + ws.proxy.pause_torrent([vars.stop]) + elif vars.start: + ws.proxy.resume_torrent([vars.start]) do_redirect() - - class torrent_reannounce: @check_session def POST(self, torrent_id): @@ -196,32 +175,27 @@ class remote_torrent_add: class torrent_delete: @deluge_page - def GET(self, name): - torrent_ids = name.split(',') - torrent_list = [get_torrent_status(id) for id in torrent_ids] - return ws.render.torrent_delete(name, torrent_list) + def GET(self, torrent_id): + return ws.render.torrent_delete(get_torrent_status(torrent_id)) @check_session - def POST(self, name): - torrent_ids = name.split(',') + def POST(self, torrent_id): vars = web.input(data_also = None, torrent_also = None) data_also = bool(vars.data_also) torrent_also = bool(vars.torrent_also) - ws.proxy.remove_torrent(torrent_ids, data_also, torrent_also) + ws.proxy.remove_torrent(torrent_id, data_also, torrent_also) do_redirect() class torrent_queue_up: @check_session - def POST(self, name): - for torrent_id in sorted(name.split(',')): - ws.proxy.queue_up(torrent_id) + def POST(self, torrent_id): + ws.proxy.queue_up(torrent_id) do_redirect() class torrent_queue_down: @check_session - def POST(self, name): - for torrent_id in reversed(sorted(name.split(','))): - ws.proxy.queue_down(torrent_id) + def POST(self, torrent_id): + ws.proxy.queue_down(torrent_id) do_redirect() class pause_all: diff --git a/plugins/WebUi/revno b/plugins/WebUi/revno index fba7ed526..c75acbe2f 100644 --- a/plugins/WebUi/revno +++ b/plugins/WebUi/revno @@ -1 +1 @@ -143 +127 diff --git a/plugins/WebUi/static/simple_site_style.css b/plugins/WebUi/static/simple_site_style.css index a3ba439d6..16d65480e 100755 --- a/plugins/WebUi/static/simple_site_style.css +++ b/plugins/WebUi/static/simple_site_style.css @@ -26,16 +26,11 @@ form.deluge_button { } button.deluge_button { background-color: #37506f; - border:1px solid #68a; - + border:1px solid #23344b; background: #99acc3; color: #000; - vertical-align:middle; - -moz-border-radius:7px; -} -button.deluge_button:hover { - background-color:#68a; } + div.error { background-color:#FFFFFF; color:#AA0000; @@ -47,28 +42,4 @@ div.error { } -/*tr.torrent_table:hover { - background-color:#68a; -}*/ - -tr.torrent_table_selected { - background-color:#900; -} - -th.torrent_table:hover { - background-color:#68a; -} - -img.button { - margin-bottom:0px; - padding:0px; - position:relative; - top:2px; -} - -body.inner { - background:none; -} - -
/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */
\ No newline at end of file diff --git a/plugins/WebUi/templates/deluge/index.html b/plugins/WebUi/templates/deluge/index.html index 1dad40b9b..b177c7b8c 100644 --- a/plugins/WebUi/templates/deluge/index.html +++ b/plugins/WebUi/templates/deluge/index.html @@ -1,6 +1,7 @@ $def with (torrent_list) $:render.header(_('Torrent list')) +<form action="/torrent/pause" method="POST"> <table class="torrent_list" border=1> <tr> $:(sort_head('calc_state_str', 'S')) @@ -18,19 +19,14 @@ $:render.header(_('Torrent list')) </tr> $#4-space indentation is mandatory for for-loops in templetor! $for torrent in torrent_list: - <tr class="torrent_table" id="torrent_$torrent.id"> - <td> - <form action="/torrent/$torrent.action/$torrent.id" method="POST"> - <input type="image" - src="/static/images/$(torrent.calc_state_str)16.png" - name="pauseresume" value="submit" /> - </form> + <tr> + <td><input type="image" + src="/static/images/$(torrent.calc_state_str)16.png" + name="$torrent.action" value="$torrent.id"> </td> - <td>$torrent.queue_pos</td> <td style="width:100px; overflow:hidden;white-space: nowrap"> - <a href="/torrent/info/$torrent.id" > - $(crop(torrent.name, 40))</a></td> + <a href="/torrent/info/$torrent.id">$(crop(torrent.name, 40))</a></td> <td>$fsize(torrent.total_size)</td> <td class="progress_bar"> <div class="progress_bar_outer"> @@ -49,7 +45,7 @@ $for torrent in torrent_list: </tr> </table> - +</form> <div class="panel"> $:render.part_button('GET', '/torrent/add', _('Add torrent'), 'tango/list-add.png') diff --git a/plugins/WebUi/templates/deluge/part_stats.html b/plugins/WebUi/templates/deluge/part_stats.html index 342b8049f..55a2a74b5 100644 --- a/plugins/WebUi/templates/deluge/part_stats.html +++ b/plugins/WebUi/templates/deluge/part_stats.html @@ -14,7 +14,7 @@ $else: $#end </div> -<div class="panel" id='stats_panel'> +<div class="panel" id='refresh_panel'> <!--<a href='/config'>--> $_('Connections') : $stats.num_connections ($stats.max_num_connections) @@ -26,9 +26,8 @@ $#end <!--</a>--> - <span id=#about> - (<a href='/about'>$_('About')</a>) - </span> + + (<a href='/about'>$_('About')</a>) </div> diff --git a/plugins/WebUi/templates/deluge/sort_column_head.html b/plugins/WebUi/templates/deluge/sort_column_head.html index c18a50004..1de008a79 100644 --- a/plugins/WebUi/templates/deluge/sort_column_head.html +++ b/plugins/WebUi/templates/deluge/sort_column_head.html @@ -1,5 +1,5 @@ $def with (column_id, column_name, order, active_up, active_down) -<th class="torrent_table"> +<th> <a href="/index?sort=$column_id&order=$order"> $column_name\ $if active_up: diff --git a/plugins/WebUi/templates/deluge/tab_meta.html b/plugins/WebUi/templates/deluge/tab_meta.html index 6a1de18de..e69de29bb 100644 --- a/plugins/WebUi/templates/deluge/tab_meta.html +++ b/plugins/WebUi/templates/deluge/tab_meta.html @@ -1,85 +0,0 @@ -$def with (torrent) -<table width="100%"><tr> -<td colspan=3 style="background-color:#999;-moz-border-radius:5px;"> - - <div class="progress_bar" style="width:$torrent.progress%; - text-align:center;font-weight:bold;"> - - $torrent.progress %</div> -</td> -</tr><td width=30%%> -<table> - -<tr><td class="info_label">$_('Downloaded'):</td> -<td class="info_value">$torrent.calc_total_downloaded</td></tr> - -<tr><td class="info_label">$_('Uploaded'):</td> -<td class="info_value">$torrent.calc_total_uploaded</td> -</tr> - -<tr><td class="info_label">$_('Seeders'):</td> -<td class="info_value">$torrent.num_seeds ($torrent.total_seeds )</td></tr> - -<tr><td class="info_label">$_('Share Ratio'):</td> -<td class="info_value">$("%.3f" % torrent.ratio)</td></tr> - -<tr><td class="info_label">$_('Pieces'):</td> -<td class="info_value">$torrent.num_pieces x $fsize(torrent.piece_length) </td> -</tr> - -<tr><td class="info_label"> </td> -<td class="info_value"> </td> - - -</table> -</td><td width=30%%> - -<table> -<tr><td class="info_label">$_('Speed'):</td><td class="info_value"> -$fspeed(torrent.download_rate)</td></td></tr> - -<tr><td class="info_label">$_('Speed'):</td> -<td class="info_value">$fspeed(torrent.upload_rate)</td></tr> - -<tr><td class="info_label">$_('Peers'):</td> -<td class="info_value">$torrent.num_peers ($torrent.total_peers )</td></tr> - -<tr><td class="info_label">$_('ETA'):</td> -<td class="info_value">$torrent.eta </td></tr> - -<tr><td class="info_label">$_('Availability'):</td> -<td class="info_value">$("%.3f" % torrent.distributed_copies)</td></td></tr> - -<tr><td class="info_label"> </td> -<td class="info_value"> </td> -</tr> - - -</table> - -</td><td width=30%%> - -<table> - -<tr><td class="info_label">$_('Total Size'):</td> -<td class="info_value">$fspeed(torrent.total_size)</td></tr> - -<tr><td class="info_label">$_('# Of Files'):</td> -<td class="info_value">$torrent.num_files</td></tr> - -<tr><td class="info_label">$_('Tracker'):</td> -<td class="info_value">$(crop(torrent.tracker, 30))</td></tr> - -<tr><td class="info_label">$_('Tracker Status'):</td> -<td class="info_value">$torrent.tracker_status </td></tr> - -<tr><td class="info_label">$_('Next Announce'):</td> -<td class="info_value">$torrent.next_announce </td></tr> - - -<tr><td class="info_label">$_('Queue Position'):</td> -<td class="info_value">$torrent.queue_pos </td> -</tr> -</table> - -</table> diff --git a/plugins/WebUi/templates/deluge/torrent_delete.html b/plugins/WebUi/templates/deluge/torrent_delete.html index a9aceb551..77f32949a 100644 --- a/plugins/WebUi/templates/deluge/torrent_delete.html +++ b/plugins/WebUi/templates/deluge/torrent_delete.html @@ -1,15 +1,10 @@ -$def with (torrent_ids, torrent_list) -$:render.header(_("Remove torrent")) +$def with (torrent) +$:render.header(_("Remove %s ") % torrent.name) <div class="panel"> -<form method="POST" action='/torrent/delete/$torrent_ids'> +<form method="POST" action='/torrent/delete/$torrent.id'> <div id="del_torrent"> -<h2>$_("Remove torrent")</h2> -<ul> -$for torrent in torrent_list: - <li>$torrent.name</li> -</ul> - +$(_("Remove %s?") % torrent.name) <div class="form_row2"> <span class="form_label2"> <input type="checkbox" name="torrent_also" class="form_input" checked diff --git a/plugins/WebUi/templates/deluge/torrent_info.html b/plugins/WebUi/templates/deluge/torrent_info.html index 04416a9f3..a9ba83b10 100644 --- a/plugins/WebUi/templates/deluge/torrent_info.html +++ b/plugins/WebUi/templates/deluge/torrent_info.html @@ -1,23 +1,88 @@ $def with (torrent) - $:(render.header(torrent.message + '/' + torrent.name)) <div class="panel"> <h3>$_('Details')</h3> +<table width="100%"><tr> +<td colspan=3 style="background-color:#999;-moz-border-radius:5px;"> + + <div class="progress_bar" style="width:$torrent.progress%; + text-align:center;font-weight:bold;"> + + $torrent.progress %</div> +</td> +</tr><td width=30%%> +<table> + +<tr><td class="info_label">$_('Downloaded'):</td> +<td class="info_value">$torrent.calc_total_downloaded</td></tr> + +<tr><td class="info_label">$_('Uploaded'):</td> +<td class="info_value">$torrent.calc_total_uploaded</td> +</tr> + +<tr><td class="info_label">$_('Seeders'):</td> +<td class="info_value">$torrent.num_seeds ($torrent.total_seeds )</td></tr> + +<tr><td class="info_label">$_('Share Ratio'):</td> +<td class="info_value">$("%.3f" % torrent.ratio)</td></tr> + +<tr><td class="info_label">$_('Pieces'):</td> +<td class="info_value">$torrent.num_pieces x $fsize(torrent.piece_length) </td> +</tr> + +</table> +</td><td width=30%%> + +<table> +<tr><td class="info_label">$_('Speed'):</td><td class="info_value"> +$fspeed(torrent.download_rate)</td></td></tr> + +<tr><td class="info_label">$_('Speed'):</td> +<td class="info_value">$fspeed(torrent.upload_rate)</td></tr> + +<tr><td class="info_label">$_('Peers'):</td> +<td class="info_value">$torrent.num_peers ($torrent.total_peers )</td></tr> + +<tr><td class="info_label">$_('ETA'):</td> +<td class="info_value">$torrent.eta </td></tr> -$:render.tab_meta(torrent) +<tr><td class="info_label">$_('Availability'):</td> +<td class="info_value">$("%.3f" % torrent.distributed_copies)</td></td></tr> -$if (torrent.action == 'start'): - $:render.part_button('POST', '/torrent/start/' + str(torrent.id), _('Resume'), 'tango/start.png') -$else: - $:render.part_button('POST', '/torrent/stop/' + str(torrent.id), _('Pause'), 'tango/pause.png') +</table> +</td><td width=30%%> + +<table> + +<tr><td class="info_label">$_('Total Size'):</td> +<td class="info_value">$fspeed(torrent.total_size)</td></tr> + +<tr><td class="info_label">$_('# Of Files'):</td> +<td class="info_value">$torrent.num_files</td></tr> + +<tr><td class="info_label">$_('Tracker'):</td> +<td class="info_value">$(crop(torrent.tracker, 30))</td></tr> + +<tr><td class="info_label">$_('Tracker Status'):</td> +<td class="info_value">$torrent.tracker_status </td></tr> + +<tr><td class="info_label">$_('Next Announce'):</td> +<td class="info_value">$torrent.next_announce </td></tr> + +</table> + +</table> +<form action="/torrent/pause?redir=/torrent/info/$torrent.id" method="POST" +class="deluge_button"> + +<input type="image" src="/static/images/$(torrent.calc_state_str)16.png" + name="$torrent.action" value="$torrent.id"> +</form> $:render.part_button('GET', '/torrent/delete/' + str(torrent.id), _('Remove'), 'tango/user-trash.png') $:render.part_button('POST', '/torrent/reannounce/' + str(torrent.id), _('Reannounce'), 'tango/view-refresh.png') -$:render.part_button('POST', '/torrent/queue/up/' + str(torrent.id), _('Queue Up'), 'tango/queue-up.png') -$:render.part_button('POST', '/torrent/queue/down/' + str(torrent.id), _('Queue Down'), 'tango/queue-down.png') - <br> <!-- [<a onclick="javascript:toggle_dump()">$_('Debug:Data Dump')</a>] @@ -44,6 +109,13 @@ function toggle_dump(){ +<div class='panel'> +$_('Queue pos:') $torrent.queue_pos + +$:render.part_button('POST', '/torrent/queue/up/' + str(torrent.id), _('Queue Up'), 'tango/up.png') + +$:render.part_button('POST', '/torrent/queue/down/' + str(torrent.id), _('Queue Down'), 'tango/down.png') +</div> $:part_stats() diff --git a/plugins/WebUi/templates/hacking-templates.txt b/plugins/WebUi/templates/hacking-templates.txt index 600ba907e..f69e47c73 100644 --- a/plugins/WebUi/templates/hacking-templates.txt +++ b/plugins/WebUi/templates/hacking-templates.txt @@ -3,35 +3,28 @@ Just copy and rename an existing template. -The settings panel will see all directory's in this folder ,and let you choose your new template. -Clicking Ok in the settings panel will restart the webserver and reload your template. -Limited "Subclassing": -All templates are "subclassed" from the /deluge/ template. -If a html file is not found in the template dir, the file from /deluge/ will be used. - - Notes: Please configure your editor to use 4-space indents instead of tabs. Or use scite and my config: http://mvoncken.sohosted.com/deluge/SciTEUser.properties.txt template language: http://webpy.org/templetor -Exposed methods and variables (c&p from webserver_framework.py): - template.Template.globals.update({ +Exposed methods and variables (c&p from deluge_webserver): 'sort_head': template_sort_head, - 'part_stats':template_part_stats, 'crop': template_crop, '_': _ , #gettext/translations 'str': str, #because % in templetor is broken. 'sorted': sorted, - 'get_config': get_config, - 'self_url': self_url, + 'get_config': proxy.get_webui_config, + 'self_url': web.changequery, 'fspeed': common.fspeed, 'fsize': common.fsize, - 'render': ws.render, #for easy resuse of templates - 'rev': 'rev.%s' % (REVNO, ), - 'version': VERSION, - 'getcookie':getcookie, - 'get': lambda (var): getattr(web.input(**{var:None}), var) # unreadable :-( -}) + 'render': render, #for easy resuse of templates + 'button_style': (proxy.get_webui_config('button_style')), + 'rev': ('rev.' + + open(os.path.join(os.path.dirname(__file__),'revno')).read()), + 'version': ( + open(os.path.join(os.path.dirname(__file__),'version')).read()) I will update this file if there is interest in making templates. diff --git a/plugins/WebUi/tests/test_all.py b/plugins/WebUi/tests/test_all.py index 44b1ea3ab..7bf7c4265 100644 --- a/plugins/WebUi/tests/test_all.py +++ b/plugins/WebUi/tests/test_all.py @@ -9,11 +9,7 @@ import cookielib, urllib2 , urllib import WebUi.webserver_common as ws import operator - ws.init_05() -print 'test-env=',ws.ENV - - #CONFIG: BASE_URL = 'http://localhost:8112' @@ -41,7 +37,6 @@ class TestWebUiBase(unittest.TestCase): def open_url(self, page, post=None): url = BASE_URL + page - if post == 1: post = {'Force_a_post' : 'spam'} if post: @@ -97,10 +92,6 @@ class TestWebUiBase(unittest.TestCase): else: pass - first_torrent_id = property(lambda self: ws.proxy.get_session_state()[0]) - first_torrent = property(lambda self: get_status(self.first_torrent_id)) - - class TestNoAuth(TestWebUiBase): def test303(self): self.assert_303('/','/login') @@ -226,12 +217,8 @@ class TestIntegration(TestWebUiBase): else: #test correctness of existing-list - #The setup makes 0.6 fail everything, added an else.. for url in self.urls: - if ws.ENV.startswith('0.5'): - self.assert_500('/torrent/add',{'url':url,'torrent':None}) - else: - self.assert_303('/torrent/add','/index',{'url':url,'torrent':None}) + self.assert_500('/torrent/add',{'url':url,'torrent':None}) def testPauseResume(self): #pause all @@ -250,12 +237,12 @@ class TestIntegration(TestWebUiBase): #pause again. self.assert_303('/pause_all','/index', post=1) - torrent_id = self.first_torrent_id + torrent_id = ws.proxy.get_session_state()[0] #single resume. - self.assert_303('/torrent/start/%s' % torrent_id ,'/index', post=1) + self.assert_303('/torrent/pause','/index', post={'start':torrent_id}) self.assertEqual(get_status(torrent_id)["paused"] ,False) #single pause - self.assert_303('/torrent/stop/%s' % torrent_id,'/index', post=1) + self.assert_303('/torrent/pause','/index', post={'stop':torrent_id}) self.assertEqual(get_status(torrent_id)["paused"] , True) def testQueue(self): @@ -310,6 +297,8 @@ class TestIntegration(TestWebUiBase): #add torrrent-file #./test01.torrent + def testReannounce(self): + pass def test_do_redirect(self): self.assert_303('/home','/index') @@ -325,16 +314,17 @@ class TestIntegration(TestWebUiBase): assert self.cookies['order'] == 'up' #redir after pause-POST? in /index. self.assert_exists('/index?sort=name&order=down') - torrent_id = self.first_torrent_id - self.assert_303('/torrent/stop/%s' % torrent_id, - '/index?sort=name&order=down', post=1) + torrent_id = ws.proxy.get_session_state()[0] + self.assert_303('/torrent/pause','/index?sort=name&order=down', + post={'stop':torrent_id}) #redir in details 1 - self.assert_303('/torrent/stop/%s?redir=/torrent/info/%s' %(torrent_id,torrent_id) - ,'/torrent/info/' + torrent_id, post = 1) + self.assert_303('/torrent/pause?redir=/torrent/info/' + torrent_id + ,'/torrent/info/' + torrent_id, post = {'stop':torrent_id}) #redir in details 2 - self.assert_303('/torrent/stop/%s' % torrent_id + self.assert_303('/torrent/pause' ,'/torrent/info/' + torrent_id , - post={'redir': '/torrent/info/' + torrent_id}) + post={'stop':torrent_id, + 'redir': '/torrent/info/' + torrent_id}) def testRemote(self): pass @@ -342,26 +332,6 @@ class TestIntegration(TestWebUiBase): def test_redir_after_login(self): pass - def testReannounce(self): - torrent_id = self.first_torrent_id - self.assert_303( - '/torrent/reannounce/%(id)s?redir=/torrent/info/%(id)s' - % {'id':torrent_id} - ,'/torrent/info/' + torrent_id, post = 1) - - def testRecheck(self): - #add test before writing code.. - #RELEASE-->disable - """ - torrent_id = self.first_torrent_id - self.assert_303( - '/torrent/recheck/%(id)s?redir=/torrent/info/%(id)s' - % {'id':torrent_id} - ,'/torrent/info/' + torrent_id, post = 1) - """ - - - # if False: diff --git a/plugins/WebUi/version b/plugins/WebUi/version index 36b3caf3a..a7debb432 100644 --- a/plugins/WebUi/version +++ b/plugins/WebUi/version @@ -1,5 +1,5 @@ revision-id: mvoncken@gmail.com-20070930083408-sv8mo0mi1rbjnfvk -date: 2007-11-21 15:10:08 +0200 -build-date: 2007-11-21 15:34:50 +0200 -revno: 143 +date: 2007-11-06 15:10:08 +0200 +build-date: 2007-11-06 15:34:50 +0200 +revno: 127 branch-nick: WebUi diff --git a/plugins/WebUi/webserver_common.py b/plugins/WebUi/webserver_common.py index d433908f2..1e209ea56 100644 --- a/plugins/WebUi/webserver_common.py +++ b/plugins/WebUi/webserver_common.py @@ -44,8 +44,6 @@ from webpy022 import template random.seed() path = os.path.dirname(__file__) -ENV = 'UNKNOWN' - try: _('translate something') except: @@ -92,7 +90,6 @@ def init_06(): init_process() globals()['proxy'] = proxy - globals()['ENV'] = '0.6' def init_05(): import dbus @@ -101,7 +98,6 @@ def init_05(): proxy = bus.get_object("org.deluge_torrent.dbusplugin" , "/org/deluge_torrent/DelugeDbusPlugin") globals()['proxy'] = proxy - globals()['ENV'] = '0.5_process' def init_gtk_05(): #appy possibly changed config-vars, only called in when runing inside gtk. @@ -110,16 +106,12 @@ def init_gtk_05(): globals()['config'] = deluge.pref.Preferences(config_file, False) globals()['render'] = subclassed_render(config.get('template'), config.get('cache_templates')) - globals()['ENV'] = '0.5_gtk' - #hacks to determine environment, TODO: clean up. if 'env=0.5' in sys.argv: init_05() -elif 'env=0.6' in sys.argv: - init_06() -elif hasattr(deluge, 'ui'): +elif not hasattr(deluge, 'common'): init_06() elif not hasattr(deluge,'pref'): init_05() @@ -136,7 +128,7 @@ TORRENT_KEYS = ['distributed_copies', 'download_payload_rate', 'total_payload_download', 'total_payload_upload', 'total_peers', 'total_seeds', 'total_size', 'total_upload', 'total_wanted', 'tracker_status', 'upload_payload_rate', 'upload_rate', - 'uploaded_memory','tracker','state','queue_pos','user_paused'] + 'uploaded_memory','tracker','state','queue_pos'] STATE_MESSAGES = (_("Queued"), _("Checking"), diff --git a/plugins/WebUi/webserver_framework.py b/plugins/WebUi/webserver_framework.py index faea87b0f..6735802d1 100644 --- a/plugins/WebUi/webserver_framework.py +++ b/plugins/WebUi/webserver_framework.py @@ -224,10 +224,8 @@ def get_torrent_status(torrent_id): else: status.action = "stop" - if status.user_paused: + if status.paused: status.message = _("Paused %s%%") % status.progress - elif status.paused: - status.message = _("Queued %s%%") % status.progress else: status.message = "%s %i%%" % (ws.STATE_MESSAGES[status.state] , status.progress) @@ -295,7 +293,6 @@ template.Template.globals.update({ 'rev': 'rev.%s' % (REVNO, ), 'version': VERSION, 'getcookie':getcookie, - 'js_enabled': lambda : ws.config.get('use_javascript'), 'get': lambda (var): getattr(web.input(**{var:None}), var) # unreadable :-( }) #/template-defs @@ -307,12 +304,7 @@ def create_webserver(urls, methods): func = webapi.wsgifunc(webpyfunc(urls, methods, False)) server_address=("0.0.0.0", int(ws.config.get('port'))) - server = CherryPyWSGIServer(server_address, func, server_name="localhost") - if ws.config.get('use_https'): - server.ssl_certificate = ws.config.get('ssl_certificate') - server.ssl_private_key = ws.config.get('ssl_private_key') - print "http://%s:%d/" % server_address return server |