Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // ProfileActiveOrdersTableViewCell.swift
- // Shop
- //
- // Created by Bogdan Filippov on 16/04/2019.
- // Copyright © 2019 Bogdan Filippov. All rights reserved.
- //
- import UIKit
- class ProfileActiveOrdersTableViewCell: UITableViewCell {
- var activeOrders = OrderCDManager.shared.active
- var orderDidSaveRecordObserver: Any?
- var orderDidSaveRecordsArrayObserver: Any?
- var updateCollection: UpdateCollection?
- @IBOutlet weak var collectionView: UICollectionView!
- @IBOutlet weak var dealHistoryButtouOutlet: UIButton!
- @IBOutlet weak var noneOrdersStringLabel: UILabel!
- // MARK: - Constraints
- @IBOutlet weak var activeOrderBottomConstraint: NSLayoutConstraint?
- var heightAnchorConstraint: NSLayoutConstraint?
- override func awakeFromNib() {
- super.awakeFromNib()
- setupInterface()
- setupDelegates()
- setupActiveOrdersInterface()
- }
- override func willMove(toWindow newWindow: UIWindow?) {
- if newWindow == nil {
- removeObservers()
- } else {
- setupObservers()
- }
- }
- func setupInterface() {
- dealHistoryButtouOutlet.layer.cornerRadius = dealHistoryButtouOutlet.layer.frame.size.height / 2
- dealHistoryButtouOutlet.layer.borderColor = ApplicationColor.green.cgColor
- dealHistoryButtouOutlet.layer.borderWidth = 1
- }
- func setupActiveOrdersInterface() {
- DispatchQueue.main.async {
- if self.activeOrders.count == 0 {
- self.noneOrdersStringLabel.isHidden = false
- self.activeOrderBottomConstraint?.isActive = false
- if self.heightAnchorConstraint == nil {
- self.heightAnchorConstraint = self.contentView.heightAnchor.constraint(equalToConstant: 100)
- if let heightAnchorConstraint = self.heightAnchorConstraint {
- NSLayoutConstraint.activate([
- heightAnchorConstraint
- ])
- }
- }
- self.layoutIfNeeded()
- // self.tableView?.beginUpdates()
- // self.tableView?.endUpdates()
- } else {
- for const in self.contentView.constraints {
- if const.isEqual(self.heightAnchorConstraint) {
- const.constant = 271
- self.heightAnchorConstraint = nil
- }
- }
- self.noneOrdersStringLabel.isHidden = true
- self.activeOrderBottomConstraint?.isActive = true
- self.layoutIfNeeded()
- // self.tableView?.beginUpdates()
- // self.tableView?.endUpdates()
- }
- }
- }
- func setupDelegates() {
- collectionView.delegate = self
- collectionView.dataSource = self
- }
- func setupObservers() {
- orderDidSaveRecordObserver = NotificationCenter.default.addObserver(forName: OrderCDManager.shared.didSaveRecord, object: nil, queue: .main) { (_) in
- self.activeOrders = OrderCDManager.shared.active
- self.setupActiveOrdersInterface()
- self.collectionView.reloadData()
- }
- orderDidSaveRecordsArrayObserver = NotificationCenter.default.addObserver(forName: OrderCDManager.shared.didSaveRecordsArray, object: nil, queue: .main) { (_) in
- self.activeOrders = OrderCDManager.shared.active
- self.setupActiveOrdersInterface()
- self.collectionView.reloadData()
- }
- }
- func removeObservers() {
- if let observer = orderDidSaveRecordObserver {
- NotificationCenter.default.removeObserver(observer)
- }
- if let observer = orderDidSaveRecordsArrayObserver {
- NotificationCenter.default.removeObserver(observer)
- }
- }
- @IBAction func dealsHistoryButtonAction(_ sender: UIButton, forEvent event: UIEvent) {
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement