From ea58d5956e66f32c42f7b06baeb0a5f41ba6afea Mon Sep 17 00:00:00 2001 From: mkovalua Date: Fri, 28 Nov 2025 17:12:14 +0200 Subject: [PATCH 1/4] get default_license_id on draft registration creation (to get for FE after creation) and also for GET/ request to get it on drafts/id/metadata request --- api/draft_registrations/serializers.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/api/draft_registrations/serializers.py b/api/draft_registrations/serializers.py index dbb761d0df1..1f2d801e66f 100644 --- a/api/draft_registrations/serializers.py +++ b/api/draft_registrations/serializers.py @@ -98,6 +98,8 @@ class DraftRegistrationSerializer(DraftRegistrationLegacySerializer, Taxonomizab ) has_project = ser.SerializerMethodField() + default_license_id = ser.CharField(source="provider.default_license._id", read_only=True, default='') + def get_has_project(self, obj): return obj.has_project @@ -164,6 +166,8 @@ class DraftRegistrationDetailSerializer(DraftRegistrationSerializer, DraftRegist 'self': 'get_self_url', }) + default_license_id = ser.CharField(source="provider.default_license._id", read_only=True, default='') + def get_self_url(self, obj): return absolute_reverse( 'draft_registrations:draft-registration-detail', From 681f8dd96e396ceae5daab3445cb04eefe84b894 Mon Sep 17 00:00:00 2001 From: mkovalua Date: Fri, 28 Nov 2025 17:15:32 +0200 Subject: [PATCH 2/4] get default_license_id on preprint creation to handle it on FE (looks like it is not used drafts/id/metada ta) for prepints in browser url so for get request is is redundant --- api/preprints/serializers.py | 1 + 1 file changed, 1 insertion(+) diff --git a/api/preprints/serializers.py b/api/preprints/serializers.py index d47cc9098dc..fb29179c72a 100644 --- a/api/preprints/serializers.py +++ b/api/preprints/serializers.py @@ -254,6 +254,7 @@ class PreprintSerializer(TaxonomizableSerializerMixin, MetricsSerializerMixin, J why_no_prereg = ser.CharField(required=False, allow_blank=True, allow_null=True) prereg_links = ser.ListField(child=ser.URLField(), required=False) prereg_link_info = ser.ChoiceField(Preprint.PREREG_LINK_INFO_CHOICES, required=False, allow_blank=True) + default_license_id = ser.CharField(source="provider.default_license._id", read_only=True, default='') class Meta: type_ = 'preprints' From 942fb84bb91fcf9472b85cf228932466dc3e0af7 Mon Sep 17 00:00:00 2001 From: mkovalua Date: Mon, 1 Dec 2025 17:00:55 +0200 Subject: [PATCH 3/4] fix linter --- api/draft_registrations/serializers.py | 1 - 1 file changed, 1 deletion(-) diff --git a/api/draft_registrations/serializers.py b/api/draft_registrations/serializers.py index 1f2d801e66f..c7c372c6be2 100644 --- a/api/draft_registrations/serializers.py +++ b/api/draft_registrations/serializers.py @@ -100,7 +100,6 @@ class DraftRegistrationSerializer(DraftRegistrationLegacySerializer, Taxonomizab has_project = ser.SerializerMethodField() default_license_id = ser.CharField(source="provider.default_license._id", read_only=True, default='') - def get_has_project(self, obj): return obj.has_project From f6538cad9a058994aae482f5729c48962e377717 Mon Sep 17 00:00:00 2001 From: mkovalua Date: Mon, 1 Dec 2025 17:14:53 +0200 Subject: [PATCH 4/4] fix linter --- api/draft_registrations/serializers.py | 4 ++-- api/preprints/serializers.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/api/draft_registrations/serializers.py b/api/draft_registrations/serializers.py index c7c372c6be2..f08426d32a7 100644 --- a/api/draft_registrations/serializers.py +++ b/api/draft_registrations/serializers.py @@ -98,7 +98,7 @@ class DraftRegistrationSerializer(DraftRegistrationLegacySerializer, Taxonomizab ) has_project = ser.SerializerMethodField() - default_license_id = ser.CharField(source="provider.default_license._id", read_only=True, default='') + default_license_id = ser.CharField(source='provider.default_license._id', read_only=True, default='') def get_has_project(self, obj): return obj.has_project @@ -165,7 +165,7 @@ class DraftRegistrationDetailSerializer(DraftRegistrationSerializer, DraftRegist 'self': 'get_self_url', }) - default_license_id = ser.CharField(source="provider.default_license._id", read_only=True, default='') + default_license_id = ser.CharField(source='provider.default_license._id', read_only=True, default='') def get_self_url(self, obj): return absolute_reverse( diff --git a/api/preprints/serializers.py b/api/preprints/serializers.py index fb29179c72a..b127d074f61 100644 --- a/api/preprints/serializers.py +++ b/api/preprints/serializers.py @@ -254,7 +254,7 @@ class PreprintSerializer(TaxonomizableSerializerMixin, MetricsSerializerMixin, J why_no_prereg = ser.CharField(required=False, allow_blank=True, allow_null=True) prereg_links = ser.ListField(child=ser.URLField(), required=False) prereg_link_info = ser.ChoiceField(Preprint.PREREG_LINK_INFO_CHOICES, required=False, allow_blank=True) - default_license_id = ser.CharField(source="provider.default_license._id", read_only=True, default='') + default_license_id = ser.CharField(source='provider.default_license._id', read_only=True, default='') class Meta: type_ = 'preprints'