a
    i.yf*  ã                   @   s  d dl mZ ddlmZmZmZmZmZmZm	Z	m
Z
mZ ddlmZ d dl mZ ddlm	Z	 G dd„ dejƒZG dd	„ d	ejƒZG d
d„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZG dd„ dejƒZdS )é    )Úserializersé   )	ÚCityÚCategoryÚPlaceÚAdvertisementÚBookingÚ	ContactUsÚUserÚFavoritePlaceÚEmergencyNumber)Úget_translated_field)r
   c                   @   s   e Zd ZG dd„ dƒZdS )ÚUserSerializerc                   @   s   e Zd ZeZg d¢ZdS )zUserSerializer.Meta)	ÚidÚusernameÚemailÚphone_numberÚpreferred_languageÚcityÚimageÚ
created_atÚ
updated_atN)Ú__name__Ú
__module__Ú__qualname__r
   ÚmodelÚfields© r   r   úO/Users/centercodebase/Documents/newdalilibackend/backend/mainapp/serializers.pyÚMeta   s   r   N©r   r   r   r   r   r   r   r   r      s   r   c                   @   s*   e Zd Ze ¡ ZG dd„ dƒZdd„ ZdS )ÚAdSerializerc                   @   s   e Zd ZeZg d¢ZdS )zAdSerializer.Meta)Útitler   ÚlinkÚ	is_activeÚexpiry_dater   r   ÚuserN)r   r   r   r   r   r   r   r   r   r   r      s   r   c                 C   s    | j d j}t|dƒ}t||ƒS )NÚrequestr"   ©Úcontextr&   r   Úgetattr©ÚselfÚobjr&   Ú
field_namer   r   r   Ú	get_title   s    
zAdSerializer.get_titleN)r   r   r   r   ÚSerializerMethodFieldr"   r   r/   r   r   r   r   r!      s   r!   c                   @   s*   e Zd Ze ¡ ZG dd„ dƒZdd„ ZdS )ÚCitySerializerc                   @   s   e Zd ZeZg d¢ZdS )zCitySerializer.Meta)Únamer   r   N)r   r   r   r   r   r   r   r   r   r   r   !   s   r   c                 C   s    | j d j}t|dƒ}t||ƒS ©Nr'   r2   r(   r+   r   r   r   Úget_name%   s    
zCitySerializer.get_nameN©r   r   r   r   r0   r2   r   r4   r   r   r   r   r1      s   r1   c                   @   s*   e Zd Ze ¡ ZG dd„ dƒZdd„ ZdS )ÚCategorySerializerc                   @   s   e Zd ZeZg d¢ZdS )zCategorySerializer.Meta)r2   r   r   r   N)r   r   r   r   r   r   r   r   r   r   r   -   s   r   c                 C   s    | j d j}t|dƒ}t||ƒS r3   r(   r+   r   r   r   r4   1   s    
zCategorySerializer.get_nameNr5   r   r   r   r   r6   *   s   r6   c                   @   s:   e Zd Ze ¡ Ze ¡ ZG dd„ dƒZdd„ Zdd„ Z	dS )ÚPlaceSerializerc                   @   s   e Zd ZeZg d¢ZdS )zPlaceSerializer.Meta)	r2   Úcover_imageÚ	longitudeÚlatitudeÚratingÚdescriptionÚmap_linkr   r   N)r   r   r   r   r   r   r   r   r   r   r   :   s   r   c                 C   s    | j d j}t|dƒ}t||ƒS r3   r(   r+   r   r   r   r4   >   s    
zPlaceSerializer.get_namec                 C   s    | j d j}t|dƒ}t||ƒS )Nr'   r<   r(   r+   r   r   r   Úget_descriptionC   s    
zPlaceSerializer.get_descriptionN)
r   r   r   r   r0   r2   r<   r   r4   r>   r   r   r   r   r7   6   s
   r7   c                   @   s   e Zd ZG dd„ dƒZdS )ÚBookingSerializerc                   @   s   e Zd ZeZg d¢ZdS )zBookingSerializer.Meta)Úplacer&   ÚsubjectÚmessager   r   N)r   r   r   r   r   r   r   r   r   r   r   M   s   r   Nr    r   r   r   r   r?   L   s   r?   c                   @   s   e Zd ZG dd„ dƒZdS )ÚContactUsSerializerc                   @   s   e Zd ZeZg d¢ZdS )zContactUsSerializer.Meta)Ú	user_namer   r   rB   Úis_readr   r   N)r   r   r   r	   r   r   r   r   r   r   r   R   s   r   Nr    r   r   r   r   rC   Q   s   rC   c                   @   s   e Zd ZG dd„ dƒZdS )ÚFavoritePlaceSerializerc                   @   s   e Zd ZeZg d¢ZdZdS )zFavoritePlaceSerializer.Meta)r@   r   r   r   N)r   r   r   r   r   r   Údepthr   r   r   r   r   [   s   r   Nr    r   r   r   r   rF   Z   s   rF   c                   @   s   e Zd ZG dd„ dƒZdS )ÚEmergencyNumberSerializerc                   @   s   e Zd ZeZdZdS )zEmergencyNumberSerializer.MetaÚ__all__N)r   r   r   r   r   r   r   r   r   r   r   c   s   r   Nr    r   r   r   r   rH   b   s   rH   N)Úrest_frameworkr   Úmodelsr   r   r   r   r   r	   r
   r   r   Úutilsr   ÚModelSerializerr   r!   r1   r6   r7   r?   rC   rF   rH   r   r   r   r   Ú<module>   s   ,	