}
}
+ static func activateOnDemandDetailText(for activateOnDemandSetting: ActivateOnDemandSetting?) -> String {
+ if let activateOnDemandSetting = activateOnDemandSetting {
+ if (activateOnDemandSetting.isActivateOnDemandEnabled) {
+ return TunnelViewModel.activateOnDemandOptionText(for: activateOnDemandSetting.activateOnDemandOption)
+ } else {
+ return TunnelViewModel.activateOnDemandOptionText(for: .none)
+ }
+ } else {
+ return TunnelViewModel.activateOnDemandOptionText(for: .none)
+ }
+ }
+
func defaultActivateOnDemandOption() -> ActivateOnDemandOption {
return .useOnDemandOverWiFiOrCellular
}
}
func update(from activateOnDemandSetting: ActivateOnDemandSetting?) {
- let detailText: String
- if let activateOnDemandSetting = activateOnDemandSetting {
- if (activateOnDemandSetting.isActivateOnDemandEnabled) {
- switch (activateOnDemandSetting.activateOnDemandOption) {
- case .none:
- detailText = "Off"
- case .useOnDemandOverWiFiOrCellular:
- detailText = "Wi-Fi or cellular"
- case .useOnDemandOverWiFiOnly:
- detailText = "Wi-Fi only"
- case .useOnDemandOverCellularOnly:
- detailText = "Cellular only"
- }
- } else {
- detailText = "Off"
- }
- } else {
- detailText = "Off"
- }
- detailTextLabel?.text = detailText
+ detailTextLabel?.text = TunnelViewModel.activateOnDemandDetailText(for: activateOnDemandSetting)
}
override func prepareForReuse() {