@@ -16,7 +16,9 @@ protocol UpdateableWithChannel: class {
16protocol NewPostDelegate {
16protocol NewPostDelegate {
17 func addPost(post: Post)
17 func addPost(post: Post)
19−
19+protocol UpdateableWithUser: class {
20+ var user: Model.Users? { get set }
20// MARK:- Controller with posts and channels availiable.
22// MARK:- Controller with posts and channels availiable.
21// Search is availiable within every table (posts and channels). Has button-functionality for boths post and chnnels
23// Search is availiable within every table (posts and channels). Has button-functionality for boths post and chnnels
22class NewsController: UITableViewController, UISearchControllerDelegate, NewPostDelegate, UpdateableWithChannel, DataDelegate
24class NewsController: UITableViewController, UISearchControllerDelegate, NewPostDelegate, UpdateableWithChannel, DataDelegate
@@ -49,7 +51,7 @@ class NewsController: UITableViewController, UISearchControllerDelegate, NewPost
49 navigationItem.title = channel?.title ?? ""
51 navigationItem.title = channel?.title ?? ""
50 Model.getUsers(for: hh ?? []) { [weak self] (dict) in
52 Model.getUsers(for: hh ?? []) { [weak self] (dict) in
51 self?.dictionary = dict
53 self?.dictionary = dict
52− self?.refreshContr?.endRefreshing()
54+ self?.refreshContr.endRefreshing()
@@ -65,11 +67,7 @@ class NewsController: UITableViewController, UISearchControllerDelegate, NewPost
66 var news = NewsVC()
68 var news = NewsVC()
68− var refreshContr: UIRefreshControl? = {
69− let rc = UIRefreshControl()
70+ var refreshContr = UIRefreshControl()
70− rc.addTarget(self, action: #selector(refreshPostsData(_:)), for: .valueChanged)
74 override func viewDidLoad()
72 override func viewDidLoad()
@@ -77,11 +75,8 @@ class NewsController: UITableViewController, UISearchControllerDelegate, NewPost
77 navigationItem.title = "Loading ..."
75 navigationItem.title = "Loading ..."
78 tableView.refreshControl = refreshContr
76 tableView.refreshControl = refreshContr
79 // Configure Refresh Control
77 // Configure Refresh Control
80−
78+ refreshContr.addTarget(self, action: #selector(refreshPostsData(_:)), for: .valueChanged)
81− Model.getLast { [weak self] (channel) in
79+
82− self?.channel = channel
85 tableView.register(PostViewCell.self, forCellReuseIdentifier: postCellId)
80 tableView.register(PostViewCell.self, forCellReuseIdentifier: postCellId)
86 tableView.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
81 tableView.register(UITableViewCell.self, forCellReuseIdentifier: "cell")
@@ -104,11 +99,9 @@ class NewsController: UITableViewController, UISearchControllerDelegate, NewPost
106 @objc func refreshPostsData( _ ff: UIRefreshControl){
101 @objc func refreshPostsData( _ ff: UIRefreshControl){
107− if ff.isRefreshing {
108− Model.getLast { [weak self] (channel) in
102+ Model.getLast { [weak self] (channel) in
109− self?.channel = channel
103+ self?.channel = channel
110− self?.refreshContr?.endRefreshing()
104+ self?.refreshContr.endRefreshing()
@@ -131,7 +124,9 @@ class NewsController: UITableViewController, UISearchControllerDelegate, NewPost
131 searchController.isActive = false
124 searchController.isActive = false
132 // TODO:- display something if no posts are availiable
125 // TODO:- display something if no posts are availiable
134− refreshContr?.beginRefreshing()
127+ Model.getLast { [weak self] (channel) in
128+ self?.channel = channel
136 // tableView.reloadData()
131 // tableView.reloadData()