From 26cb600ae31f905d1f9907fef671a5aa48d37a8e Mon Sep 17 00:00:00 2001 From: shortcutme Date: Sat, 28 Apr 2018 22:05:38 +0200 Subject: [PATCH] Display tor bridge enable button if all tracker connection fails --- src/Ui/media/Loading.coffee | 18 ++++++++++++++++-- src/Ui/media/Wrapper.coffee | 3 +++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/src/Ui/media/Loading.coffee b/src/Ui/media/Loading.coffee index b1ffba1f..99b89e0e 100644 --- a/src/Ui/media/Loading.coffee +++ b/src/Ui/media/Loading.coffee @@ -3,7 +3,6 @@ class Loading if window.show_loadingscreen then @showScreen() @timer_hide = null - setProgress: (percent) -> if @timer_hide clearInterval @timer_hide @@ -28,13 +27,28 @@ class Loading line = @printLine("Site size: #{parseInt(site_info.settings.size/1024/1024)}MB is larger than default allowed #{parseInt(site_info.size_limit)}MB", "warning") button = $("" + "Open site and set size limit to #{site_info.next_size_limit}MB" + "") button.on "click", => + button.addClass("loading") return @wrapper.setSizeLimit(site_info.next_size_limit) line.after(button) setTimeout (=> @printLine('Ready.') ), 100 - + showTrackerTorBridge: (server_info) -> + if $(".console .button-settrackerbridge").length == 0 and not server_info.tor_use_meek_bridges + line = @printLine("Tracker connection error detected.", "error") + button = $("" + "Use Tor meek bridges for tracker connections" + "") + button.on "click", => + button.addClass("loading") + @wrapper.ws.cmd "configSet", ["tor_use_bridges", ""] + @wrapper.ws.cmd "configSet", ["trackers_proxy", "tor"] + @wrapper.ws.cmd "siteUpdate", @wrapper.site_info.address + @wrapper.reloadIframe() + return false + line.after(button) + if not server_info.tor_has_meek_bridges + button.addClass("disabled") + @printLine("No meek bridge support in your client, please download the latest bundle.", "warning") # We dont need loadingscreen anymore hideScreen: -> diff --git a/src/Ui/media/Wrapper.coffee b/src/Ui/media/Wrapper.coffee index 9f786c7a..139d9b05 100644 --- a/src/Ui/media/Wrapper.coffee +++ b/src/Ui/media/Wrapper.coffee @@ -548,6 +548,9 @@ class Wrapper else @announcer_line = @loading.printLine(status_line) + if status_db.error?.length == (key for key of announcer_info.stats).length + @loading.showTrackerTorBridge(@server_info) + updateProgress: (site_info) -> if site_info.tasks > 0 and site_info.started_task_num > 0 @loading.setProgress 1-(Math.max(site_info.tasks, site_info.bad_files) / site_info.started_task_num)