conventionschedule-android/app/src/main/java/com/adlerosn/brasilfurfest/schedule/adapters/DaysPagerAdapter.kt

37 lines
1.9 KiB
Kotlin
Raw Normal View History

2018-07-13 21:09:43 +00:00
package com.adlerosn.brasilfurfest.schedule.adapters
import android.content.Context
import android.support.v4.app.Fragment
import android.support.v4.app.FragmentManager
import android.support.v4.app.FragmentPagerAdapter
import com.adlerosn.brasilfurfest.R
import com.adlerosn.brasilfurfest.helper.dayRange
import com.adlerosn.brasilfurfest.helper.runtimeLanguage
2018-12-13 02:04:29 +00:00
import com.adlerosn.brasilfurfest.schedule.managers.ScheduleManager
import com.adlerosn.brasilfurfest.schedule.fragments.ConventionDayFragment
import com.adlerosn.brasilfurfest.schedule.fragments.ConventionRulesFragment
2018-12-13 02:04:29 +00:00
import com.adlerosn.brasilfurfest.schedule.fragments.ConventionSocialMediasFragment
import com.adlerosn.brasilfurfest.schedule.fragments.ConventionSummaryFragment
2018-07-13 21:09:43 +00:00
import java.text.SimpleDateFormat
class DaysPagerAdapter(fm: FragmentManager, private val context: Context, private val scheduleManager: ScheduleManager) : FragmentPagerAdapter(fm) {
override fun getItem(position: Int): Fragment = when (position) {
2018-12-13 02:04:29 +00:00
0 -> ConventionSummaryFragment.newInstance()
scheduleManager.convention.days.size+1 -> ConventionRulesFragment.newInstance()
scheduleManager.convention.days.size+2 -> ConventionSocialMediasFragment.newInstance()
2018-12-13 02:04:29 +00:00
else -> ConventionDayFragment.newInstance(scheduleManager.convention.days[position-1].dayRange)
2018-07-13 21:09:43 +00:00
}
override fun getPageTitle(position: Int): String = when (position) {
0 -> context.getString(R.string.schecule_tab_summary)
scheduleManager.convention.days.size+1 -> context.getString(R.string.rules)
scheduleManager.convention.days.size+2 -> context.getString(R.string.social_media)
2018-07-13 21:09:43 +00:00
else -> SimpleDateFormat(
"E d",
context.runtimeLanguage.locale
).format(scheduleManager.convention.days[position-1].timeInMillis)
}
override fun getCount(): Int = scheduleManager.convention.days.size+3
2018-07-13 21:09:43 +00:00
}