|
|
|
@ -172,7 +172,7 @@ class StudyRole(MetaDataModel):
@@ -172,7 +172,7 @@ class StudyRole(MetaDataModel):
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
jwt_token = jwt.encode(payload=jwt_data, key=settings.SECRET_KEY, algorithm="HS256") |
|
|
|
|
url = f'{settings.STUDY_INVITATION_LINK_DOMAIN}' + reverse('api:v1:study-invite-join', kwargs={'study_id': self.study.pk, 'jwt_token': jwt_token}) |
|
|
|
|
url = settings.STUDY_INVITATION_LINK_DOMAIN.format(study_id=self.study.pk, jwt_token=jwt_token) |
|
|
|
|
|
|
|
|
|
template_variables = { |
|
|
|
|
'researcher': self.researcher.display_name, |
|
|
|
@ -218,7 +218,8 @@ class StudyRole(MetaDataModel):
@@ -218,7 +218,8 @@ class StudyRole(MetaDataModel):
|
|
|
|
|
jwt_data = None |
|
|
|
|
try: |
|
|
|
|
jwt_data = jwt.decode(jwt_token, settings.SECRET_KEY, algorithms=["HS256"]) |
|
|
|
|
|
|
|
|
|
except jwt.DecodeError: |
|
|
|
|
raise ValidationError(_('Invitation token is not a valid JSON token')) |
|
|
|
|
except jwt.ExpiredSignatureError: |
|
|
|
|
raise ValidationError(_('Invitation token is expired. Please ask for a new invitation')) |
|
|
|
|
|
|
|
|
|