Commit 738f45ac authored by David黄金龙's avatar David黄金龙

信息完善列表页

parent a6cba741
......@@ -122,6 +122,8 @@
A5D6AB1B2B46A1CC001C10A5 /* YHHomeModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5D6AB1A2B46A1CC001C10A5 /* YHHomeModel.swift */; };
A5D6AB1D2B46AAFB001C10A5 /* YHHomePageViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5D6AB1C2B46AAFB001C10A5 /* YHHomePageViewModel.swift */; };
A5FD63BD2B623C2C00D1D9DA /* YHInformationPerfectListVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5FD63BC2B623C2C00D1D9DA /* YHInformationPerfectListVC.swift */; };
A5FD63BF2B6250BC00D1D9DA /* YHInformationPerfectCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5FD63BE2B6250BC00D1D9DA /* YHInformationPerfectCell.swift */; };
A5FD63C12B62616D00D1D9DA /* YHInformationPerfectModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5FD63C02B62616D00D1D9DA /* YHInformationPerfectModel.swift */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
......@@ -276,6 +278,8 @@
A5D6AB1A2B46A1CC001C10A5 /* YHHomeModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHomeModel.swift; sourceTree = "<group>"; };
A5D6AB1C2B46AAFB001C10A5 /* YHHomePageViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHomePageViewModel.swift; sourceTree = "<group>"; };
A5FD63BC2B623C2C00D1D9DA /* YHInformationPerfectListVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHInformationPerfectListVC.swift; sourceTree = "<group>"; };
A5FD63BE2B6250BC00D1D9DA /* YHInformationPerfectCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHInformationPerfectCell.swift; sourceTree = "<group>"; };
A5FD63C02B62616D00D1D9DA /* YHInformationPerfectModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHInformationPerfectModel.swift; sourceTree = "<group>"; };
B6BB01E4C5DB87B66F0ECE84 /* Pods-galaxy.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-galaxy.release.xcconfig"; path = "Target Support Files/Pods-galaxy/Pods-galaxy.release.xcconfig"; sourceTree = "<group>"; };
/* End PBXFileReference section */
......@@ -711,6 +715,7 @@
isa = PBXGroup;
children = (
A5C382D02B5FAAB300C5E65C /* YHContactItemModel.swift */,
A5FD63C02B62616D00D1D9DA /* YHInformationPerfectModel.swift */,
);
path = M;
sourceTree = "<group>";
......@@ -731,6 +736,7 @@
A5C382C92B5E1F4C00C5E65C /* YHLoginTipsView.swift */,
A5C382CB2B5EA11800C5E65C /* YHContractCell.swift */,
A56D2D602B62020C009C83A8 /* YHContractMainItemStatusCell.swift */,
A5FD63BE2B6250BC00D1D9DA /* YHInformationPerfectCell.swift */,
);
path = V;
sourceTree = "<group>";
......@@ -1098,6 +1104,7 @@
A5ACE9392B4564F7002C94D2 /* UIDevice+Extension.swift in Sources */,
041B52912B5E67F3007EBCEB /* YHSingleLineSelectCell.swift in Sources */,
A5ACE9422B4564F7002C94D2 /* AppDelegate+Extension.swift in Sources */,
A5FD63BF2B6250BC00D1D9DA /* YHInformationPerfectCell.swift in Sources */,
A510441A2B495DD0006B60BB /* UIView+Extension.swift in Sources */,
A5ACE93E2B4564F7002C94D2 /* UIImage+Extension.swift in Sources */,
A5ACE94C2B4564F7002C94D2 /* BsHUDErrorView.swift in Sources */,
......@@ -1123,6 +1130,7 @@
A5C382CF2B5F9A9100C5E65C /* YHServiceCenterMainViewModel.swift in Sources */,
A5C5B2EA2B4ECA4D00A7C5D1 /* YHDavidModel0.swift in Sources */,
A5ACE9572B4564F7002C94D2 /* YHBasicContentView.swift in Sources */,
A5FD63C12B62616D00D1D9DA /* YHInformationPerfectModel.swift in Sources */,
A5C5B3292B57CCBE00A7C5D1 /* YHDavidCell4.swift in Sources */,
049A48A82B49417300D0C641 /* YHAboutUsViewController.swift in Sources */,
A5ACE9582B4564F7002C94D2 /* YHNoDataTipView.swift in Sources */,
......
......@@ -13,13 +13,9 @@ import UIKit
*/
class YHInformationPerfectListVC: YHBaseViewController {
// private let serviceCenterMainReqVM : YHServiceCenterMainViewModel = YHServiceCenterMainViewModel()
private var unfoldFlag : Bool = true //是否展开
private lazy var downArrowImagev : UIImageView = {
let imagV = UIImageView(frame: CGRect(x: KScreenWidth - 16 - 32, y: 17, width: 24, height: 24))
imagV.image = UIImage(named: "service_center_down_arrow")
imagV.contentMode = .scaleAspectFill
return imagV
}()
var arrData : [YHInformationPerfectModel] = []
private lazy var topBkg : UIView = {
let imagV = UIImageView()
......@@ -35,13 +31,13 @@ class YHInformationPerfectListVC: YHBaseViewController {
tableView.separatorStyle = .none
tableView.showsHorizontalScrollIndicator = false
tableView.showsVerticalScrollIndicator = false
tableView.register(YHContractMainItemStatusCell.self,forCellReuseIdentifier: YHContractMainItemStatusCell.cellReuseIdentifier)
tableView.register(YHInformationPerfectCell.self,forCellReuseIdentifier: YHInformationPerfectCell.cellReuseIdentifier)
return tableView
}()
var myHeadView : UIView = {
let view = UIView()
view.backgroundColor = .purple
// view.backgroundColor = .purple//for test hjl
let titleLable = UILabel(text: "您好,黄先生")
titleLable.font = kFont(size: 21)
......@@ -65,7 +61,6 @@ class YHInformationPerfectListVC: YHBaseViewController {
make.top.equalTo(titleLable.snp.bottom).offset(10)
make.left.equalTo(24)
make.right.equalTo(-24)
// make.bottom.equalToSuperview().offset(-16)
}
return view
}()
......@@ -93,6 +88,34 @@ extension YHInformationPerfectListVC {
gk_navBarAlpha = 1.0
gk_navLineHidden = true
let arr = [1,2,3,4,5,6]
let target = 7 //for test hjl 待填写的项目
for item in arr {
let model = YHInformationPerfectModel()
model.type = item
arrData.append(model)
if item < target {
model.isFinished = true
} else {
model.isFinished = false
}
if item == target {
model.isDoing = true
}
if item == target + 1 {
model.isNextDoingCell = true
} else {
model.isNextDoingCell = false
}
}
view.addSubview(topBkg)
topBkg.snp.makeConstraints { make in
make.top.left.right.equalToSuperview()
......@@ -109,24 +132,15 @@ extension YHInformationPerfectListVC {
make.bottom.equalToSuperview()
}
view.layoutIfNeeded()
// view.layoutIfNeeded()
myHeadView.frame = CGRect(x: 0, y: 0, width: KScreenWidth, height: 96)
homeTableView.tableHeaderView = myHeadView
}
@objc func clickUnfoldView() {
unfoldFlag = !unfoldFlag
if unfoldFlag == true {
UIView.animate(withDuration: 0.25) {
self.downArrowImagev.transform = CGAffineTransform.identity
}
} else {
UIView.animate(withDuration: 0.25) {
self.downArrowImagev.transform = CGAffineTransform(rotationAngle: .pi)
}
}
homeTableView.reloadSections(IndexSet(integer: 0), with: UITableView.RowAnimation.automatic)
homeTableView.reloadData()
}
}
......@@ -137,48 +151,17 @@ extension YHInformationPerfectListVC : UITableViewDelegate,UITableViewDataSource
}
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if unfoldFlag == true {
return 10
return 6
}
return 0
}
// func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
// return 0
// }
//
// func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
// let view = UIView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: 60))
// view.backgroundColor = .clear
//
// let lable = UILabel(frame: CGRect(x: 16, y: 0, width: 200, height: 60))
// lable.text = "身份申请"
// lable.font = kFont(size: 17)
// view.addSubview(lable)
// view.addSubview(self.downArrowImagev)
//
// let tap = UITapGestureRecognizer(target: self, action: #selector(clickUnfoldView))
// view.addGestureRecognizer(tap)
// return UIView()
// }
//
// func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
// return 0
// }
//
// func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
// return UIView()
// }
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return YHContractMainItemStatusCell.cellHeight
return YHInformationPerfectCell.cellHeight
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let newCell = tableView.dequeueReusableCell(withClass: YHContractMainItemStatusCell.self)
let newCell = tableView.dequeueReusableCell(withClass: YHInformationPerfectCell.self)
newCell.selectionStyle = .none
newCell.dataModel = arrData[indexPath.row]
return newCell
}
......
//
// YHInformationPerectModel.swift
// galaxy
//
// Created by davidhuangA on 2024/1/25.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHInformationPerfectModel {
var icon : String = ""
var name : String = ""
var type : Int = -1 {
didSet{
isFirstCell = false
isLastestCell = false
if type == 1 {
isFirstCell = true
name = "主申请人信息"
icon = "zsqrxx_icon"
} else if type == 2 {
name = "家庭成员信息"
icon = "jtcyxx_icon"
} else if type == 3 {
name = "基本资料"
icon = "jbzl_icon"
} else if type == 4 {
name = "学历/专业资格"
icon = "xlzyzg_icon"
} else if type == 5 {
name = "工作经验"
icon = "gzjy_icon"
} else if type == 6 {
name = "其他信息"
icon = "qtxx_icon"
isLastestCell = true
}
}
}
var status : String = ""
var color : UIColor = .red
var statusColor : UIColor = .red
var isFinished : Bool = false {
didSet {
status = isFinished ? "已完成" : "待完善"
color = isFinished ? UIColor(hex: 0x222222, alpha: 1.0) : UIColor(hex: 0x888F98, alpha: 1.0)
statusColor = isFinished ? UIColor(hex: 0x3ECDC3, alpha: 1.0) : UIColor(hex: 0x888F98, alpha: 1.0)
if type != 1 {
icon = isFinished ? icon : (icon + "_grey")
}
}
}
var isDoing : Bool = false {
didSet {
color = isDoing ? UIColor(hex: 0x222222, alpha: 1.0) : UIColor(hex: 0x888F98, alpha: 1.0)
statusColor = isDoing ? UIColor(hex: 0x3F8BF8, alpha: 1.0) : UIColor(hex: 0x888F98, alpha: 1.0)
if type != 1 {
icon = isDoing ? icon : (icon + "_grey")
}
}
}
var isNextDoingCell : Bool = false
var isFirstCell : Bool = false
var isLastestCell : Bool = false
}
//
// YHInformationPerfectCell.swift
// galaxy
//
// Created by davidhuangA on 2024/1/25.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHInformationPerfectCell: UITableViewCell {
static let cellReuseIdentifier = "YHInformationPerfectCell"
static let cellHeight :CGFloat = 82
var dataModel : YHInformationPerfectModel? {
didSet {
updateUI()
}
}
private lazy var topImagV : UIImageView = {
let nextImgV = UIImageView()
nextImgV.image = UIImage(named: "top_image")
nextImgV.contentMode = .scaleAspectFill
nextImgV.clipsToBounds = true
return nextImgV
}()
private lazy var midImagV : UIImageView = {
let nextImgV = UIImageView()
nextImgV.image = UIImage(named: "mid_image")
nextImgV.contentMode = .scaleAspectFill
nextImgV.clipsToBounds = true
return nextImgV
}()
private lazy var bottomImagV : UIImageView = {
let nextImgV = UIImageView()
nextImgV.image = UIImage(named: "bottom_image")
nextImgV.contentMode = .scaleAspectFill
nextImgV.clipsToBounds = true
return nextImgV
}()
private lazy var itemImagV : UIImageView = {
let nextImgV = UIImageView()
nextImgV.image = UIImage(named: "zsqr_icon")
nextImgV.contentMode = .scaleAspectFill
return nextImgV
}()
private lazy var itemNameLable : UILabel = {
let lable = UILabel()
lable.textColor = UIColor(red: 0.133, green: 0.133, blue: 0.133, alpha: 1)
lable.font = UIFont(name: "PingFangSC-Medium", size: 17)
lable.text = "主申请人信息"
return lable
}()
private lazy var itemStatusLable : UILabel = {
let lable = UILabel()
lable.textColor = UIColor(red: 0.133, green: 0.133, blue: 0.133, alpha: 1)
lable.font = UIFont(name: "PingFangSC-Medium", size: 17)
lable.text = "已完成"
lable.textAlignment = .right
return lable
}()
private lazy var nextImgV : UIImageView = {
let nextImgV = UIImageView()
nextImgV.image = UIImage(named: "service_center_right_next_icon")
nextImgV.contentMode = .scaleAspectFill
return nextImgV
}()
override func awakeFromNib() {
super.awakeFromNib()
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
}
override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
setupUI()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
extension YHInformationPerfectCell {
func updateUI() {
itemNameLable.text = dataModel?.name
itemNameLable.textColor = dataModel?.color
itemStatusLable.text = dataModel?.status
itemStatusLable.textColor = dataModel?.statusColor
itemImagV.image = UIImage(named: dataModel?.icon ?? "")
//topImagV
if dataModel?.isFirstCell == true {
topImagV.isHidden = true
} else {
topImagV.isHidden = false
if dataModel?.isFinished == true {
topImagV.image = UIImage(named: "top_image")
} else {
if dataModel?.isDoing == true {
topImagV.image = UIImage(named: "top_image")
} else {
topImagV.image = UIImage(named: "bottom_image")
}
}
}
//middle
if dataModel?.isFinished == true {
midImagV.image = UIImage(named: "mid_image")
} else {
if dataModel?.isDoing == true {
midImagV.image = UIImage(named: "mid_image1")
} else {
midImagV.image = UIImage(named: "mid_image2")
}
}
//bottom
if dataModel?.isLastestCell == true {
bottomImagV.isHidden = true
} else {
if dataModel?.isFinished == true {
bottomImagV.image = UIImage(named: "top_image")
} else {
bottomImagV.image = UIImage(named: "bottom_image")
}
}
}
func setupUI() {
backgroundColor = .clear
contentView.backgroundColor = .clear
contentView.addSubview(midImagV)
midImagV.layer.zPosition = 10
midImagV.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.left.equalTo(16)
make.width.height.equalTo(14)
}
contentView.addSubview(topImagV)
topImagV.snp.makeConstraints { make in
make.centerX.equalTo(midImagV)
make.top.equalToSuperview()
make.bottom.equalTo(midImagV.snp.top)
make.width.equalTo(4)
}
contentView.addSubview(bottomImagV)
bottomImagV.snp.makeConstraints { make in
make.centerX.equalTo(midImagV)
make.top.equalTo(midImagV.snp.bottom)
make.width.equalTo(4)
make.bottom.equalToSuperview()
}
let holdView = UIView()
holdView.backgroundColor = .white
holdView.layer.cornerRadius = 12
holdView.clipsToBounds = true
contentView.addSubview(holdView)
holdView.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.height.equalTo(68)
make.right.equalTo(-16)
make.left.equalTo(midImagV.snp.right).offset(16)
}
holdView.addSubview(itemImagV)
itemImagV.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.left.equalTo(21)
make.width.height.equalTo(21)
}
holdView.addSubview(nextImgV)
nextImgV.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.right.equalTo(-18)
make.width.height.equalTo(16)
}
holdView.addSubview(itemStatusLable)
itemStatusLable.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.right.equalTo(nextImgV.snp.left).offset(-4)
make.height.equalTo(20)
}
holdView.addSubview(itemNameLable)
itemNameLable.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.right.equalTo(itemStatusLable.snp.left).offset(-10)
make.height.equalTo(20)
make.left.equalTo(itemImagV.snp.right).offset(12)
}
}
}
{
"images" : [
{
"filename" : "Vector 408.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Vector 408@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Vector 408@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Frame 3459.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Frame 3459@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Frame 3459@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Frame 3459.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Frame 3459@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Frame 3459@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Frame 3457.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Frame 3457@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Frame 3457@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Frame 3457.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Frame 3457@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Frame 3457@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Group 3431.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Group 3431@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Group 3431@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Group 3431.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Group 3431@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Group 3431@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Group 2499.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Group 2499@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Group 2499@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Ellipse 18.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Ellipse 18@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Ellipse 18@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Ellipse 18.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Ellipse 18@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Ellipse 18@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Frame 3459.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Frame 3459@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Frame 3459@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Frame 3459.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Frame 3459@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Frame 3459@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Vector 409.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Vector 409@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Vector 409@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Frame 3459@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Frame 3459@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Frame 3459.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Frame 3459@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Frame 3459@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "Applicant.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Applicant@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Applicant@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment