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})