//
//  YHSheetSelectCell.swift
//  galaxy
//
//  Created by edy on 2024/1/26.
//  Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//

import UIKit


class YHFormItemSelectSheetCell: UITableViewCell {

    static let cellReuseIdentifier = "YHFormItemSelectSheetCell"
    
    // 是否必填 如必填title会展示红色*
    var isMust = false
    var title:String? {
        didSet {
            
            if let title = title {
                let str = (isMust ? ("*"+title) : title)
                let attributes: [NSAttributedString.Key: Any] = [
                    .font: UIFont.PFSC_R(ofSize: 14),
                    .foregroundColor: UIColor(hex:0x222222)
                ]
                let questionAttrStr = NSMutableAttributedString(string: str, attributes: attributes)
                if isMust {
                    let starRange = NSRange(location: 0, length: 1)
                    questionAttrStr.addAttribute(NSAttributedString.Key.foregroundColor, value: UIColor(hex:0xFF3A3A), range: starRange)
                }
                titleLabel.attributedText = questionAttrStr
            }
        }
    }
    
    var tips:String? {
        didSet {
            tipsLabel.text = tips
        }
    }
    
    var detail:String? {
        didSet {
            detailLabel.text = detail
            
            if let detail = detail, !detail.isEmpty {
                tipsLabel.isHidden = true
                detailLabel.isHidden = false
            } else {
                tipsLabel.isHidden = false
                detailLabel.isHidden = true
            }
        }
    }
    

    lazy var titleLabel: UILabel = {
        let label = UILabel()
        label.textColor = UIColor(hexString:"#333333")
        label.textAlignment = .left
        label.numberOfLines = 0
        label.font = UIFont.PFSC_R(ofSize: 14)
        return label
    }()
    
    private lazy var detailLabel: UILabel = {
        let label = UILabel()
        label.textColor = UIColor(hexString: "#222222")
        label.textAlignment = .left
        label.font = UIFont.PFSC_R(ofSize: 14)
        label.isHidden = true
        return label
    }()
    
    private lazy var tipsLabel: UILabel = {
        let label = UILabel()
        label.textColor = UIColor(hexString: "#C0C0C0")
        label.text = "请选择".local
        label.textAlignment = .left
        label.font = UIFont.PFSC_R(ofSize: 14)
        label.isHidden = false
        return label
    }()
    
    lazy var arrowImgView: UIImageView = {
        let imgView = UIImageView(image: UIImage(named: "form_right_arrow"))
        return imgView
    }()
    
    required init?(coder: NSCoder) {
        super.init(coder: coder)
    }
    
    override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
        super.init(style: style, reuseIdentifier: reuseIdentifier)
        setupUI()
    }
    
    func setupUI() {
        
        self.selectionStyle = .none
        contentView.addSubview(titleLabel)
        contentView.addSubview(detailLabel)
        contentView.addSubview(tipsLabel)
        contentView.addSubview(arrowImgView)

        titleLabel.snp.makeConstraints { make in
            make.left.equalToSuperview().offset(16)
            make.right.equalTo(detailLabel.snp.left).offset(-8)
            make.width.equalTo(120)
            make.centerY.equalToSuperview()
        }
        
        detailLabel.snp.makeConstraints { make in
            make.right.equalTo(arrowImgView.snp.left)
            make.centerY.equalToSuperview()
        }
        
        tipsLabel.snp.makeConstraints { make in
            make.edges.equalTo(detailLabel)
        }
        arrowImgView.snp.makeConstraints { make in
            make.size.equalTo(CGSizeMake(20, 20))
            make.right.equalToSuperview().offset(-16)
            make.centerY.equalToSuperview()
        }
    }
}
