|
|
|
@ -2,6 +2,7 @@ package net.pokeranalytics.android.ui.view.rowrepresentable |
|
|
|
|
|
|
|
|
|
|
|
import net.pokeranalytics.android.R |
|
|
|
import net.pokeranalytics.android.R |
|
|
|
import net.pokeranalytics.android.model.extensions.SessionState |
|
|
|
import net.pokeranalytics.android.model.extensions.SessionState |
|
|
|
|
|
|
|
import net.pokeranalytics.android.model.extensions.getState |
|
|
|
import net.pokeranalytics.android.model.realm.Session |
|
|
|
import net.pokeranalytics.android.model.realm.Session |
|
|
|
import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetType |
|
|
|
import net.pokeranalytics.android.ui.fragment.components.bottomsheet.BottomSheetType |
|
|
|
import net.pokeranalytics.android.ui.view.RowRepresentable |
|
|
|
import net.pokeranalytics.android.ui.view.RowRepresentable |
|
|
|
@ -12,6 +13,7 @@ enum class SessionRow : RowRepresentable { |
|
|
|
|
|
|
|
|
|
|
|
PRIZE, |
|
|
|
PRIZE, |
|
|
|
CASHED_OUT, |
|
|
|
CASHED_OUT, |
|
|
|
|
|
|
|
NET_RESULT, |
|
|
|
INITIAL_BUY_IN, |
|
|
|
INITIAL_BUY_IN, |
|
|
|
BUY_IN, |
|
|
|
BUY_IN, |
|
|
|
POSITION, |
|
|
|
POSITION, |
|
|
|
@ -34,10 +36,10 @@ enum class SessionRow : RowRepresentable { |
|
|
|
/** |
|
|
|
/** |
|
|
|
* Return the rows to display for the current session state |
|
|
|
* Return the rows to display for the current session state |
|
|
|
*/ |
|
|
|
*/ |
|
|
|
fun getRows(type: Int, sessionState: SessionState): ArrayList<RowRepresentable> { |
|
|
|
fun getRows(session: Session): ArrayList<RowRepresentable> { |
|
|
|
when (type) { |
|
|
|
when (session.type) { |
|
|
|
Session.Type.TOURNAMENT.ordinal -> { |
|
|
|
Session.Type.TOURNAMENT.ordinal -> { |
|
|
|
return when (sessionState) { |
|
|
|
return when (session.getState()) { |
|
|
|
SessionState.PENDING, SessionState.PLANNED -> { |
|
|
|
SessionState.PENDING, SessionState.PLANNED -> { |
|
|
|
arrayListOf( |
|
|
|
arrayListOf( |
|
|
|
GAME, INITIAL_BUY_IN, LOCATION, BANKROLL, TABLE_SIZE, TOURNAMENT_TYPE, |
|
|
|
GAME, INITIAL_BUY_IN, LOCATION, BANKROLL, TABLE_SIZE, TOURNAMENT_TYPE, |
|
|
|
@ -55,17 +57,25 @@ enum class SessionRow : RowRepresentable { |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
Session.Type.CASH_GAME.ordinal -> { |
|
|
|
Session.Type.CASH_GAME.ordinal -> { |
|
|
|
return when (sessionState) { |
|
|
|
when (session.getState()) { |
|
|
|
SessionState.PENDING, SessionState.PLANNED -> { |
|
|
|
SessionState.PENDING, SessionState.PLANNED -> { |
|
|
|
arrayListOf(GAME, BLINDS, LOCATION, BANKROLL, TABLE_SIZE, START_DATE, END_DATE) |
|
|
|
return arrayListOf(GAME, BLINDS, LOCATION, BANKROLL, TABLE_SIZE, START_DATE, END_DATE) |
|
|
|
} |
|
|
|
} |
|
|
|
SessionState.STARTED, SessionState.PAUSED, SessionState.FINISHED -> { |
|
|
|
SessionState.STARTED, SessionState.PAUSED, SessionState.FINISHED -> { |
|
|
|
|
|
|
|
val liveBankroll = session.bankroll?.live ?: false |
|
|
|
|
|
|
|
return if (liveBankroll) { |
|
|
|
arrayListOf( |
|
|
|
arrayListOf( |
|
|
|
CASHED_OUT, BUY_IN, TIPS, |
|
|
|
CASHED_OUT, BUY_IN, TIPS, |
|
|
|
GAME, BLINDS, LOCATION, BANKROLL, TABLE_SIZE, START_DATE, END_DATE, BREAK_TIME, COMMENT |
|
|
|
GAME, BLINDS, LOCATION, BANKROLL, TABLE_SIZE, START_DATE, END_DATE, BREAK_TIME, COMMENT |
|
|
|
) |
|
|
|
) |
|
|
|
|
|
|
|
} else { |
|
|
|
|
|
|
|
arrayListOf( |
|
|
|
|
|
|
|
NET_RESULT, BUY_IN, TIPS, |
|
|
|
|
|
|
|
GAME, BLINDS, LOCATION, BANKROLL, TABLE_SIZE, START_DATE, END_DATE, BREAK_TIME, COMMENT |
|
|
|
|
|
|
|
) |
|
|
|
} |
|
|
|
} |
|
|
|
else -> arrayListOf() |
|
|
|
} |
|
|
|
|
|
|
|
else -> return arrayListOf() |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
@ -84,6 +94,7 @@ enum class SessionRow : RowRepresentable { |
|
|
|
override val resId: Int? |
|
|
|
override val resId: Int? |
|
|
|
get() { |
|
|
|
get() { |
|
|
|
return when (this) { |
|
|
|
return when (this) { |
|
|
|
|
|
|
|
NET_RESULT -> R.string.net_result |
|
|
|
PRIZE -> R.string.prize |
|
|
|
PRIZE -> R.string.prize |
|
|
|
POSITION -> R.string.position |
|
|
|
POSITION -> R.string.position |
|
|
|
PLAYERS -> R.string.players |
|
|
|
PLAYERS -> R.string.players |
|
|
|
@ -107,7 +118,7 @@ enum class SessionRow : RowRepresentable { |
|
|
|
override val viewType: Int |
|
|
|
override val viewType: Int |
|
|
|
get() { |
|
|
|
get() { |
|
|
|
return when (this) { |
|
|
|
return when (this) { |
|
|
|
PRIZE, POSITION, PLAYERS, CASHED_OUT, INITIAL_BUY_IN, BUY_IN, TIPS, |
|
|
|
NET_RESULT, PRIZE, POSITION, PLAYERS, CASHED_OUT, INITIAL_BUY_IN, BUY_IN, TIPS, |
|
|
|
GAME, BLINDS, LOCATION, BANKROLL, TABLE_SIZE, COMMENT, |
|
|
|
GAME, BLINDS, LOCATION, BANKROLL, TABLE_SIZE, COMMENT, |
|
|
|
TOURNAMENT_TYPE, START_DATE, END_DATE, BREAK_TIME -> RowViewType.TITLE_VALUE.ordinal |
|
|
|
TOURNAMENT_TYPE, START_DATE, END_DATE, BREAK_TIME -> RowViewType.TITLE_VALUE.ordinal |
|
|
|
} |
|
|
|
} |
|
|
|
@ -116,7 +127,7 @@ enum class SessionRow : RowRepresentable { |
|
|
|
override val bottomSheetType: BottomSheetType |
|
|
|
override val bottomSheetType: BottomSheetType |
|
|
|
get() { |
|
|
|
get() { |
|
|
|
return when (this) { |
|
|
|
return when (this) { |
|
|
|
CASHED_OUT, INITIAL_BUY_IN, BREAK_TIME, POSITION, PLAYERS, PRIZE -> BottomSheetType.EDIT_TEXT |
|
|
|
NET_RESULT, CASHED_OUT, INITIAL_BUY_IN, BREAK_TIME, POSITION, PLAYERS, PRIZE -> BottomSheetType.EDIT_TEXT |
|
|
|
BUY_IN, TIPS -> BottomSheetType.SUM |
|
|
|
BUY_IN, TIPS -> BottomSheetType.SUM |
|
|
|
BLINDS -> BottomSheetType.DOUBLE_EDIT_TEXT |
|
|
|
BLINDS -> BottomSheetType.DOUBLE_EDIT_TEXT |
|
|
|
GAME -> BottomSheetType.LIST_GAME |
|
|
|
GAME -> BottomSheetType.LIST_GAME |
|
|
|
|