allow batch editing of goalie YTD/lifetime stats
This commit is contained in:
parent
ac95601609
commit
071aa3bd8e
|
@ -46,23 +46,23 @@ selectC = promptController goalieToEditPrompt
|
|||
|
||||
editC :: EditGoalieMode -> Controller
|
||||
editC = \case
|
||||
EGMenu -> menuC
|
||||
EGNumber -> numberC
|
||||
EGName -> nameC
|
||||
EGYtd -> ytdMenuC
|
||||
EGLifetime -> lifetimeMenuC
|
||||
EGYtdGames -> ytdGamesC
|
||||
EGYtdMins -> ytdMinsC
|
||||
EGYtdGoals -> ytdGoalsC
|
||||
EGYtdWins -> ytdWinsC
|
||||
EGYtdLosses -> ytdLossesC
|
||||
EGYtdTies -> ytdTiesC
|
||||
EGLtGames -> ltGamesC
|
||||
EGLtMins -> ltMinsC
|
||||
EGLtGoals -> ltGoalsC
|
||||
EGLtWins -> ltWinsC
|
||||
EGLtLosses -> ltLossesC
|
||||
EGLtTies -> ltTiesC
|
||||
EGMenu -> menuC
|
||||
EGNumber -> numberC
|
||||
EGName -> nameC
|
||||
EGYtd -> ytdMenuC
|
||||
EGLifetime -> lifetimeMenuC
|
||||
EGYtdGames b -> ytdGamesC b
|
||||
EGYtdMins b -> ytdMinsC b
|
||||
EGYtdGoals b -> ytdGoalsC b
|
||||
EGYtdWins b -> ytdWinsC b
|
||||
EGYtdLosses b -> ytdLossesC b
|
||||
EGYtdTies -> ytdTiesC
|
||||
EGLtGames b -> ltGamesC b
|
||||
EGLtMins b -> ltMinsC b
|
||||
EGLtGoals b -> ltGoalsC b
|
||||
EGLtWins b -> ltWinsC b
|
||||
EGLtLosses b -> ltLossesC b
|
||||
EGLtTies -> ltTiesC
|
||||
|
||||
menuC :: Controller
|
||||
menuC = menuControllerWith header editGoalieMenu
|
||||
|
@ -79,38 +79,38 @@ ytdMenuC = menuControllerWith header editGoalieYtdMenu
|
|||
lifetimeMenuC :: Controller
|
||||
lifetimeMenuC = menuControllerWith header editGoalieLtMenu
|
||||
|
||||
ytdGamesC :: Controller
|
||||
ytdGamesC = promptController editGoalieYtdGamesPrompt
|
||||
ytdGamesC :: Bool -> Controller
|
||||
ytdGamesC = promptController . editGoalieYtdGamesPrompt
|
||||
|
||||
ytdMinsC :: Controller
|
||||
ytdMinsC = promptController editGoalieYtdMinsPrompt
|
||||
ytdMinsC :: Bool -> Controller
|
||||
ytdMinsC = promptController . editGoalieYtdMinsPrompt
|
||||
|
||||
ytdGoalsC :: Controller
|
||||
ytdGoalsC = promptController editGoalieYtdGoalsPrompt
|
||||
ytdGoalsC :: Bool -> Controller
|
||||
ytdGoalsC = promptController . editGoalieYtdGoalsPrompt
|
||||
|
||||
ytdWinsC :: Controller
|
||||
ytdWinsC = promptController editGoalieYtdWinsPrompt
|
||||
ytdWinsC :: Bool -> Controller
|
||||
ytdWinsC = promptController . editGoalieYtdWinsPrompt
|
||||
|
||||
ytdLossesC :: Controller
|
||||
ytdLossesC = promptController editGoalieYtdLossesPrompt
|
||||
ytdLossesC :: Bool -> Controller
|
||||
ytdLossesC = promptController . editGoalieYtdLossesPrompt
|
||||
|
||||
ytdTiesC :: Controller
|
||||
ytdTiesC = promptController editGoalieYtdTiesPrompt
|
||||
|
||||
ltGamesC :: Controller
|
||||
ltGamesC = promptController editGoalieLtGamesPrompt
|
||||
ltGamesC :: Bool -> Controller
|
||||
ltGamesC = promptController . editGoalieLtGamesPrompt
|
||||
|
||||
ltMinsC :: Controller
|
||||
ltMinsC = promptController editGoalieLtMinsPrompt
|
||||
ltMinsC :: Bool -> Controller
|
||||
ltMinsC = promptController . editGoalieLtMinsPrompt
|
||||
|
||||
ltGoalsC :: Controller
|
||||
ltGoalsC = promptController editGoalieLtGoalsPrompt
|
||||
ltGoalsC :: Bool -> Controller
|
||||
ltGoalsC = promptController . editGoalieLtGoalsPrompt
|
||||
|
||||
ltWinsC :: Controller
|
||||
ltWinsC = promptController editGoalieLtWinsPrompt
|
||||
ltWinsC :: Bool -> Controller
|
||||
ltWinsC = promptController . editGoalieLtWinsPrompt
|
||||
|
||||
ltLossesC :: Controller
|
||||
ltLossesC = promptController editGoalieLtLossesPrompt
|
||||
ltLossesC :: Bool -> Controller
|
||||
ltLossesC = promptController . editGoalieLtLossesPrompt
|
||||
|
||||
ltTiesC :: Controller
|
||||
ltTiesC = promptController editGoalieLtTiesPrompt
|
||||
|
|
|
@ -51,13 +51,14 @@ editGoalieMenu = Menu "*** EDIT GOALTENDER ***" () $ map
|
|||
editGoalieYtdMenu :: Menu ()
|
||||
editGoalieYtdMenu = editMenu "*** EDIT GOALTENDER YEAR-TO-DATE ***"
|
||||
-- key, label, value
|
||||
[ ( '1', "Edit YTD games", EGYtdGames )
|
||||
, ( '2', "Edit YTD minutes", EGYtdMins )
|
||||
, ( '3', "Edit YTD goals", EGYtdGoals )
|
||||
, ( '4', "Edit YTD wins", EGYtdWins )
|
||||
, ( '5', "Edit YTD losses", EGYtdLosses )
|
||||
, ( '6', "Edit YTD ties", EGYtdTies )
|
||||
, ( 'R', "Return to edit menu", EGMenu )
|
||||
[ ( '1', "Edit all YTD stats", EGYtdGames True )
|
||||
, ( '2', "Edit YTD games", EGYtdGames False )
|
||||
, ( '3', "Edit YTD minutes", EGYtdMins False )
|
||||
, ( '4', "Edit YTD goals", EGYtdGoals False )
|
||||
, ( '5', "Edit YTD wins", EGYtdWins False )
|
||||
, ( '6', "Edit YTD losses", EGYtdLosses False )
|
||||
, ( '7', "Edit YTD ties", EGYtdTies )
|
||||
, ( 'R', "Return to edit menu", EGMenu )
|
||||
]
|
||||
|
||||
-- | The 'Goalie' lifetime edit menu
|
||||
|
@ -65,13 +66,14 @@ editGoalieLtMenu :: Menu ()
|
|||
editGoalieLtMenu = editMenu
|
||||
"*** EDIT GOALTENDER LIFETIME ***"
|
||||
-- key, label, value
|
||||
[ ( '1', "Edit lifetime games", EGLtGames )
|
||||
, ( '2', "Edit lifetime minutes", EGLtMins )
|
||||
, ( '3', "Edit lifetime goals", EGLtGoals )
|
||||
, ( '4', "Edit lifetime wins", EGLtWins )
|
||||
, ( '5', "Edit lifetime losses", EGLtLosses )
|
||||
, ( '6', "Edit lifetime ties", EGLtTies )
|
||||
, ( 'R', "Return to edit menu", EGMenu )
|
||||
[ ( '1', "Edit all lifetime stats", EGLtGames True )
|
||||
, ( '2', "Edit lifetime games", EGLtGames False )
|
||||
, ( '3', "Edit lifetime minutes", EGLtMins False )
|
||||
, ( '4', "Edit lifetime goals", EGLtGoals False )
|
||||
, ( '5', "Edit lifetime wins", EGLtWins False )
|
||||
, ( '6', "Edit lifetime losses", EGLtLosses False )
|
||||
, ( '7', "Edit lifetime ties", EGLtTies )
|
||||
, ( 'R', "Return to edit menu", EGMenu )
|
||||
]
|
||||
|
||||
editMenu :: String -> [(Char, String, EditGoalieMode)] -> Menu ()
|
||||
|
|
|
@ -63,29 +63,59 @@ editGoalieNamePrompt = namePrompt "Goalie name: " $ \name ->
|
|||
else editGoalie EGMenu $ gName .~ name
|
||||
|
||||
-- | Prompt to edit a goalie's YTD games played
|
||||
editGoalieYtdGamesPrompt :: Prompt
|
||||
editGoalieYtdGamesPrompt = editNum "Year-to-date games played: " EGYtd
|
||||
editGoalieYtdGamesPrompt
|
||||
:: Bool
|
||||
-- ^ Indicates whether or not we're in batch mode
|
||||
-> Prompt
|
||||
editGoalieYtdGamesPrompt batchMode =
|
||||
editNum "Year-to-date games played: " mode
|
||||
(gYtd.gsGames .~)
|
||||
where
|
||||
mode = if batchMode then EGYtdMins True else EGYtd
|
||||
|
||||
-- | Prompt to edit a goalie's YTD minutes played
|
||||
editGoalieYtdMinsPrompt :: Prompt
|
||||
editGoalieYtdMinsPrompt = editNum "Year-to-date minutes played: " EGYtd
|
||||
editGoalieYtdMinsPrompt
|
||||
:: Bool
|
||||
-- ^ Indicates whether or not we're in batch mode
|
||||
-> Prompt
|
||||
editGoalieYtdMinsPrompt batchMode =
|
||||
editNum "Year-to-date minutes played: " mode
|
||||
(gYtd.gsMinsPlayed .~)
|
||||
where
|
||||
mode = if batchMode then EGYtdGoals True else EGYtd
|
||||
|
||||
-- | Prompt to edit a goalie's YTD goales allowed
|
||||
editGoalieYtdGoalsPrompt :: Prompt
|
||||
editGoalieYtdGoalsPrompt = editNum "Year-to-date goals allowed: " EGYtd
|
||||
editGoalieYtdGoalsPrompt
|
||||
:: Bool
|
||||
-- ^ Indicates whether or not we're in batch mode
|
||||
-> Prompt
|
||||
editGoalieYtdGoalsPrompt batchMode =
|
||||
editNum "Year-to-date goals allowed: " mode
|
||||
(gYtd.gsGoalsAllowed .~)
|
||||
where
|
||||
mode = if batchMode then EGYtdWins True else EGYtd
|
||||
|
||||
-- | Prompt to edit a goalie's YTD wins
|
||||
editGoalieYtdWinsPrompt :: Prompt
|
||||
editGoalieYtdWinsPrompt = editNum "Year-to-date wins: " EGYtd
|
||||
editGoalieYtdWinsPrompt
|
||||
:: Bool
|
||||
-- ^ Indicates whether or not we're in batch mode
|
||||
-> Prompt
|
||||
editGoalieYtdWinsPrompt batchMode =
|
||||
editNum "Year-to-date wins: " mode
|
||||
(gYtd.gsWins .~)
|
||||
where
|
||||
mode = if batchMode then EGYtdLosses True else EGYtd
|
||||
|
||||
-- | Prompt to edit a goalie's YTD losses
|
||||
editGoalieYtdLossesPrompt :: Prompt
|
||||
editGoalieYtdLossesPrompt = editNum "Year-to-date losses: " EGYtd
|
||||
editGoalieYtdLossesPrompt
|
||||
:: Bool
|
||||
-- ^ Indicates whether or not we're in batch mode
|
||||
-> Prompt
|
||||
editGoalieYtdLossesPrompt batchMode =
|
||||
editNum "Year-to-date losses: " mode
|
||||
(gYtd.gsLosses .~)
|
||||
where
|
||||
mode = if batchMode then EGYtdTies else EGYtd
|
||||
|
||||
-- | Prompt to edit a goalie's YTD ties
|
||||
editGoalieYtdTiesPrompt :: Prompt
|
||||
|
@ -93,29 +123,59 @@ editGoalieYtdTiesPrompt = editNum "Year-to-date ties: " EGYtd
|
|||
(gYtd.gsTies .~)
|
||||
|
||||
-- | Prompt to edit a goalie's lifetime games played
|
||||
editGoalieLtGamesPrompt :: Prompt
|
||||
editGoalieLtGamesPrompt = editNum "Lifetime games played: " EGLifetime
|
||||
editGoalieLtGamesPrompt
|
||||
:: Bool
|
||||
-- ^ Indicates whether or not we're in batch mode
|
||||
-> Prompt
|
||||
editGoalieLtGamesPrompt batchMode =
|
||||
editNum "Lifetime games played: " mode
|
||||
(gLifetime.gsGames .~)
|
||||
where
|
||||
mode = if batchMode then EGLtMins True else EGLifetime
|
||||
|
||||
-- | Prompt to edit a goalie's lifetime minutes played
|
||||
editGoalieLtMinsPrompt :: Prompt
|
||||
editGoalieLtMinsPrompt = editNum "Lifetime minutes played: " EGLifetime
|
||||
editGoalieLtMinsPrompt
|
||||
:: Bool
|
||||
-- ^ Indicates whether or not we're in batch mode
|
||||
-> Prompt
|
||||
editGoalieLtMinsPrompt batchMode =
|
||||
editNum "Lifetime minutes played: " mode
|
||||
(gLifetime.gsMinsPlayed .~)
|
||||
where
|
||||
mode = if batchMode then EGLtGoals True else EGLifetime
|
||||
|
||||
-- | Prompt to edit a goalie's lifetime goals allowed
|
||||
editGoalieLtGoalsPrompt :: Prompt
|
||||
editGoalieLtGoalsPrompt = editNum "Lifetime goals allowed: " EGLifetime
|
||||
editGoalieLtGoalsPrompt
|
||||
:: Bool
|
||||
-- ^ Indicates whether or not we're in batch mode
|
||||
-> Prompt
|
||||
editGoalieLtGoalsPrompt batchMode =
|
||||
editNum "Lifetime goals allowed: " mode
|
||||
(gLifetime.gsGoalsAllowed .~)
|
||||
where
|
||||
mode = if batchMode then EGLtWins True else EGLifetime
|
||||
|
||||
-- | Prompt to edit a goalie's lifetime wins
|
||||
editGoalieLtWinsPrompt :: Prompt
|
||||
editGoalieLtWinsPrompt = editNum "Lifetime wins: " EGLifetime
|
||||
editGoalieLtWinsPrompt
|
||||
:: Bool
|
||||
-- ^ Indicates whether or not we're in batch mode
|
||||
-> Prompt
|
||||
editGoalieLtWinsPrompt batchMode =
|
||||
editNum "Lifetime wins: " mode
|
||||
(gLifetime.gsWins .~)
|
||||
where
|
||||
mode = if batchMode then EGLtLosses True else EGLifetime
|
||||
|
||||
-- | Prompt to edit a goalie's lifetime losses
|
||||
editGoalieLtLossesPrompt :: Prompt
|
||||
editGoalieLtLossesPrompt = editNum "Lifetime losses: " EGLifetime
|
||||
editGoalieLtLossesPrompt
|
||||
:: Bool
|
||||
-- ^ Indicates whether or not we're in batch mode
|
||||
-> Prompt
|
||||
editGoalieLtLossesPrompt batchMode =
|
||||
editNum "Lifetime losses: " mode
|
||||
(gLifetime.gsLosses .~)
|
||||
where
|
||||
mode = if batchMode then EGLtTies else EGLifetime
|
||||
|
||||
-- | Prompt to edit a goalie's lifetime ties
|
||||
editGoalieLtTiesPrompt :: Prompt
|
||||
|
|
|
@ -369,17 +369,17 @@ data EditGoalieMode
|
|||
| EGName
|
||||
| EGYtd
|
||||
| EGLifetime
|
||||
| EGYtdGames
|
||||
| EGYtdMins
|
||||
| EGYtdGoals
|
||||
| EGYtdWins
|
||||
| EGYtdLosses
|
||||
| EGYtdGames Bool
|
||||
| EGYtdMins Bool
|
||||
| EGYtdGoals Bool
|
||||
| EGYtdWins Bool
|
||||
| EGYtdLosses Bool
|
||||
| EGYtdTies
|
||||
| EGLtGames
|
||||
| EGLtMins
|
||||
| EGLtGoals
|
||||
| EGLtWins
|
||||
| EGLtLosses
|
||||
| EGLtGames Bool
|
||||
| EGLtMins Bool
|
||||
| EGLtGoals Bool
|
||||
| EGLtWins Bool
|
||||
| EGLtLosses Bool
|
||||
| EGLtTies
|
||||
deriving (Eq, Show)
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user