package com.garethevans.church.opensongtablet;
import android.graphics.drawable.GradientDrawable;
import android.support.design.widget.FloatingActionButton;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.RelativeLayout;
import android.widget.TextView;
import java.util.Collections;
import java.util.List;
public class MyAdapter extends RecyclerView.Adapter<MyAdapter.SetItemViewHolder> {
//private static List<SetItemInfo> setList;
private List<SetItemInfo> setList;
public MyAdapter(List<SetItemInfo> setList) {
this.setList = setList;
}
@Override
public int getItemCount() {
return setList.size();
}
@Override
public void onBindViewHolder(SetItemViewHolder setitemViewHolder, int i) {
SetItemInfo si = setList.get(i);
setitemViewHolder.vItem.setText(si.songitem);
String newfoldername = si.songfolder;
if (newfoldername.startsWith("**")) {
newfoldername = newfoldername.replace("**","");
}
setitemViewHolder.vSongTitle.setText(si.songtitle);
setitemViewHolder.vSongFolder.setText(newfoldername);
boolean issong = false;
if (si.songicon.equals(FullscreenActivity.text_slide)) {
//setitemViewHolder.vIcon.setImageResource(R.drawable.blackout_project_dark);
setitemViewHolder.vIcon.setImageResource(R.drawable.ic_projector_screen_white_18dp);
} else if (si.songicon.equals(FullscreenActivity.text_note)) {
setitemViewHolder.vIcon.setImageResource(R.drawable.ic_note_text_white_18dp);
} else if (si.songicon.equals(FullscreenActivity.text_scripture)) {
//setitemViewHolder.vIcon.setImageResource(R.drawable.action_scripture_dark);
setitemViewHolder.vIcon.setImageResource(R.drawable.ic_book_white_18dp);
} else if (si.songicon.equals(FullscreenActivity.image)) {
//setitemViewHolder.vIcon.setImageResource(R.drawable.ic_action_picture_dark);
setitemViewHolder.vIcon.setImageResource(R.drawable.ic_image_white_18dp);
} else if (si.songicon.equals(FullscreenActivity.text_variation)) {
//setitemViewHolder.vIcon.setImageResource(R.drawable.action_variation_dark);
setitemViewHolder.vIcon.setImageResource(R.drawable.ic_file_xml_white_18dp);
} else if (si.songicon.equals(".pdf")) {
//setitemViewHolder.vIcon.setImageResource(R.drawable.action_pdf_dark);
setitemViewHolder.vIcon.setImageResource(R.drawable.ic_file_pdf_white_18dp);
} else {
//setitemViewHolder.vIcon.setImageResource(R.drawable.action_song_dark);
setitemViewHolder.vIcon.setImageResource(R.drawable.ic_music_note_white_18dp);
issong = true;
}
String folderrelocate;
if (si.songicon.equals(FullscreenActivity.image)) {
folderrelocate = "../Images/_cache";
} else if (si.songicon.equals(FullscreenActivity.text_note)) {
folderrelocate = "../Notes/_cache";
} else if (si.songicon.equals(FullscreenActivity.text_scripture)) {
folderrelocate = "../Scripture/_cache";
} else if (si.songicon.equals(FullscreenActivity.text_slide)) {
folderrelocate = "../Slides/_cache";
} else if (si.songicon.equals(FullscreenActivity.variation)) {
folderrelocate = "../Variations";
} else {
folderrelocate = si.songfolder;
}
final String songname = si.songtitle;
final String songfolder = folderrelocate;
int getitemnum;
try {
getitemnum = Integer.parseInt(si.songitem.replace(".", ""));
} catch (Exception e) {
getitemnum = 0;
}
getitemnum--;
final int item = getitemnum;
setitemViewHolder.vCard.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FullscreenActivity.songfilename = songname;
if (songfolder.equals(FullscreenActivity.mainfoldername)) {
FullscreenActivity.whatsongforsetwork = "$**_" + songname + "_**$";
} else {
FullscreenActivity.whatsongforsetwork = "$**_" + songfolder + "/" + songname + "_**$";
}
//FullscreenActivity.whatsongforsetwork = songname;
FullscreenActivity.whichSongFolder = songfolder;
FullscreenActivity.indexSongInSet = item;
FullscreenActivity.nextSongInSet = "";
FullscreenActivity.previousSongInSet = "";
// Get set position
boolean issue = false;
if (item > 0 && FullscreenActivity.mSet.length >= item - 1) {
FullscreenActivity.previousSongInSet = FullscreenActivity.mSet[item - 1];
} else {
issue = true;
}
if (item != FullscreenActivity.setSize - 1) {
FullscreenActivity.nextSongInSet = FullscreenActivity.mSet[item + 1];
} else {
issue = true;
}
if (issue) {
SetActions.indexSongInSet();
}
if (FullscreenActivity.whattodo.equals("setitemvariation")) {
PopUpSetViewNew.makeVariation();
} else {
PopUpSetViewNew.loadSong();
}
}
});
if (FullscreenActivity.whattodo.equals("setitemvariation") && !issong) {
// Only songs should be able to have variations
setitemViewHolder.vCard.setOnClickListener(null);
}
}
@Override
public SetItemViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
View itemView = LayoutInflater.
from(viewGroup.getContext()).
inflate(R.layout.recycler_row, viewGroup, false);
RelativeLayout card = (RelativeLayout) itemView.findViewById(R.id.cardview_layout);
card.setBackgroundResource(R.drawable.section_box);
GradientDrawable drawable = (GradientDrawable) card.getBackground();
drawable.setColor(FullscreenActivity.lyricsBackgroundColor);
TextView title = (TextView) itemView.findViewById(R.id.cardview_songtitle);
title.setTextColor(FullscreenActivity.lyricsTextColor);
TextView item = (TextView) itemView.findViewById(R.id.cardview_item);
item.setTextColor(FullscreenActivity.lyricsTextColor);
TextView folder = (TextView) itemView.findViewById(R.id.cardview_folder);
folder.setTextColor(FullscreenActivity.lyricsTextColor);
return new SetItemViewHolder(itemView);
}
public static class SetItemViewHolder extends RecyclerView.ViewHolder {
protected TextView vItem;
protected TextView vSongTitle;
protected TextView vSongFolder;
//protected ImageView vIcon;
protected FloatingActionButton vIcon;
protected RelativeLayout vCard;
public SetItemViewHolder(View v) {
super(v);
vCard = (RelativeLayout) v.findViewById(R.id.cardview_layout);
vItem = (TextView) v.findViewById(R.id.cardview_item);
vSongTitle = (TextView) v.findViewById(R.id.cardview_songtitle);
vSongFolder = (TextView) v.findViewById(R.id.cardview_folder);
vIcon = (FloatingActionButton) v.findViewById(R.id.cardview_icon);
//vIcon = (ImageView) v.findViewById(R.id.cardview_icon);
}
}
public void swap(int firstPosition, int secondPosition){
Collections.swap(setList, firstPosition, secondPosition);
notifyItemMoved(firstPosition, secondPosition);
Collections.swap(FullscreenActivity.mTempSetList, firstPosition, secondPosition);
Collections.swap(PopUpSetViewNew.mSongName, firstPosition, secondPosition);
Collections.swap(PopUpSetViewNew.mFolderName, firstPosition, secondPosition);
}
public void remove(int position) {
setList.remove(position);
notifyItemRemoved(position);
FullscreenActivity.mTempSetList.remove(position);
PopUpSetViewNew.mSongName.remove(position);
PopUpSetViewNew.mFolderName.remove(position);
}
}