mirror of
https://gitea.com/gitea/tea.git
synced 2024-11-25 12:01:36 +01:00
5cb3e1ded5
MV list issues -> print.IssuesList MV list labels -> print.LabelsList & task.LabelsExport MV list logins -> print.LoginsList MV list miles -> print.MilestonesList MV list pulls -> print.PullsList MV list releases -> print.ReleasesList MV list issues&pulls of mile -> print.IssuesPullsList MV list notification threads -> print.NotificationsList Unexport print.outputList Unexport print.outputMarkdown remove comd/flags dependency in print module Reviewed-on: https://gitea.com/gitea/tea/pulls/273 Reviewed-by: Lunny Xiao <xiaolunwen@gmail.com> Reviewed-by: Andrew Thornton <art27@cantab.net> Co-Authored-By: 6543 <6543@obermui.de> Co-Committed-By: 6543 <6543@obermui.de>
110 lines
2.0 KiB
Go
110 lines
2.0 KiB
Go
// Copyright 2020 The Gitea Authors. All rights reserved.
|
|
// Use of this source code is governed by a MIT-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package print
|
|
|
|
import (
|
|
"fmt"
|
|
"strconv"
|
|
|
|
"code.gitea.io/sdk/gitea"
|
|
)
|
|
|
|
// IssueDetails print an issue rendered to stdout
|
|
func IssueDetails(issue *gitea.Issue) {
|
|
outputMarkdown(fmt.Sprintf(
|
|
"# #%d %s (%s)\n@%s created %s\n\n%s\n",
|
|
issue.Index,
|
|
issue.Title,
|
|
issue.State,
|
|
issue.Poster.UserName,
|
|
FormatTime(issue.Created),
|
|
issue.Body,
|
|
))
|
|
}
|
|
|
|
// IssuesList prints a listing of issues
|
|
func IssuesList(issues []*gitea.Issue, output string) {
|
|
var values [][]string
|
|
headers := []string{
|
|
"Index",
|
|
"Title",
|
|
"State",
|
|
"Author",
|
|
"Milestone",
|
|
"Updated",
|
|
}
|
|
|
|
if len(issues) == 0 {
|
|
outputList(output, headers, values)
|
|
return
|
|
}
|
|
|
|
for _, issue := range issues {
|
|
author := issue.Poster.FullName
|
|
if len(author) == 0 {
|
|
author = issue.Poster.UserName
|
|
}
|
|
mile := ""
|
|
if issue.Milestone != nil {
|
|
mile = issue.Milestone.Title
|
|
}
|
|
values = append(
|
|
values,
|
|
[]string{
|
|
strconv.FormatInt(issue.Index, 10),
|
|
issue.Title,
|
|
string(issue.State),
|
|
author,
|
|
mile,
|
|
FormatTime(issue.Updated),
|
|
},
|
|
)
|
|
}
|
|
outputList(output, headers, values)
|
|
}
|
|
|
|
// IssuesPullsList prints a listing of issues & pulls
|
|
// TODO combine with IssuesList
|
|
func IssuesPullsList(issues []*gitea.Issue, output string) {
|
|
var values [][]string
|
|
headers := []string{
|
|
"Index",
|
|
"State",
|
|
"Kind",
|
|
"Author",
|
|
"Updated",
|
|
"Title",
|
|
}
|
|
|
|
if len(issues) == 0 {
|
|
outputList(output, headers, values)
|
|
return
|
|
}
|
|
|
|
for _, issue := range issues {
|
|
name := issue.Poster.FullName
|
|
if len(name) == 0 {
|
|
name = issue.Poster.UserName
|
|
}
|
|
kind := "Issue"
|
|
if issue.PullRequest != nil {
|
|
kind = "Pull"
|
|
}
|
|
values = append(
|
|
values,
|
|
[]string{
|
|
strconv.FormatInt(issue.Index, 10),
|
|
string(issue.State),
|
|
kind,
|
|
name,
|
|
FormatTime(issue.Updated),
|
|
issue.Title,
|
|
},
|
|
)
|
|
}
|
|
|
|
outputList(output, headers, values)
|
|
}
|