You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
73 lines
2.1 KiB
73 lines
2.1 KiB
//
|
|
// RewardItemCollectionViewCell.swift
|
|
// GME Remit
|
|
//
|
|
// Created by InKwon Devik Kim on 11/04/2019.
|
|
// Copyright © 2019 Gobal Money Express Co. Ltd. All rights reserved.
|
|
//
|
|
|
|
import UIKit
|
|
import Kingfisher
|
|
|
|
class RewardItemCollectionViewCell: UICollectionViewCell {
|
|
@IBOutlet weak var itemImage: UIImageView!
|
|
@IBOutlet weak var itemNameLabel: UILabel!
|
|
@IBOutlet weak var itemPriceLabel: UILabel!
|
|
@IBOutlet weak var redeemButton: UIButton!
|
|
@IBOutlet weak var contentsView: UIView!
|
|
@IBOutlet weak var pointTitleLabel: UILabel!
|
|
|
|
private var model: RewardProduct?
|
|
|
|
weak var delegate: RewardViewInterface?
|
|
|
|
func setModel(with model: RewardProduct?, delegate: RewardViewInterface?) {
|
|
if let imageData = model?.productImgPath,
|
|
let url = URL(string: imageData) {
|
|
itemImage.kf.setImage(with: url)
|
|
}
|
|
|
|
self.itemNameLabel.text = model?.productName
|
|
self.itemPriceLabel.text = model?.pointPrice?.likeCommaMoney()
|
|
|
|
self.model = model
|
|
self.delegate = delegate
|
|
|
|
self.setUI()
|
|
}
|
|
|
|
private func setUI() {
|
|
self.contentsView.layer.cornerRadius = 5
|
|
self.setButton()
|
|
setMultiLanguage()
|
|
}
|
|
|
|
func setButton() {
|
|
// self.redeemButton.layer.cornerRadius = 10
|
|
self.redeemButton.addTarget(self, action: #selector(redeemButtonTouch), for: .touchUpInside)
|
|
|
|
let totalPoint = GMEDB.shared.user.integer(.rewardPoint)
|
|
|
|
let isEnable = totalPoint >= Int(self.model?.pointPrice ?? "") ?? 0
|
|
|
|
self.redeemButton.backgroundColor = isEnable ? .themeRed : .lightGray
|
|
self.redeemButton.isEnabled = isEnable
|
|
|
|
redeemButton.titleLabel?.adjustsFontSizeToFitWidth(true, scale: 0.5)
|
|
redeemButton.titleLabel?.numberOfLines = 2
|
|
|
|
pointTitleLabel.textColor = .themeRed
|
|
itemPriceLabel.textColor = .themeRed
|
|
}
|
|
|
|
private func setMultiLanguage() {
|
|
pointTitleLabel.text = "points_text".localized()
|
|
redeemButton.setTitle("redeem_text".localized(), for: .normal)
|
|
}
|
|
|
|
@objc
|
|
func redeemButtonTouch() {
|
|
print("touched \(self.itemNameLabel.text ?? "") redeem button")
|
|
delegate?.goRedeemViewController(with: self.model)
|
|
}
|
|
}
|