package com.example.status_saver.adapters;

import android.content.Context;
import android.content.Intent;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;

import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;

import com.bumptech.glide.Glide;
import com.cv.status.R;
import com.example.status_saver.MainActivity;
import com.example.status_saver.PreViewActivity;
import com.example.status_saver.model.StatusModel;

import java.util.ArrayList;
import java.util.List;

public class SaveStatusAdapter extends RecyclerView.Adapter<SaveStatusAdapter.MyViewHolder> {
    Context context;
    MainActivity mainActivity;

    List<StatusModel> imagelist = new ArrayList<>();
    public SaveStatusAdapter(Context context, List<StatusModel> imageslist ) {
        this.context = context;
        mainActivity = (MainActivity) context;
        this.imagelist = imageslist;

    }


    @NonNull
    @Override
    public MyViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(context).inflate(R.layout.single_item, parent, false);
        return new MyViewHolder(view);
    }

    @Override
    public void onBindViewHolder(@NonNull MyViewHolder holder, int position) {
        if (imagelist.get(position).isVideo()) {

            holder.play.setVisibility(View.VISIBLE);
        }
        Glide.with(context)
                .load(imagelist.get(position).getPath())
                .into(holder.img);


        System.out.println("SaveStatusAdapter.onBindViewHolder...."+imagelist.size());

        holder.img.setOnClickListener(v -> {
            Intent intent = new Intent(mainActivity, PreViewActivity.class);
            intent.putExtra("video_path", String.valueOf(imagelist.get(position).getPath()));
            intent.putExtra("location","Save");
            mainActivity.startActivity(intent);
        });
        holder.download.setVisibility(View.GONE);

    }

    @Override
    public int getItemCount() {
        return imagelist.size();
    }
    static class MyViewHolder extends RecyclerView.ViewHolder {
        ImageView img, download, play;

        public MyViewHolder(@NonNull View itemView) {
            super(itemView);
            img = itemView.findViewById(R.id.img);
            download = itemView.findViewById(R.id.download);
            play = itemView.findViewById(R.id.play);

        }
    }


}
