From cb57e09d30d9633979ed0299268a758264485136 Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Mon, 7 Nov 2022 17:49:36 +0100 Subject: [PATCH] change variable names for better understanding --- .../src/middleware/permissionsMiddleware.js | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/backend/src/middleware/permissionsMiddleware.js b/backend/src/middleware/permissionsMiddleware.js index 6b71f3dce..9aef8646b 100644 --- a/backend/src/middleware/permissionsMiddleware.js +++ b/backend/src/middleware/permissionsMiddleware.js @@ -122,41 +122,41 @@ const isAllowedToChangeGroupMemberRole = rule({ cache: 'no_cache', })(async (_parent, args, { user, driver }) => { if (!(user && user.id)) return false - const adminId = user.id + const currentUserId = user.id const { groupId, userId, roleInGroup } = args - if (adminId === userId) return false + if (currentUserId === userId) return false const session = driver.session() const readTxPromise = session.readTransaction(async (transaction) => { const transactionResponse = await transaction.run( ` - MATCH (admin:User {id: $adminId})-[adminMembership:MEMBER_OF]->(group:Group {id: $groupId}) + MATCH (currentUser:User {id: $currentUserId})-[currentUserMembership:MEMBER_OF]->(group:Group {id: $groupId}) OPTIONAL MATCH (group)<-[userMembership:MEMBER_OF]-(member:User {id: $userId}) - RETURN group {.*}, admin {.*, myRoleInGroup: adminMembership.role}, member {.*, myRoleInGroup: userMembership.role} + RETURN group {.*}, currentUser {.*, myRoleInGroup: currentUserMembership.role}, member {.*, myRoleInGroup: userMembership.role} `, - { groupId, adminId, userId }, + { groupId, currentUserId, userId }, ) return { - admin: transactionResponse.records.map((record) => record.get('admin'))[0], + currentUser: transactionResponse.records.map((record) => record.get('currentUser'))[0], group: transactionResponse.records.map((record) => record.get('group'))[0], member: transactionResponse.records.map((record) => record.get('member'))[0], } }) try { - const { admin, group, member } = await readTxPromise + const { currentUser, group, member } = await readTxPromise const groupExists = !!group - const adminExists = !!admin + const currentUserExists = !!currentUser const userIsMember = !!member const sameUserRoleInGroup = member && member.myRoleInGroup === roleInGroup const userIsOwner = member && ['owner'].includes(member.myRoleInGroup) - const adminIsAdmin = admin && ['admin'].includes(admin.myRoleInGroup) + const currentUserIsAdmin = currentUser && ['admin'].includes(currentUser.myRoleInGroup) const adminCanSetRole = ['pending', 'usual', 'admin'].includes(roleInGroup) - const adminIsOwner = admin && ['owner'].includes(admin.myRoleInGroup) + const currentUserIsOwner = currentUser && ['owner'].includes(currentUser.myRoleInGroup) const ownerCanSetRole = ['pending', 'usual', 'admin', 'owner'].includes(roleInGroup) return ( groupExists && - adminExists && + currentUserExists && (!userIsMember || (userIsMember && (sameUserRoleInGroup || !userIsOwner))) && - ((adminIsAdmin && adminCanSetRole) || (adminIsOwner && ownerCanSetRole)) + ((currentUserIsAdmin && adminCanSetRole) || (currentUserIsOwner && ownerCanSetRole)) ) } catch (error) { throw new Error(error)