Kanban board (#8346)
Co-authored-by: 6543 <6543@obermui.de> Co-authored-by: jaqra <48099350+jaqra@users.noreply.github.com> Co-authored-by: Kerry <flatline-studios@users.noreply.github.com> Co-authored-by: Jaqra <jaqra@hotmail.com> Co-authored-by: Kyle Evans <kevans91@users.noreply.github.com> Co-authored-by: Tsakiridis Ilias <TsakiDev@users.noreply.github.com> Co-authored-by: Ilias Tsakiridis <ilias.tsakiridis@outlook.com> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com> Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: zeripath <art27@cantab.net> Co-authored-by: techknowlogick <techknowlogick@gitea.io>
This commit is contained in:
parent
d285b5d35a
commit
4027c5dd7c
75 changed files with 3569 additions and 58 deletions
|
@ -128,6 +128,7 @@ type RepoSettingForm struct {
|
|||
ExternalTrackerURL string
|
||||
TrackerURLFormat string
|
||||
TrackerIssueStyle string
|
||||
EnableProjects bool
|
||||
EnablePulls bool
|
||||
PullsIgnoreWhitespace bool
|
||||
PullsAllowMerge bool
|
||||
|
@ -364,6 +365,7 @@ type CreateIssueForm struct {
|
|||
AssigneeIDs string `form:"assignee_ids"`
|
||||
Ref string `form:"ref"`
|
||||
MilestoneID int64
|
||||
ProjectID int64
|
||||
AssigneeID int64
|
||||
Content string
|
||||
Files []string
|
||||
|
@ -422,6 +424,35 @@ func (i IssueLockForm) HasValidReason() bool {
|
|||
return false
|
||||
}
|
||||
|
||||
// __________ __ __
|
||||
// \______ \_______ ____ |__| ____ _____/ |_ ______
|
||||
// | ___/\_ __ \/ _ \ | |/ __ \_/ ___\ __\/ ___/
|
||||
// | | | | \( <_> ) | \ ___/\ \___| | \___ \
|
||||
// |____| |__| \____/\__| |\___ >\___ >__| /____ >
|
||||
// \______| \/ \/ \/
|
||||
|
||||
// CreateProjectForm form for creating a project
|
||||
type CreateProjectForm struct {
|
||||
Title string `binding:"Required;MaxSize(100)"`
|
||||
Content string
|
||||
BoardType models.ProjectBoardType
|
||||
}
|
||||
|
||||
// UserCreateProjectForm is a from for creating an individual or organization
|
||||
// form.
|
||||
type UserCreateProjectForm struct {
|
||||
Title string `binding:"Required;MaxSize(100)"`
|
||||
Content string
|
||||
BoardType models.ProjectBoardType
|
||||
UID int64 `binding:"Required"`
|
||||
}
|
||||
|
||||
// EditProjectBoardTitleForm is a form for editing the title of a project's
|
||||
// board
|
||||
type EditProjectBoardTitleForm struct {
|
||||
Title string `binding:"Required;MaxSize(100)"`
|
||||
}
|
||||
|
||||
// _____ .__.__ __
|
||||
// / \ |__| | ____ _______/ |_ ____ ____ ____
|
||||
// / \ / \| | | _/ __ \ / ___/\ __\/ _ \ / \_/ __ \
|
||||
|
|
|
@ -818,5 +818,6 @@ func UnitTypes() macaron.Handler {
|
|||
ctx.Data["UnitTypeWiki"] = models.UnitTypeWiki
|
||||
ctx.Data["UnitTypeExternalWiki"] = models.UnitTypeExternalWiki
|
||||
ctx.Data["UnitTypeExternalTracker"] = models.UnitTypeExternalTracker
|
||||
ctx.Data["UnitTypeProjects"] = models.UnitTypeProjects
|
||||
}
|
||||
}
|
||||
|
|
24
modules/setting/project.go
Normal file
24
modules/setting/project.go
Normal file
|
@ -0,0 +1,24 @@
|
|||
// 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 setting
|
||||
|
||||
import "code.gitea.io/gitea/modules/log"
|
||||
|
||||
// Project settings
|
||||
var (
|
||||
Project = struct {
|
||||
ProjectBoardBasicKanbanType []string
|
||||
ProjectBoardBugTriageType []string
|
||||
}{
|
||||
ProjectBoardBasicKanbanType: []string{"To Do", "In Progress", "Done"},
|
||||
ProjectBoardBugTriageType: []string{"Needs Triage", "High Priority", "Low Priority", "Closed"},
|
||||
}
|
||||
)
|
||||
|
||||
func newProject() {
|
||||
if err := Cfg.Section("project").MapTo(&Project); err != nil {
|
||||
log.Fatal("Failed to map Project settings: %v", err)
|
||||
}
|
||||
}
|
|
@ -1124,4 +1124,5 @@ func NewServices() {
|
|||
newIndexerService()
|
||||
newTaskService()
|
||||
NewQueueService()
|
||||
newProject()
|
||||
}
|
||||
|
|
|
@ -82,6 +82,7 @@ type Repository struct {
|
|||
HasWiki bool `json:"has_wiki"`
|
||||
ExternalWiki *ExternalWiki `json:"external_wiki,omitempty"`
|
||||
HasPullRequests bool `json:"has_pull_requests"`
|
||||
HasProjects bool `json:"has_projects"`
|
||||
IgnoreWhitespaceConflicts bool `json:"ignore_whitespace_conflicts"`
|
||||
AllowMerge bool `json:"allow_merge_commits"`
|
||||
AllowRebase bool `json:"allow_rebase"`
|
||||
|
@ -147,6 +148,8 @@ type EditRepoOption struct {
|
|||
DefaultBranch *string `json:"default_branch,omitempty"`
|
||||
// either `true` to allow pull requests, or `false` to prevent pull request.
|
||||
HasPullRequests *bool `json:"has_pull_requests,omitempty"`
|
||||
// either `true` to enable project unit, or `false` to disable them.
|
||||
HasProjects *bool `json:"has_projects,omitempty"`
|
||||
// either `true` to ignore whitespace for conflicts, or `false` to not ignore whitespace. `has_pull_requests` must be `true`.
|
||||
IgnoreWhitespaceConflicts *bool `json:"ignore_whitespace_conflicts,omitempty"`
|
||||
// either `true` to allow merging pull requests with a merge commit, or `false` to prevent merging pull requests with merge commits. `has_pull_requests` must be `true`.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue