Improved list output (#281)

remove unused debug var

move outputList into a struct

so we can add additional functionality for all list output

rename list output to table.go

make table sortable

sort milestones

sort milestones descending

remove unnecessary if

Co-authored-by: Norwin Roosen <git@nroo.de>
Reviewed-on: https://gitea.com/gitea/tea/pulls/281
Reviewed-by: khmarbaise <khmarbaise@noreply.gitea.io>
Reviewed-by: 6543 <6543@obermui.de>
Co-Authored-By: Norwin <noerw@noreply.gitea.io>
Co-Committed-By: Norwin <noerw@noreply.gitea.io>
This commit is contained in:
Norwin
2020-12-10 06:04:36 +08:00
committed by 6543
parent 4a11cf455f
commit a91168fd36
11 changed files with 141 additions and 170 deletions

View File

@ -23,7 +23,12 @@ func formatDuration(seconds int64, outputType string) string {
// TrackedTimesList print list of tracked times to stdout
func TrackedTimesList(times []*gitea.TrackedTime, outputType string, from, until time.Time, printTotal bool) {
var outputValues [][]string
tab := tableWithHeader(
"Created",
"Issue",
"User",
"Duration",
)
var totalDuration int64
for _, t := range times {
@ -35,29 +40,16 @@ func TrackedTimesList(times []*gitea.TrackedTime, outputType string, from, until
}
totalDuration += t.Time
outputValues = append(
outputValues,
[]string{
FormatTime(t.Created),
"#" + strconv.FormatInt(t.Issue.Index, 10),
t.UserName,
formatDuration(t.Time, outputType),
},
tab.addRow(
FormatTime(t.Created),
"#"+strconv.FormatInt(t.Issue.Index, 10),
t.UserName,
formatDuration(t.Time, outputType),
)
}
if printTotal {
outputValues = append(outputValues, []string{
"TOTAL", "", "", formatDuration(totalDuration, outputType),
})
tab.addRow("TOTAL", "", "", formatDuration(totalDuration, outputType))
}
headers := []string{
"Created",
"Issue",
"User",
"Duration",
}
outputList(outputType, headers, outputValues)
tab.print(outputType)
}