mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-03 21:08:25 +00:00 
			
		
		
		
	Allow to archive labels (#26478)
## Archived labels This adds the structure to allow for archived labels. Archived labels are, just like closed milestones or projects, a medium to hide information without deleting it. It is especially useful if there are outdated labels that should no longer be used without deleting the label entirely. ## Changes 1. UI and API have been equipped with the support to mark a label as archived 2. The time when a label has been archived will be stored in the DB ## Outsourced for the future There's no special handling for archived labels at the moment. This will be done in the future. ## Screenshots   Part of https://github.com/go-gitea/gitea/issues/25237 --------- Co-authored-by: delvh <dev.lh@web.de> Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
This commit is contained in:
		@@ -209,6 +209,7 @@ func EditLabel(ctx *context.APIContext) {
 | 
			
		||||
	if form.Description != nil {
 | 
			
		||||
		l.Description = *form.Description
 | 
			
		||||
	}
 | 
			
		||||
	l.SetArchived(form.IsArchived != nil && *form.IsArchived)
 | 
			
		||||
	if err := issues_model.UpdateLabel(l); err != nil {
 | 
			
		||||
		ctx.Error(http.StatusInternalServerError, "UpdateLabel", err)
 | 
			
		||||
		return
 | 
			
		||||
 
 | 
			
		||||
@@ -151,7 +151,6 @@ func CreateLabel(ctx *context.APIContext) {
 | 
			
		||||
		return
 | 
			
		||||
	}
 | 
			
		||||
	form.Color = color
 | 
			
		||||
 | 
			
		||||
	l := &issues_model.Label{
 | 
			
		||||
		Name:        form.Name,
 | 
			
		||||
		Exclusive:   form.Exclusive,
 | 
			
		||||
@@ -159,6 +158,7 @@ func CreateLabel(ctx *context.APIContext) {
 | 
			
		||||
		RepoID:      ctx.Repo.Repository.ID,
 | 
			
		||||
		Description: form.Description,
 | 
			
		||||
	}
 | 
			
		||||
	l.SetArchived(form.IsArchived)
 | 
			
		||||
	if err := issues_model.NewLabel(ctx, l); err != nil {
 | 
			
		||||
		ctx.Error(http.StatusInternalServerError, "NewLabel", err)
 | 
			
		||||
		return
 | 
			
		||||
@@ -231,6 +231,7 @@ func EditLabel(ctx *context.APIContext) {
 | 
			
		||||
	if form.Description != nil {
 | 
			
		||||
		l.Description = *form.Description
 | 
			
		||||
	}
 | 
			
		||||
	l.SetArchived(form.IsArchived != nil && *form.IsArchived)
 | 
			
		||||
	if err := issues_model.UpdateLabel(l); err != nil {
 | 
			
		||||
		ctx.Error(http.StatusInternalServerError, "UpdateLabel", err)
 | 
			
		||||
		return
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user