Changeset View
Changeset View
Standalone View
Standalone View
keyserver/src/fetchers/thread-permission-fetchers.js
// @flow | // @flow | ||||
import genesis from 'lib/facts/genesis.js'; | |||||
import { | import { | ||||
permissionLookup, | permissionLookup, | ||||
makePermissionsBlob, | makePermissionsBlob, | ||||
getRoleForPermissions, | getRoleForPermissions, | ||||
} from 'lib/permissions/thread-permissions.js'; | } from 'lib/permissions/thread-permissions.js'; | ||||
import { relationshipBlockedInEitherDirection } from 'lib/shared/relationship-utils.js'; | import { relationshipBlockedInEitherDirection } from 'lib/shared/relationship-utils.js'; | ||||
import { | import { | ||||
threadFrozenDueToBlock, | threadFrozenDueToBlock, | ||||
▲ Show 20 Lines • Show All 287 Lines • ▼ Show 20 Lines | if (memberRelationshipHasBlock) { | ||||
ignoreMembers.add(memberID); | ignoreMembers.add(memberID); | ||||
continue; | continue; | ||||
} | } | ||||
const permissionsFromParent = parentPermissions[memberID]; | const permissionsFromParent = parentPermissions[memberID]; | ||||
if (memberOfContainingThread.get(memberID) === 'non-member') { | if (memberOfContainingThread.get(memberID) === 'non-member') { | ||||
ignoreMembers.add(memberID); | ignoreMembers.add(memberID); | ||||
continue; | continue; | ||||
} | } | ||||
const isParentThreadGenesis = params.parentThreadID === genesis.id; | |||||
if ( | if ( | ||||
memberOfContainingThread.get(memberID) === 'no-containing-thread' && | (memberOfContainingThread.get(memberID) === 'no-containing-thread' || | ||||
isParentThreadGenesis) && | |||||
relationshipStatus !== userRelationshipStatus.FRIEND && | relationshipStatus !== userRelationshipStatus.FRIEND && | ||||
requireRelationship | requireRelationship | ||||
) { | ) { | ||||
ignoreMembers.add(memberID); | ignoreMembers.add(memberID); | ||||
continue; | continue; | ||||
} | } | ||||
const permissions = makePermissionsBlob( | const permissions = makePermissionsBlob( | ||||
params.defaultRolePermissions, | params.defaultRolePermissions, | ||||
▲ Show 20 Lines • Show All 48 Lines • Show Last 20 Lines |