(enable bool)
| 1040 | } |
| 1041 | |
| 1042 | func (a *App) ToggleAdBlock(enable bool) error { |
| 1043 | if a.config == nil { |
| 1044 | return fmt.Errorf("config manager not initialized") |
| 1045 | } |
| 1046 | cfg := a.config.GetConfig() |
| 1047 | cfg.Settings.AdBlock = enable |
| 1048 | if err := a.config.SaveConfig(cfg); err != nil { |
| 1049 | return err |
| 1050 | } |
| 1051 | if a.proxy != nil && a.proxy.GetStatus().IsConnected { |
| 1052 | result := a.proxy.ReconnectWithRoutingRules(a.ctx, proxy.RoutingMode(cfg.RoutingRules.Mode), cfg.RoutingRules.Whitelist, cfg.RoutingRules.AppWhitelist) |
| 1053 | if !result.Success { |
| 1054 | a.log.Warning(fmt.Sprintf("[ADBLOCK] Переподключение после переключения: %s", result.Message)) |
| 1055 | } |
| 1056 | } |
| 1057 | return nil |
| 1058 | } |
| 1059 | |
| 1060 | // StartMITM implements proxy.AdBlockCoordinator. |
| 1061 | func (a *App) StartMITM(upstreamPort int) (int, error) { |
nothing calls this directly
no test coverage detected