ThimraTV/MoviaBox/Class/Rewards/Controller/SPRewardsViewController.swift
2025-05-15 15:31:06 +08:00

68 lines
1.7 KiB
Swift

//
// SPRewardsViewController.swift
// MoviaBox
//
// Created by on 2025/4/28.
//
import UIKit
class SPRewardsViewController: SPCampaignWebViewController {
deinit {
NotificationCenter.default.removeObserver(self)
}
private var isFirst = true
override func viewDidLoad() {
self.urlStr = SPRewardsWebUrl
super.viewDidLoad()
NotificationCenter.default.addObserver(self, selector: #selector(reachabilityDidChangeNotification), name: SPNetworkReachabilityManager.reachabilityDidChangeNotification, object: nil)
NotificationCenter.default.addObserver(self, selector: #selector(loginStateDidChangeNotification), name: SPLoginManager.loginStateDidChangeNotification, object: nil)
setEmptyView()
}
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
if !isFirst {
self.reload()
} else {
isFirst = false
}
}
}
extension SPRewardsViewController {
///
private func setEmptyView() {
if SPNetworkReachabilityManager.manager.isReachable != true {
self.webView.isHidden = true
self.addNoNetworkEmptyView { [weak self] in
self?.reachabilityDidChangeNotification()
}
}
}
@objc private func loginStateDidChangeNotification() {
self.reload()
}
@objc private func reachabilityDidChangeNotification() {
if SPNetworkReachabilityManager.manager.isReachable == true {
self.webView.isHidden = false
self.removeNoNetworkEmptyView()
self.reload()
}
}
}