1 package com.moiseum.wolnelektury.view.library;
 
   3 import android.graphics.Color;
 
   4 import android.view.View;
 
   5 import android.widget.ImageView;
 
   6 import android.widget.LinearLayout;
 
   7 import android.widget.TextView;
 
   9 import com.bumptech.glide.Glide;
 
  10 import com.bumptech.glide.load.engine.DiskCacheStrategy;
 
  11 import com.moiseum.wolnelektury.R;
 
  12 import com.moiseum.wolnelektury.components.recycler.ViewHolder;
 
  13 import com.moiseum.wolnelektury.connection.RestClient;
 
  14 import com.moiseum.wolnelektury.connection.models.BookModel;
 
  16 import butterknife.BindView;
 
  22 class BookViewHolder extends ViewHolder<BookModel> {
 
  24         private static final String DEFAULT_OVERLAY_COLOR = "#80db4b16";
 
  26         @BindView(R.id.ivBookCover)
 
  27         ImageView ivBookCover;
 
  28         @BindView(R.id.tvBookAuthor)
 
  29         TextView tvBookAuthor;
 
  30         @BindView(R.id.tvBookTitle)
 
  32         @BindView(R.id.ivAudioBook)
 
  33         ImageView ivAudioBook;
 
  34         @BindView(R.id.llBookContent)
 
  35         LinearLayout llBookContent;
 
  37         BookViewHolder(View view) {
 
  42         public void bind(BookModel item, boolean selected) {
 
  43                 if (item.getCoverThumb() != null) {
 
  44                         String coverUrl = item.getCoverThumb();
 
  45                         if (!coverUrl.contains(RestClient.MEDIA_URL) && !coverUrl.contains(RestClient.MEDIA_URL_HTTPS)) {
 
  46                                 coverUrl = RestClient.MEDIA_URL_HTTPS + coverUrl;
 
  48                         Glide.with(getContext()).load(coverUrl).placeholder(R.drawable.list_nocover).diskCacheStrategy(DiskCacheStrategy.ALL).dontTransform().into(ivBookCover);
 
  50                 tvBookAuthor.setText(item.getAuthor());
 
  51                 tvBookTitle.setText(item.getTitle());
 
  52                 ivAudioBook.setVisibility(item.isHasAudio() ? View.VISIBLE : View.GONE);
 
  53                 String colorHash = item.getCoverColor() != null ? item.getCoverColor() : DEFAULT_OVERLAY_COLOR;
 
  54                 llBookContent.setBackgroundColor(Color.parseColor(colorHash));