diff --git a/scipost_django/organizations/admin.py b/scipost_django/organizations/admin.py index 6923475aa42305d4d2e3091c45ee3116ef97a118..0b7d0c064aa769250c0602c2a0b315b46ad6e551 100644 --- a/scipost_django/organizations/admin.py +++ b/scipost_django/organizations/admin.py @@ -37,12 +37,17 @@ class OrganizationAdmin(GuardedModelAdmin): OrganizationEventInline, ContactPersonInline, ] - search_fields = ["name", "acronym"] + list_display = ["id", "name", "acronym", "ror_id", "status", "orgtype"] + search_fields = ["name", "acronym", "name_original", "ror_json"] + list_filter = ["status", "orgtype"] autocomplete_fields = [ "parent", "superseded_by", ] + def ror_id(self, obj): + return obj.ror_json.get("id", None) if obj.ror_json else None + admin.site.register(Organization, OrganizationAdmin) diff --git a/scipost_django/organizations/migrations/0020_rename_grid_json_organization_ror_json.py b/scipost_django/organizations/migrations/0020_rename_grid_json_organization_ror_json.py new file mode 100644 index 0000000000000000000000000000000000000000..470761d779059d62b68161af00f6a03cc5d48411 --- /dev/null +++ b/scipost_django/organizations/migrations/0020_rename_grid_json_organization_ror_json.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.18 on 2023-11-27 08:36 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('organizations', '0019_auto_20220314_0723'), + ] + + operations = [ + migrations.RenameField( + model_name='organization', + old_name='grid_json', + new_name='ror_json', + ), + ] diff --git a/scipost_django/organizations/models.py b/scipost_django/organizations/models.py index b4e7c8da3312c7899b932bf6e4f7feb82eca5523..9000d02981704ec0caf7b828e2214f60ad65c19f 100644 --- a/scipost_django/organizations/models.py +++ b/scipost_django/organizations/models.py @@ -124,9 +124,9 @@ class Organization(models.Model): css_class = models.CharField( max_length=256, blank=True, verbose_name="Additional logo CSS class" ) - grid_json = models.JSONField( + ror_json = models.JSONField( default=dict, blank=True, null=True - ) # JSON data from GRID + ) # JSON data from ROR crossref_json = models.JSONField( default=dict, blank=True, null=True ) # JSON data from Crossref @@ -207,7 +207,7 @@ class Organization(models.Model): return publications.filter(pk__in=self.cf_associated_publication_ids["all"]) def get_affiliate_publications(self, journal): - return AffiliatePublications.objects.filter( + return AffiliatePublication.objects.filter( pubfractions__organization=self, journal=journal, )