diff --git a/deluge/ui/web/index.html b/deluge/ui/web/index.html
index b0bab314c..5baebb422 100644
--- a/deluge/ui/web/index.html
+++ b/deluge/ui/web/index.html
@@ -18,6 +18,7 @@
+
diff --git a/deluge/ui/web/js/deluge-bars.js b/deluge/ui/web/js/deluge-bars.js
index e2ac1216d..54e6c88dc 100644
--- a/deluge/ui/web/js/deluge-bars.js
+++ b/deluge/ui/web/js/deluge-bars.js
@@ -108,6 +108,9 @@ function torrentAction(item) {
}
});
break;
+ case "connectionman":
+ Deluge.Connections.Window.show();
+ break;
}
}
diff --git a/deluge/ui/web/js/deluge-connections.js b/deluge/ui/web/js/deluge-connections.js
new file mode 100644
index 000000000..c2af93722
--- /dev/null
+++ b/deluge/ui/web/js/deluge-connections.js
@@ -0,0 +1,50 @@
+Deluge.Connections = {
+ onClose: function(e) {
+ },
+
+ onConnect: function(e) {
+ }
+}
+
+Deluge.Connections.Store = new Ext.data.SimpleStore({
+ fields: [
+ {name: 'status'},
+ {name: 'host'},
+ {name: 'version'}
+ ]
+});
+
+Deluge.Connections.Grid = new Ext.grid.GridPanel({
+ store: Deluge.Connections.Store,
+ cls: 'deluge-torrents',
+ columns: [
+ {header: "Status", width: 55, sortable: true, renderer: Deluge.Formatters.plain, dataIndex: 'status'},
+ {id:'host', header: "Host", width: 150, sortable: true, renderer: Deluge.Formatters.plain, dataIndex: 'host'},
+ {header: "Version", width: 75, sortable: true, renderer: Deluge.Formatters.plain, dataIndex: 'version'}
+ ],
+ stripeRows: true,
+ autoExpandColumn: 'host',
+ deferredRender:false,
+ autoScroll:true,
+ margins: '0 0 0 0'
+});
+
+Deluge.Connections.Window = new Ext.Window({
+ layout: 'fit',
+ width: 300,
+ height: 200,
+ bodyStyle: 'padding: 10px 5px;',
+ buttonAlign: 'right',
+ closeAction: 'hide',
+ closable: true,
+ plain: true,
+ title: _('Connection Manager'),
+ items: [Deluge.Connections.Grid],
+ buttons: [{
+ text: _('Close'),
+ handler: Deluge.Connections.onClose
+ },{
+ text: _('Connect'),
+ handler: Deluge.Connections.onConnect
+ }]
+});
\ No newline at end of file
diff --git a/deluge/ui/web/js/deluge-login.js b/deluge/ui/web/js/deluge-login.js
index d23fef1c7..76392d687 100644
--- a/deluge/ui/web/js/deluge-login.js
+++ b/deluge/ui/web/js/deluge-login.js
@@ -5,6 +5,7 @@ Deluge.Login = {
onSuccess: function(result) {
if (result == true) {
Deluge.Login.Window.hide();
+ Deluge.Connections.Window.show();
} else {
Ext.MessageBox.show({
title: _('Login Failed'),
@@ -56,7 +57,7 @@ Deluge.Login.Window = new Ext.Window({
title: _('Login'),
items: Deluge.Login.Form,
buttons: [{
- text: 'Login',
+ text: _('Login'),
handler: Deluge.Login.onLogin
}]
});
\ No newline at end of file
diff --git a/deluge/ui/web/server.py b/deluge/ui/web/server.py
index 80fd5c6e9..cbd4d5dcf 100644
--- a/deluge/ui/web/server.py
+++ b/deluge/ui/web/server.py
@@ -76,6 +76,7 @@ CONFIG_DEFAULTS = {
"pwd_salt": "2\xe8\xc7\xa6(n\x81_\x8f\xfc\xdf\x8b\xd1\x1e\xd5\x90",
"pwd_md5": ".\xe8w\\+\xec\xdb\xf2id4F\xdb\rUc",
"cache_templates": True,
+ "connections": [],
"daemon": "http://localhost:58846",
"base": "",
"disallow": {},