--- /dev/null
+//
+// BookDescriptionView.swift
+// WolneLektury
+//
+// Created by Pawel Dabrowski on 18/06/2018.
+// Copyright © 2018 Fundacja Nowoczesna Polska. All rights reserved.
+//
+
+import UIKit
+
+class BookDescriptionView: DesignableXibView {
+
+ @IBOutlet weak var authorLabel: UILabel!
+ @IBOutlet weak var titleLabel: UILabel!
+
+ @IBOutlet weak var epochTitleLabel: UILabel!
+ @IBOutlet weak var kindTitleLabel: UILabel!
+ @IBOutlet weak var genreTitleLabel: UILabel!
+
+ @IBOutlet weak var epochLabel: UILabel!
+ @IBOutlet weak var kindLabel: UILabel!
+ @IBOutlet weak var genreLabel: UILabel!
+
+ @IBOutlet weak var lineView: UIView!
+
+ @IBOutlet weak var descFirstImageView: UIImageView!
+ @IBOutlet weak var descFirstLabel: UILabel!
+ @IBOutlet weak var descSecondImageView: UIImageView!
+ @IBOutlet weak var descSecondLabel: UILabel!
+
+ @IBOutlet weak var epochTopConstraint: NSLayoutConstraint!
+ @IBOutlet weak var titleLabelTrailingConstraint: NSLayoutConstraint!
+
+ @IBOutlet weak var trashButton: UIButton!
+
+ let orangeTextColor = UIColor(red: 255.0/255.0, green: 165/255.0, blue: 0, alpha: 1.0)
+ let whiteTextColor = UIColor.white
+
+ override func awakeFromNib() {
+ super.awakeFromNib()
+ epochTitleLabel.text = "book_epoch".localized.uppercased()
+ kindTitleLabel.text = "book_kind".localized.uppercased()
+ genreTitleLabel.text = "book_genre".localized.uppercased()
+ descFirstImageView.tintColor = lineView.backgroundColor
+ descSecondImageView.tintColor = lineView.backgroundColor
+ descFirstImageView.image = #imageLiteral(resourceName: "icon_glasses-mid")
+ descSecondImageView.image = #imageLiteral(resourceName: "icon_speaker-mid")
+ setTrashButtonHidden(isHidden: true)
+ }
+
+ func setDescViewsVisibility(hidden: Bool){
+ descFirstImageView.isHidden = hidden
+ descFirstLabel.isHidden = hidden
+ descSecondImageView.isHidden = hidden
+ descSecondLabel.isHidden = hidden
+
+ epochTopConstraint.constant = hidden ? 10 : 30
+ }
+
+ func setup(bookModel: BookModel, isPremium: Bool = false){
+ setDescViewsVisibility(hidden: false)
+
+ descSecondImageView.isHidden = !bookModel.has_audio
+ descSecondLabel.isHidden = !bookModel.has_audio
+ if isPremium{
+
+ authorLabel.textColor = whiteTextColor
+ epochTitleLabel.textColor = whiteTextColor
+ kindTitleLabel.textColor = whiteTextColor
+ genreTitleLabel.textColor = whiteTextColor
+
+ descFirstImageView.tintColor = whiteTextColor
+ descFirstLabel.textColor = whiteTextColor
+ descSecondImageView.tintColor = whiteTextColor
+ descSecondLabel.textColor = whiteTextColor
+
+ lineView.backgroundColor = whiteTextColor
+
+ titleLabel.textColor = orangeTextColor
+ epochLabel.textColor = orangeTextColor
+ kindLabel.textColor = orangeTextColor
+ genreLabel.textColor = orangeTextColor
+ }
+
+ authorLabel.text = bookModel.author
+ titleLabel.text = bookModel.title
+ epochLabel.text = bookModel.epoch
+ kindLabel.text = bookModel.kind
+ genreLabel.text = bookModel.genre
+ }
+
+ func setup(bookDetailsModel: BookDetailsModel){
+ setDescViewsVisibility(hidden: false)
+
+ authorLabel.text = bookDetailsModel.getAuthor()
+ titleLabel.text = bookDetailsModel.title
+ epochLabel.text = bookDetailsModel.getEpochs()
+ kindLabel.text = bookDetailsModel.getKinds()
+ genreLabel.text = bookDetailsModel.getGenres()
+
+ if bookDetailsModel.totalChapters > 0 && bookDetailsModel.currentChapter <= bookDetailsModel.totalChapters{
+ let progress = Double(bookDetailsModel.currentChapter)/Double(bookDetailsModel.totalChapters) * 100.0
+ descFirstLabel.text = String(format: "reading_progress".localized, progress).uppercased()
+ }
+ else {
+ descFirstLabel.text = ""
+ }
+
+ descSecondImageView.isHidden = bookDetailsModel.audio_length.count == 0
+ descSecondLabel.isHidden = bookDetailsModel.audio_length.count == 0
+
+ /*
+ if bookDetailsModel.totalAudioChapters > 0 && bookDetailsModel.currentAudioChapter < bookDetailsModel.totalAudioChapters{
+ let progress = Double(bookDetailsModel.currentAudioChapter + 1)/Double(bookDetailsModel.totalAudioChapters) * 100.0
+ descSecondLabel.text = String(format: "listening_progress".localized, progress).uppercased()
+ }
+ else {
+ descSecondLabel.text = ""
+ }
+ */
+ setTrashButtonHidden(isHidden: false)
+ }
+
+ func setTrashButtonHidden(isHidden: Bool){
+ trashButton.isHidden = isHidden
+ titleLabelTrailingConstraint.constant = isHidden ? 0 : 30
+ }
+
+}