Skip to content

Commit 99a014c

Browse files
committed
add: configure the cells
1 parent 3217925 commit 99a014c

5 files changed

Lines changed: 22 additions & 5 deletions

File tree

WordPress/Classes/ViewRelated/Blog/Blog Dashboard/BlogDashboardViewController.swift

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
import UIKit
22

3-
typealias DashboardCollectionViewCell = UICollectionViewCell & Reusable
3+
typealias DashboardCollectionViewCell = UICollectionViewCell & Reusable & BlogDashboardCardConfigurable
4+
5+
protocol BlogDashboardCardConfigurable {
6+
func configure(blog: Blog, viewController: BlogDashboardViewController?)
7+
}
48

59
final class BlogDashboardViewController: UIViewController {
610

WordPress/Classes/ViewRelated/Blog/Blog Dashboard/Cards/Posts/DashboardPostsCardCell.swift

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,11 @@
11
import UIKit
22

3-
class DashboardPostsCardCell: UICollectionViewCell, Reusable {
4-
func configure(_ viewController: UIViewController, blog: Blog) {
3+
class DashboardPostsCardCell: UICollectionViewCell, Reusable, BlogDashboardCardConfigurable {
4+
func configure(blog: Blog, viewController: BlogDashboardViewController?) {
5+
guard let viewController = viewController else {
6+
return
7+
}
8+
59
let postsViewController = PostsCardViewController(blog: blog)
610
viewController.addChild(postsViewController)
711
contentView.addSubview(postsViewController.view)
Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
import UIKit
22

3-
class DashboardStatsCardCell: UICollectionViewCell, Reusable {
4-
3+
class DashboardStatsCardCell: UICollectionViewCell, Reusable, BlogDashboardCardConfigurable {
4+
func configure(blog: Blog, viewController: BlogDashboardViewController?) {
5+
6+
}
57
}

WordPress/Classes/ViewRelated/Blog/Blog Dashboard/HostCollectionViewCell.swift

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,3 +47,9 @@ class HostCollectionViewCell<Content>: UICollectionViewCell, Hostable where Cont
4747
}
4848

4949
extension HostCollectionViewCell: Reusable { }
50+
51+
extension HostCollectionViewCell: BlogDashboardCardConfigurable {
52+
func configure(blog: Blog, viewController: BlogDashboardViewController?) {
53+
hostedView = QuickLinksView(title: "Quick Links") as? Content
54+
}
55+
}

WordPress/Classes/ViewRelated/Blog/Blog Dashboard/ViewModel/BlogDashboardViewModel.swift

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ class BlogDashboardViewModel {
3535

3636
let cellType = identifier.id.cell
3737
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: cellType.defaultReuseID, for: indexPath)
38+
(cell as? BlogDashboardCardConfigurable)?.configure(blog: blog, viewController: viewController)
3839
return cell
3940

4041
}

0 commit comments

Comments
 (0)