113 lines
5.3 KiB
Swift
113 lines
5.3 KiB
Swift
//
|
|
// WifiViewController.swift
|
|
// JSONCreator
|
|
//
|
|
// Created by Matt Bruce on 6/27/22.
|
|
// Copyright © 2022 Verizon Wireless. All rights reserved.
|
|
//
|
|
|
|
import Foundation
|
|
import MVMCoreUI
|
|
|
|
class WifiViewController: UIViewController {
|
|
// MFSTLandingViewController *vc=[MFSTLandingViewController new];
|
|
// vc.isForFiveG = true;
|
|
// vc.ssIDs = ssIDs;
|
|
// MFSTHistoryViewController *vc2=[MFSTHistoryViewController new];
|
|
// vc2.isForFiveG = true;
|
|
// NSArray *tabInfo = @[
|
|
// @{
|
|
// @"presentationStyle" : @"push",
|
|
// @"itemName" : kST_OVERVIEW,
|
|
// @"title" : @"kST_OVERVIEW",
|
|
// @"actionType" :@"openPage",
|
|
// @"appContext" : @"mobileFirstSS",
|
|
// @"pageType" : DHCRegistry.PageTypeDHCLanding
|
|
// },
|
|
// @{
|
|
// @"presentationStyle" : @"push",
|
|
// @"itemName" : kST_HISTORY,
|
|
// @"title" : kST_HISTORY,
|
|
// @"actionType" : @"openPage",
|
|
// @"appContext" : @"mobileFirstSS",
|
|
// @"pageType" : DHCRegistry.PageTypeDHCHistoryLanding
|
|
// }
|
|
// ];
|
|
// NSError *error = nil;
|
|
// MFSubNavManagerController *viewControllerToLoad = [[MFSubNavManagerController alloc] initWithViewControllers:@[vc,vc2] loadObject:vc.loadObject tabsInfo:tabInfo selectedIndex: 0 shouldEnableSwipeGestures:YES error:&error];
|
|
// [[MVMCoreNavigationHandler sharedNavigationHandler] pushViewController:viewControllerToLoad animated:YES];
|
|
|
|
}
|
|
|
|
class PrimaryWifiViewController: UIViewController {
|
|
let inset = 16.0
|
|
|
|
private lazy var stackView: UIStackView = {
|
|
let stack = UIStackView(frame: .zero)
|
|
stack.translatesAutoresizingMaskIntoConstraints = false
|
|
stack.spacing = 16
|
|
stack.axis = .vertical
|
|
stack.alignment = .leading
|
|
stack.distribution = .fillProportionally
|
|
return stack
|
|
}()
|
|
|
|
override func viewDidLoad() {
|
|
super.viewDidLoad()
|
|
|
|
view.addSubview(stackView)
|
|
NSLayoutConstraint.constraintPinSubview(stackView,
|
|
pinTop: true, topConstant: inset,
|
|
pinBottom: true, bottomConstant: inset,
|
|
pinLeft: true, leftConstant: inset,
|
|
pinRight: true, rightConstant: inset)
|
|
|
|
let primary1 = wifiWidget(for: "Primary-1", title: "", description: "", password: "123456")
|
|
let primary2 = wifiWidget(for: "Primary-2", title: "", description: "", password: "123456")
|
|
let secondary1 = wifiWidget(for: "Secondary-1", title: "", description: "", password: "123456")
|
|
let secondary2 = wifiWidget(for: "Secondary-2", title: "", description: "", password: "123456")
|
|
|
|
stackView.addArrangedSubview(primary1)
|
|
stackView.addArrangedSubview(primary2)
|
|
stackView.addArrangedSubview(secondary1)
|
|
stackView.addArrangedSubview(secondary2)
|
|
}
|
|
|
|
private func wifiWidget(for wifiId: String, title: String, description: String, password: String, enabled: Bool = true) -> WifiWidget {
|
|
let extraParameters: JSONValueDictionary = ["wifiId": JSONValue.init(stringLiteral: wifiId)]
|
|
|
|
let editAction = ActionOpenPageModel(pageType: "editWifi",
|
|
presentationStyle: "push",
|
|
extraParameters: extraParameters)
|
|
|
|
let enabledAction = ActionOpenPageModel(pageType: "enabledWifi",
|
|
presentationStyle: "push",
|
|
extraParameters: extraParameters)
|
|
|
|
let shareAction = ActionShareModel(sharedText: "ssid: \(wifiId) password: \(password)",
|
|
sharedType: "Text")
|
|
|
|
let wifiWidgetModel = WifiWidgetModel(wifiId: wifiId,
|
|
title: title,
|
|
description: description,
|
|
password: password,
|
|
enabled: enabled,
|
|
editTitle: "Edit Wi-Fi details",
|
|
shareTitle: "Share Wi-Fi",
|
|
enabledAction: enabledAction,
|
|
editAction: editAction,
|
|
shareAction: shareAction,
|
|
useHorizontalMargins: true, leftPadding: inset, rightPadding: inset,
|
|
useVerticalMargins: true, topPadding: inset, bottomPadding: inset)
|
|
|
|
let wifiWidget = WifiWidget(frame: .zero)
|
|
wifiWidget.translatesAutoresizingMaskIntoConstraints = false
|
|
wifiWidget.set(with: wifiWidgetModel, nil, nil)
|
|
|
|
return wifiWidget
|
|
}
|
|
|
|
}
|
|
|
|
|