You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							53 lines
						
					
					
						
							1.0 KiB
						
					
					
				
			
		
		
		
			
			
			
				
					
				
				
					
				
			
		
		
	
	
							53 lines
						
					
					
						
							1.0 KiB
						
					
					
				| package models | |
| 
 | |
| type ScopeEntry struct { | |
| 	ID           int    `json:"id"` | |
| 	Name         string `json:"name"` | |
| 	Abbreviation string `json:"abbreviation"` | |
| } | |
| 
 | |
| type ScopeMember struct { | |
| 	ID    string `json:"id"` | |
| 	Name  string `json:"name"` | |
| 	Owner bool   `json:"owner"` | |
| } | |
| 
 | |
| type Scope struct { | |
| 	ScopeEntry | |
| 
 | |
| 	DisplayName  string            `json:"displayName"` | |
| 	Members      []ScopeMember     `json:"members,omitempty"` | |
| 	Projects     []ProjectEntry    `json:"projects,omitempty"` | |
| 	Stats        []Stat            `json:"stats,omitempty"` | |
| 	StatusLabels map[Status]string `json:"statusLabels,omitempty"` // Not stored as part of scope, but may be in the future. | |
| } | |
| 
 | |
| func (s *Scope) Member(id string) *ScopeMember { | |
| 	for _, user := range s.Members { | |
| 		if user.ID == id { | |
| 			return &user | |
| 		} | |
| 	} | |
| 
 | |
| 	return nil | |
| } | |
| 
 | |
| func (s *Scope) HasMember(id string) bool { | |
| 	for _, user := range s.Members { | |
| 		if user.ID == id { | |
| 			return true | |
| 		} | |
| 	} | |
| 
 | |
| 	return false | |
| } | |
| 
 | |
| func (s *Scope) Stat(id int) *Stat { | |
| 	for _, stat := range s.Stats { | |
| 		if stat.ID == id { | |
| 			return &stat | |
| 		} | |
| 	} | |
| 
 | |
| 	return nil | |
| }
 |