mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-26 12:27:06 +00:00 
			
		
		
		
	 e81ccc406b
			
		
	
	e81ccc406b
	
	
	
		
			
			Change all license headers to comply with REUSE specification. Fix #16132 Co-authored-by: flynnnnnnnnnn <flynnnnnnnnnn@github> Co-authored-by: John Olheiser <john.olheiser@gmail.com>
		
			
				
	
	
		
			63 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			63 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
| // Copyright 2019 The Gitea Authors. All rights reserved.
 | |
| // SPDX-License-Identifier: MIT
 | |
| 
 | |
| package perm
 | |
| 
 | |
| import (
 | |
| 	"fmt"
 | |
| 
 | |
| 	"code.gitea.io/gitea/modules/log"
 | |
| )
 | |
| 
 | |
| // AccessMode specifies the users access mode
 | |
| type AccessMode int
 | |
| 
 | |
| const (
 | |
| 	// AccessModeNone no access
 | |
| 	AccessModeNone AccessMode = iota // 0
 | |
| 	// AccessModeRead read access
 | |
| 	AccessModeRead // 1
 | |
| 	// AccessModeWrite write access
 | |
| 	AccessModeWrite // 2
 | |
| 	// AccessModeAdmin admin access
 | |
| 	AccessModeAdmin // 3
 | |
| 	// AccessModeOwner owner access
 | |
| 	AccessModeOwner // 4
 | |
| )
 | |
| 
 | |
| func (mode AccessMode) String() string {
 | |
| 	switch mode {
 | |
| 	case AccessModeRead:
 | |
| 		return "read"
 | |
| 	case AccessModeWrite:
 | |
| 		return "write"
 | |
| 	case AccessModeAdmin:
 | |
| 		return "admin"
 | |
| 	case AccessModeOwner:
 | |
| 		return "owner"
 | |
| 	default:
 | |
| 		return "none"
 | |
| 	}
 | |
| }
 | |
| 
 | |
| // ColorFormat provides a ColorFormatted version of this AccessMode
 | |
| func (mode AccessMode) ColorFormat(s fmt.State) {
 | |
| 	log.ColorFprintf(s, "%d:%s",
 | |
| 		log.NewColoredIDValue(mode),
 | |
| 		mode)
 | |
| }
 | |
| 
 | |
| // ParseAccessMode returns corresponding access mode to given permission string.
 | |
| func ParseAccessMode(permission string) AccessMode {
 | |
| 	switch permission {
 | |
| 	case "read":
 | |
| 		return AccessModeRead
 | |
| 	case "write":
 | |
| 		return AccessModeWrite
 | |
| 	case "admin":
 | |
| 		return AccessModeAdmin
 | |
| 	default:
 | |
| 		return AccessModeNone
 | |
| 	}
 | |
| }
 |