* Restricted users (#4334): initial implementation * Add User.IsRestricted & UI to edit it * Pass user object instead of user id to places where IsRestricted flag matters * Restricted users: maintain access rows for all referenced repos (incl public) * Take logged in user & IsRestricted flag into account in org/repo listings, searches and accesses * Add basic repo access tests for restricted users Signed-off-by: Manush Dodunekov <manush@stendahls.se> * Mention restricted users in the faq Signed-off-by: Manush Dodunekov <manush@stendahls.se> * Revert unnecessary change `.isUserPartOfOrg` -> `.IsUserPartOfOrg` Signed-off-by: Manush Dodunekov <manush@stendahls.se> * Remove unnecessary `org.IsOrganization()` call Signed-off-by: Manush Dodunekov <manush@stendahls.se> * Revert to an `int64` keyed `accessMap` * Add type `userAccess` * Add convenience func updateUserAccess() * Turn accessMap into a `map[int64]userAccess` Signed-off-by: Manush Dodunekov <manush@stendahls.se> * or even better: `map[int64]*userAccess` * updateUserAccess(): use tighter syntax as suggested by lafriks * even tighter * Avoid extra loop * Don't disclose limited orgs to unauthenticated users * Don't assume block only applies to orgs * Use an array of `VisibleType` for filtering * fix yet another thinko * Ok - no need for u * Revert "Ok - no need for u" This reverts commit 5c3e886aabd5acd997a3b35687d322439732c200. Co-authored-by: Antoine GIRARD <sapk@users.noreply.github.com> Co-authored-by: Lauris BH <lauris@nix.lv>
		
			
				
	
	
		
			65 lines
		
	
	
	
		
			566 B
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
	
		
			566 B
		
	
	
	
		
			YAML
		
	
	
	
	
	
| -
 | |
|   id: 1
 | |
|   uid: 2
 | |
|   org_id: 3
 | |
|   is_public: true
 | |
| 
 | |
| -
 | |
|   id: 2
 | |
|   uid: 4
 | |
|   org_id: 3
 | |
|   is_public: false
 | |
| 
 | |
| -
 | |
|   id: 3
 | |
|   uid: 5
 | |
|   org_id: 6
 | |
|   is_public: true
 | |
| 
 | |
| -
 | |
|   id: 4
 | |
|   uid: 5
 | |
|   org_id: 7
 | |
|   is_public: false
 | |
| 
 | |
| -
 | |
|   id: 5
 | |
|   uid: 15
 | |
|   org_id: 17
 | |
|   is_public: true
 | |
| 
 | |
| -
 | |
|   id: 6
 | |
|   uid: 18
 | |
|   org_id: 17
 | |
|   is_public: false
 | |
| 
 | |
| -
 | |
|   id: 7
 | |
|   uid: 20
 | |
|   org_id: 19
 | |
|   is_public: true
 | |
| 
 | |
| -
 | |
|   id: 8
 | |
|   uid: 24
 | |
|   org_id: 25
 | |
|   is_public: true
 | |
| 
 | |
| -
 | |
|   id: 9
 | |
|   uid: 28
 | |
|   org_id: 3
 | |
|   is_public: true
 | |
| 
 | |
| -
 | |
|   id: 10
 | |
|   uid: 28
 | |
|   org_id: 6
 | |
|   is_public: true
 | |
| 
 | |
| -
 | |
|   id: 11
 | |
|   uid: 29
 | |
|   org_id: 17
 | |
|   is_public: true
 |