This repository has been archived by the owner on Apr 15, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
HomeUtopianViewController.swift
82 lines (65 loc) · 2.52 KB
/
HomeUtopianViewController.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
//
// HomeUtopianViewController.swift
// SteemitApp
//
// Created by Burak Tayfun on 2/18/18.
// Copyright © 2018 Burak Tayfun. All rights reserved.
//
import UIKit
class HomeUtopianViewController: BaseViewController {
let nm = NetworkManager()
let helper = Helpers()
@IBOutlet weak var percentView: ThoSlider!
@IBOutlet weak var steemPowerPercentLabel: UILabel!
@IBOutlet weak var lastVoteTimeLabel: ThoLabel!
@IBOutlet weak var postNumberLabel: ThoLabel!
@IBOutlet weak var moderatorNumberButton: ThoButton!
@IBOutlet weak var totalPendingPostsCount: UILabel!
var moderators = [UtopianModeratorModel]()
override func viewDidLoad() {
getUtopianInfo()
}
private func getUtopianInfo() {
nm.getSteemitAccount(user: "utopian-io", success: { utopianData in
self.updateUserInfo(utopianData)
}) { (error) in
print(error)
}
nm.getUtopianModeratorList(success: { (mods) in
self.moderators = mods
self.moderatorNumberButton.setTitle("\(self.moderators.count)", for: .normal)
}) { (error) in
print(error)
}
nm.getUtopianTotalPostCount(success: { totalPostCount in
self.postNumberLabel.text = "\(totalPostCount)"
}) { (error) in
print(error)
}
nm.getUtopianPendingPostCount(success: { (pendingPosts) in
self.totalPendingPostsCount.text = "\(pendingPosts.total)"
}) { (error) in
print(error)
}
}
private func updateUserInfo(_ user: UserModel) {
if let voteTime = user.lastvoteTime {
let totalVP = helper.calculateVotePower(voteTime, user.votingPower)
percentView.updateBar(totalVP / 100)
steemPowerPercentLabel.text = "% " + String(format: "%.2f", totalVP)
}
lastVoteTimeLabel.text = Date.UTCToLocal(date: (user.lastvoteTime?.replacingOccurrences(of: "T", with: " "))!)
}
@IBAction func showMods(_ sender: Any) {
performSegue(withIdentifier: "showMods", sender: nil)
}
@IBAction func closeScreen(_ sender: Any) {
self.navigationController?.dismiss(animated: true, completion: nil)
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "showMods" {
let vc = segue.destination as! ModeratorListViewController
vc.moderators = moderators
}
}
}