diff --git a/src/server/settings/Settings.go b/src/server/settings/Settings.go index cd05d0a..537cf80 100644 --- a/src/server/settings/Settings.go +++ b/src/server/settings/Settings.go @@ -39,6 +39,7 @@ type Settings struct { DownloadRateLimit int // in kb, 0 - inf UploadRateLimit int // in kb, 0 - inf ConnectionsLimit int + ListenPort int } func Get() *Settings { diff --git a/src/server/torr/BTServer.go b/src/server/torr/BTServer.go index eea81f5..aba38bb 100644 --- a/src/server/torr/BTServer.go +++ b/src/server/torr/BTServer.go @@ -98,7 +98,10 @@ func (bt *BTServer) configure() { if settings.Get().UploadRateLimit > 0 { bt.config.UploadRateLimiter = utils.Limit(settings.Get().UploadRateLimit * 1024) } - + if settings.Get().ListenPort > 0 { + bt.config.ListenPort = settings.Get().ListenPort + } + //bt.config.Debug = true fmt.Println("Configure client:", settings.Get()) diff --git a/src/server/web/templates/SettingsPage.go b/src/server/web/templates/SettingsPage.go index 4b97128..f0d9057 100644 --- a/src/server/web/templates/SettingsPage.go +++ b/src/server/web/templates/SettingsPage.go @@ -85,6 +85,13 @@ var settingsPage = ` +
+
+
+
Порт для входящих торрент подключений (0 - случайный порт)
+
+ +

@@ -149,6 +156,7 @@ var settingsPage = ` data.UploadRateLimit = Number($('#UploadRateLimit').val()); data.RetrackersMode = Number($('#RetrackersMode').val()); + data.ListenPort = Number($('#ListenPort').val()); $.post("/settings/write", JSON.stringify(data)) .done(function(data) { @@ -179,6 +187,7 @@ var settingsPage = ` $('#UploadRateLimit').val(data.UploadRateLimit); $('#RetrackersMode').val(data.RetrackersMode); + $('#ListenPort').val(data.ListenPort); }); };