~edwargix/tallyard

e97461e92033e5c3d27592e105628ce79c916a91 — David Florness 4 years ago 547f6a3
Assume that options left blank in the ballot TUI mean tied for last
1 files changed, 9 insertions(+), 1 deletions(-)

M ui/tui.go
M ui/tui.go => ui/tui.go +9 -1
@@ 328,10 328,18 @@ func VoteTUI(candidates []election.Candidate) []byte {
	form.AddButton("Submit", func() {
		app.Stop()
		for i := 0; i < len(candidates); i++ {
			rank, err := strconv.Atoi(form.GetFormItem(i).(*tview.InputField).GetText())
			text := form.GetFormItem(i).(*tview.InputField).GetText()
			if text == "" {
				ranks[i] = len(candidates)
				continue
			}
			rank, err := strconv.Atoi(text)
			if err != nil {
				panic(err)
			}
			if rank > len(candidates) {
				rank = len(candidates)
			}
			ranks[i] = rank
		}
	})