2023-04-08 13:43:26 +02:00
|
|
|
package com.denizk0461.studip.adapter
|
|
|
|
|
|
|
|
|
|
import android.util.Log
|
|
|
|
|
import android.view.LayoutInflater
|
|
|
|
|
import android.view.ViewGroup
|
|
|
|
|
import androidx.recyclerview.widget.RecyclerView
|
|
|
|
|
import com.denizk0461.studip.data.StudIPEvent
|
|
|
|
|
import com.denizk0461.studip.databinding.ItemEventBinding
|
|
|
|
|
import com.denizk0461.studip.databinding.ItemEventPageBinding
|
|
|
|
|
|
|
|
|
|
class StudIPEventAdapter(private val events: List<StudIPEvent>) : RecyclerView.Adapter<StudIPEventAdapter.EventViewHolder>() {
|
|
|
|
|
|
2023-04-08 15:44:07 +02:00
|
|
|
class EventViewHolder(val binding: ItemEventBinding) : RecyclerView.ViewHolder(binding.root)
|
2023-04-08 13:43:26 +02:00
|
|
|
|
|
|
|
|
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): EventViewHolder = EventViewHolder(
|
2023-04-08 15:44:07 +02:00
|
|
|
ItemEventBinding.inflate(
|
2023-04-08 13:43:26 +02:00
|
|
|
LayoutInflater.from(parent.context),
|
|
|
|
|
parent,
|
|
|
|
|
false
|
|
|
|
|
)
|
|
|
|
|
)
|
|
|
|
|
|
2023-04-08 15:44:07 +02:00
|
|
|
override fun getItemCount(): Int = events.size
|
2023-04-08 13:43:26 +02:00
|
|
|
|
|
|
|
|
override fun onBindViewHolder(holder: EventViewHolder, position: Int) {
|
2023-04-08 15:44:07 +02:00
|
|
|
val currentItem = events[position]
|
|
|
|
|
// var itemCount = 0
|
|
|
|
|
// events.filter { it.day == position }.forEach { event ->
|
|
|
|
|
// val newView = ItemEventBinding.inflate(
|
|
|
|
|
// LayoutInflater.from(holder.binding.root.context),
|
|
|
|
|
// holder.binding.root,
|
|
|
|
|
// false
|
|
|
|
|
// ).also { item ->
|
|
|
|
|
// Log.d("HELLO", "generating ${event.title}...2")
|
|
|
|
|
// itemCount += 1
|
|
|
|
|
holder.binding.textTitle.text = currentItem.title
|
|
|
|
|
holder.binding.textLecturers.text = currentItem.lecturer.joinToString(", ")
|
|
|
|
|
holder.binding.textRoom.text = currentItem.room
|
|
|
|
|
holder.binding.textTimeslot.text = currentItem.timeslot
|
|
|
|
|
// }
|
|
|
|
|
// holder.binding.pageLayout.addView(newView.root)
|
|
|
|
|
// }
|
|
|
|
|
// if (itemCount == 0) {
|
|
|
|
|
// // TODO inflate view saying "no events!" or sth
|
|
|
|
|
// }
|
2023-04-08 13:43:26 +02:00
|
|
|
}
|
|
|
|
|
}
|