From 1a1344a48676a3bc72dd8bf8ee544236611a3b84 Mon Sep 17 00:00:00 2001 From: JOhn Date: Mon, 27 Jul 2026 14:05:59 -0400 Subject: [PATCH] update: updated firewall and dns settings --- gui/v2/actions/settings_data.py | 24 +++++++++---------- gui/v2/ui/pages/settings_page.py | 40 ++++++++------------------------ 2 files changed, 21 insertions(+), 43 deletions(-) diff --git a/gui/v2/actions/settings_data.py b/gui/v2/actions/settings_data.py index 883da48..851743b 100755 --- a/gui/v2/actions/settings_data.py +++ b/gui/v2/actions/settings_data.py @@ -12,26 +12,24 @@ from gui.v2.actions.ticket_failure import get_ticket_verification_failure -def read_connection_setting(gui_config_file, key): +def read_firewall_setting(gui_config_file=None): try: - config = load_gui_config(gui_config_file) - if config and "connection_settings" in config: - return bool(config["connection_settings"].get(key, False)) + configuration = ConfigurationController.get() + if configuration is not None: + return bool(configuration.firewall) except Exception: pass return False -def read_firewall_setting(gui_config_file=None): - if gui_config_file is None: - return False - return read_connection_setting(gui_config_file, "firewall_enabled") - - def read_managed_dns_setting(gui_config_file=None): - if gui_config_file is None: - return False - return read_connection_setting(gui_config_file, "managed_dns_enabled") + try: + configuration = ConfigurationController.get() + if configuration is not None: + return bool(configuration.dns) + except Exception: + pass + return False def read_systemwide_enabled(): diff --git a/gui/v2/ui/pages/settings_page.py b/gui/v2/ui/pages/settings_page.py index 06ceb04..c8ddba9 100755 --- a/gui/v2/ui/pages/settings_page.py +++ b/gui/v2/ui/pages/settings_page.py @@ -1450,8 +1450,8 @@ class Settings(Page): self.systemwide_page = self.create_systemwide_page() self.bwrap_page = self.create_bwrap_page() self.connection_page = self.create_connection_page() - self.logs_page = self.create_logs_page() self.delete_page = self.create_delete_page() + self.logs_page = self.create_logs_page() self.debug_page = self.create_debug_page() self.content_layout.addWidget(self.account_page) @@ -1462,8 +1462,8 @@ class Settings(Page): self.content_layout.addWidget(self.systemwide_page) self.content_layout.addWidget(self.bwrap_page) self.content_layout.addWidget(self.connection_page) - self.content_layout.addWidget(self.logs_page) self.content_layout.addWidget(self.delete_page) + self.content_layout.addWidget(self.logs_page) self.content_layout.addWidget(self.debug_page) self.content_layout.setCurrentIndex(0) @@ -2119,7 +2119,7 @@ class Settings(Page): def load_firewall_settings(self, enabled=None): if enabled is None: - enabled = self.read_gui_connection_setting("firewall_enabled") + enabled = settings_data.read_firewall_setting() self.firewall_toggle.setChecked(enabled) if enabled: self.firewall_status_value.setText("Enabled") @@ -2133,7 +2133,7 @@ class Settings(Page): def load_managed_dns_settings(self, enabled=None): if enabled is None: - enabled = self.read_gui_connection_setting("managed_dns_enabled") + enabled = settings_data.read_managed_dns_setting() self.managed_dns_toggle.setChecked(enabled) if enabled: self.managed_dns_status_value.setText("Enabled") @@ -2185,7 +2185,10 @@ class Settings(Page): firewall_enabled = self.firewall_toggle.isChecked() managed_dns_enabled = self.managed_dns_toggle.isChecked() try: - self.save_gui_connection_settings(firewall_enabled, managed_dns_enabled) + ConfigurationController.change_firewall(firewall_enabled) + ConfigurationController.change_dns(managed_dns_enabled) + self._prepared["firewall_setting"] = firewall_enabled + self._prepared["managed_dns_setting"] = managed_dns_enabled self.load_firewall_settings(firewall_enabled) self.load_managed_dns_settings(managed_dns_enabled) self.update_status.update_status( @@ -2204,29 +2207,6 @@ class Settings(Page): self.save_connection_settings() - def read_gui_connection_setting(self, key): - try: - config = self.update_status._load_gui_config() - if config and "connection_settings" in config: - return bool(config["connection_settings"].get(key, False)) - except Exception: - pass - return False - - - def save_gui_connection_settings(self, firewall_enabled, managed_dns_enabled): - config = self.update_status._load_gui_config() - if config is None: - config = {} - if "connection_settings" not in config: - config["connection_settings"] = {} - config["connection_settings"]["firewall_enabled"] = firewall_enabled - config["connection_settings"]["managed_dns_enabled"] = managed_dns_enabled - self.update_status._save_gui_config(config) - self._prepared["firewall_setting"] = firewall_enabled - self._prepared["managed_dns_setting"] = managed_dns_enabled - - def connection_settings_gate(self): installed, install_message = self.networking_scripts_installed() if not installed: @@ -2431,8 +2411,8 @@ class Settings(Page): layout.addStretch() self.load_firewall_settings( - self._prepared_value("firewall_setting", lambda: self.read_gui_connection_setting("firewall_enabled"))) + self._prepared_value("firewall_setting", settings_data.read_firewall_setting)) self.load_managed_dns_settings( - self._prepared_value("managed_dns_setting", lambda: self.read_gui_connection_setting("managed_dns_enabled"))) + self._prepared_value("managed_dns_setting", settings_data.read_managed_dns_setting)) self.refresh_connection_settings_gate() return page