import SwiftUI

struct SecuritySettingsView: View {
    @ObservedObject var viewModel: LoginViewModel
    @State private var isTwoFactorActive = false
    @State private var isEmailSettingsActive = false
    @State private var isAppLockActive = false

    var body: some View {
        List {
            Section(header: Text(NSLocalizedString("Вход и защита аккаунта (заглушка)", comment: "Раздел настроек безопасности для аутентификации"))) {
                NavigationLink(isActive: $isTwoFactorActive) {
                    TwoFactorAuthView()
                } label: {
                    Label(NSLocalizedString("Двухфакторная аутентификация", comment: "Переход к настройкам двухфакторной аутентификации"), systemImage: "lock.shield")
                }
                
                NavigationLink(isActive: $isEmailSettingsActive) {
                    EmailSecuritySettingsView()
                } label: {
                    Label(NSLocalizedString("Настройки email", comment: "Переход к настройкам безопасности email"), systemImage: "envelope")
                }

                NavigationLink(isActive: $isAppLockActive) {
                    AppLockSettingsView()
                } label: {
                    Label(NSLocalizedString("Пароль на приложение", comment: "Переход к настройкам пароля на приложение"), systemImage: "lock.square")
                }
            }

            Section(header: Text(NSLocalizedString("Приватность и контроль", comment: ""))) {

                NavigationLink(destination: EditPrivacyView()) {
                    Label(NSLocalizedString("Конфиденциальность", comment: ""), systemImage: "lock.fill")
                }

                NavigationLink(destination: ChangePasswordView()) {
                    Label(NSLocalizedString("Сменить пароль", comment: ""), systemImage: "key")
                }
                NavigationLink(destination: ActiveSessionsView()) {
                    Label(NSLocalizedString("Активные сессии", comment: ""), systemImage: "iphone")
                }
                
            }
        }
        .listStyle(.insetGrouped)
        .navigationTitle(NSLocalizedString("Безопасность", comment: "Заголовок экрана настроек безопасности"))
        .navigationBarTitleDisplayMode(.inline)
//        .onAppear { handleSecuritySettingsOnboardingIfNeeded() }
//        .onChange(of: viewModel.onboardingDestination) { _ in
//            handleSecuritySettingsOnboardingIfNeeded()
//        }
    }

//    private func handleSecuritySettingsOnboardingIfNeeded() {
//        guard viewModel.onboardingDestination == .securitySettings else { return }
//        guard !isTwoFactorActive else {
//            viewModel.onboardingDestination = nil
//            return
//        }
//        DispatchQueue.main.async {
//            isTwoFactorActive = true
//            viewModel.onboardingDestination = nil
//        }
//    }
}

#if DEBUG
struct SecuritySettingsView_Previews: PreviewProvider {
    static var previews: some View {
        NavigationView {
            SecuritySettingsView(viewModel: LoginViewModel())
        }
    }
}
#endif
