parent
							
								
									76cf79158e
								
							
						
					
					
						commit
						457249c4e3
					
				
					 1 changed files with 8 additions and 1 deletions
				
			
		| 
						 | 
					@ -170,7 +170,14 @@ export async function addSkill(surveyId: number, title: string, description: str
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/// Check whether a given user has at least the given access level to the given survey. This is based on a database query and doesn't need the survey object already to be loaded
 | 
					/// Check whether a given user has at least the given access level to the given survey. This is based on a database query and doesn't need the survey object already to be loaded
 | 
				
			||||||
export async function hasAccess(surveyId: number, userId: number, accessLevel: AccessLevel): Promise<boolean> {
 | 
					export async function hasAccess(surveyId: number, userId: number, accessLevel: AccessLevel): Promise<boolean> {
 | 
				
			||||||
    const result = await db.select().from(surveyPermissionsTable).where(and(eq(surveyPermissionsTable.surveyId, surveyId), eq(surveyPermissionsTable.user, userId), gte(surveyPermissionsTable.access, accessLevel)));
 | 
					    const result = await db.select().from(surveyPermissionsTable).where(
 | 
				
			||||||
 | 
					        and(
 | 
				
			||||||
 | 
					            eq(surveyPermissionsTable.surveyId, surveyId),
 | 
				
			||||||
 | 
					            or(
 | 
				
			||||||
 | 
					                eq(surveyPermissionsTable.user, userId),
 | 
				
			||||||
 | 
					                isNull(surveyPermissionsTable.user)
 | 
				
			||||||
 | 
					            ),
 | 
				
			||||||
 | 
					            gte(surveyPermissionsTable.access, accessLevel)));
 | 
				
			||||||
    return result.length > 0;
 | 
					    return result.length > 0;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		
		Reference in a new issue