Incoming invitations: implement incoming invitations and accepting them

This commit is contained in:
Tom Hacohen
2020-05-20 15:15:24 +03:00
parent 8d1c02dcb9
commit 47e1eec122
3 changed files with 63 additions and 6 deletions

View File

@@ -150,6 +150,7 @@ class CollectionInvitation(models.Model):
version = models.PositiveSmallIntegerField(default=1)
fromMember = models.ForeignKey(CollectionMember, on_delete=models.CASCADE)
# FIXME: make sure to delete all invitations for the same collection once one is accepted
# Make sure to not allow invitations if already a member
user = models.ForeignKey(settings.AUTH_USER_MODEL, related_name='incoming_invitations', on_delete=models.CASCADE)
signedEncryptionKey = models.BinaryField(editable=False, blank=False, null=False)
@@ -165,6 +166,10 @@ class CollectionInvitation(models.Model):
def __str__(self):
return '{} {}'.format(self.fromMember.collection.uid, self.user)
@cached_property
def collection(self):
return self.fromMember.collection
class UserInfo(models.Model):
owner = models.OneToOneField(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, primary_key=True)