diff --git a/apps/hadis/serializers/category.py b/apps/hadis/serializers/category.py index 78a49f2..d845b6a 100644 --- a/apps/hadis/serializers/category.py +++ b/apps/hadis/serializers/category.py @@ -8,14 +8,14 @@ from django.utils.translation import get_language def _get_localized_item_value(item): """ - Prefer `title`, but fall back to `text` or `name` for older/mis-shaped localized entries. + Prefer `title`, but fall back to `text`, `name`, or `description` for localized entries. """ if not item: return None if isinstance(item, str): return item if isinstance(item, dict): - return item.get("title") or item.get("text") or item.get("name") + return item.get("title") or item.get("text") or item.get("name") or item.get("description") return str(item) def get_localized_text(json_list, request=None, fallback_lang="en", language_code=None): diff --git a/apps/hadis/serializers/hadis.py b/apps/hadis/serializers/hadis.py index 9185ac8..28327a2 100644 --- a/apps/hadis/serializers/hadis.py +++ b/apps/hadis/serializers/hadis.py @@ -1288,6 +1288,7 @@ class HadisShortSerializer(serializers.ModelSerializer): class HadisDetailSerializer(serializers.ModelSerializer): """Detailed serializer for Hadis with core information (transmitters and corrections moved to separate endpoints)""" hadis_status = HadisStatusSerializer(read_only=True) + status_text = LocalizedField(source='hadis_status_text') tags = HadisTagSerializer(many=True, read_only=True) references = HadisReferenceSerializer( many=True, @@ -1296,13 +1297,12 @@ class HadisDetailSerializer(serializers.ModelSerializer): reference_images = SerializerMethodField() address = LocalizedField() category_slug = serializers.CharField(source='category.slug', read_only=True) - # address_details = serializers.SerializerMethodField() class Meta: model = Hadis fields = [ - 'id', 'number', 'slug', 'category_id', 'category_slug', 'hadis_status','links','share_link', - 'tags','references','reference_images','address' + 'id', 'number', 'slug', 'category_id', 'category_slug', 'hadis_status', 'status_text', 'links', 'share_link', + 'tags', 'references', 'reference_images', 'address' ] # def get_address_details(self, obj):