diff --git a/apps/hadis/serializers/hadis.py b/apps/hadis/serializers/hadis.py index 015f700..5fbe99b 100644 --- a/apps/hadis/serializers/hadis.py +++ b/apps/hadis/serializers/hadis.py @@ -1304,10 +1304,12 @@ class TransmitterOriginalTextDetailSerializer(serializers.ModelSerializer): translation = LocalizedField() references = DetailedOriginalTextReferenceSerializer(many=True, read_only=True) transmitter_info = serializers.SerializerMethodField() + address = serializers.SerializerMethodField() + images = serializers.SerializerMethodField() class Meta: model = TransmitterOriginalText - fields = ['id', 'slug', 'title', 'text', 'translation', 'share_link', 'transmitter_info', 'references'] + fields = ['id', 'slug', 'title', 'text', 'translation', 'share_link', 'transmitter_info', 'address', 'images', 'references'] def get_transmitter_info(self, obj): return { @@ -1315,3 +1317,20 @@ class TransmitterOriginalTextDetailSerializer(serializers.ModelSerializer): "slug": obj.transmitter.slug, "name": get_localized_text(obj.transmitter.full_name, self.context.get('request')) } + + def get_address(self, obj): + return format_address_output(obj.references.first()) + + def get_images(self, obj): + request = self.context.get('request') + images_list = [] + for ref in obj.references.all(): + for img in ref.images.all(): + if img.image: + url = absolute_https_url(img.image.url, request) if request else absolute_https_url(img.image.url) + images_list.append({ + "id": img.id, + "image": url, + "thumbnail": url, + }) + return images_list