From 083c29cb998e60af84d359f5441be0457e5c293e Mon Sep 17 00:00:00 2001 From: Okke Harsta Date: Mon, 2 Dec 2024 13:02:56 +0100 Subject: [PATCH] Public faaculty page --- apps/institution/schema.py | 6 ++++++ apps/issuer/models.py | 1 + 2 files changed, 7 insertions(+) diff --git a/apps/institution/schema.py b/apps/institution/schema.py index f0f78f21..827643cb 100644 --- a/apps/institution/schema.py +++ b/apps/institution/schema.py @@ -114,6 +114,7 @@ class Query(object): current_institution = graphene.Field(InstitutionType) institutions = graphene.List(InstitutionType) public_institutions = graphene.List(InstitutionType) + public_faculty = graphene.Field(FacultyType, id=graphene.String()) faculties = graphene.List(FacultyType) issuers = graphene.List(IssuerType) faculty = graphene.Field(FacultyType, id=graphene.String()) @@ -140,6 +141,11 @@ def resolve_public_institution(self, info, **kwargs): def resolve_public_institutions(self, info, **kwargs): return Institution.objects.filter(public_institution=True).all() + def resolve_public_faculty(self, info, **kwargs): + id = kwargs.get('id') + if id is not None: + return Faculty.objects.get(entity_id=id) + def resolve_faculties(self, info, **kwargs): return [fac for fac in Faculty.objects.all() if fac.has_permissions(info.context.user, ['may_read'])] diff --git a/apps/issuer/models.py b/apps/issuer/models.py index d3fdb8eb..9f49eb0c 100644 --- a/apps/issuer/models.py +++ b/apps/issuer/models.py @@ -437,6 +437,7 @@ def get_json(self, obi_version=CURRENT_OBI_VERSION, include_extra=True, use_cano 'on_behalf_of': self.faculty.on_behalf_of, 'on_behalf_of_url': self.faculty.on_behalf_of_url, 'on_behalf_of_display_name': self.faculty.on_behalf_of_display_name, + 'entityId': self.faculty.entity_id, 'institution': self.faculty.institution.get_json(obi_version=CURRENT_OBI_VERSION, expand_awards=expand_awards)} image_url = OriginSetting.HTTP + reverse('faculty_image', kwargs={'entity_id': self.faculty.entity_id})