o
    g7                     @   s  d dl Z d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZmZmZ d dlmZ d dlmZ d d	lmZ e	 Zd
edfdedfgZd
edfdedfgZd
edfdedfgZdd ZG dd dejZG dd dejZdd ZG dd dejZG dd dejZdS )    N)BeautifulSoup)models)gettext_lazy)get_user_model)CityCountryLocation)	WEBPField)Language)slugifyT	submittedFignoredactivedeactiveyesnoc                 C   s   d| j  dS )Nz
developer/.webp)sluginstancefilename r   1/var/www/Entralon-Web-Backend/developer/models.pyimage_developer_folder   s   r   c                       s  e Zd ZejeddddddZejedddddddZejeddddd	Z	ej
ed
dedZej
eddedZej
eddedZejeddddd	ZeededddZejedddZejeddddd	ZejeejdddddZejeejedddddZejeejedddddZej
eddedZej edddZ!ej eddd Z"d!d" Z#G d#d$ d$Z$ fd%d&Z%e&d'd( Z'  Z(S ))	DeveloperName   T
max_lengthdb_indexnullblankSlug   )r   r   uniquer    r!   Summaryr   r    r!   FeaturedFdefaultchoicesr   Deletedzweb addressImagezblank/3590078.webp)	upload_tor   r)   Rate
   r)   zTarget locationlocation
developers	on_deleteverbose_namerelated_namer    r!   countrycity
translated
created atauto_now_add
updated atauto_nowc                 C      | j  S Nnameselfr   r   r   __str__6      zDeveloper.__str__c                   @   s$   e Zd ZedZedZg dZdS )zDeveloper.Metar   
Developers)rC   z-web_addressr   -idN__name__
__module____qualname___r5   verbose_name_pluralorderingr   r   r   r   Meta9   s    rQ   c                    s\   | j rt| j dd| _| jd u r| jd ur| jj| _| jd u r)| jd ur)| jj| _t  S )NTallow_unicode)rC   r   r   r7   r1   r8   supersaverE   kwargs	__class__r   r   rU   >   s   


zDeveloper.savec                 C   s   | j   S rA   )developmentsallcountrD   r   r   r   property_numF   s   zDeveloper.property_num))rK   rL   rM   r   	CharFieldrN   rC   	SlugFieldr   summaryBooleanFieldQUESTION_BOOLEANis_featured	is_active
is_deletedURLFieldweb_addressr	   r   imageIntegerFieldratetarget_location
ForeignKeyr   CASCADEr1   r   r7   r   r8   r9   DateTimeField
created_at
updated_atrF   rQ   rU   propertyr]   __classcell__r   r   rX   r   r   !   s,    r   c                       s  e Zd ZejeejddZejeejddZ	ej
eddddddZejedd	ddddd
Zej
edd	dddZejeddddZejeddedZejeddedZejeddddZejedddZejedddZdd Z fddZG dd dZ  ZS )DeveloperTranslate
translates)r4   r6   developer_translatesr   r   Tr   r"   r#   )r   r   rS   r    r!   r%   r&   Descriptionr    r!   ParaphrasedFr(   zParaphrase errorErrorr:   r;   r=   r>   c                 C   r@   rA   rB   rD   r   r   r   rF   W   rG   zDeveloperTranslate.__str__c                    sd   | j rt| j dd| _| jd u s| jdkr)zt| jd d d | _W n   Y t jdi |S )NTrR    zhtml.parser   r   )	rC   r   r   r`   r   descriptionget_textrT   rU   rV   rX   r   r   rU   Z   s
    zDeveloperTranslate.savec                   @   s8   e Zd ZedZedZddgZejddgddgZ	dS )	zDeveloperTranslate.MetazDeveloper TranslatezDeveloper Translates	developerrI   language%repeated_language_developer_translate)fieldsrC   N)
rK   rL   rM   rN   r5   rO   rP   r   UniqueConstraintconstraintsr   r   r   r   rQ   a   s    rQ   )rK   rL   rM   r   rl   r   rm   r~   r
   r   r^   rN   rC   r_   r   r`   	TextFieldr|   ra   rb   is_paraphrasedparaphrase_errorerrorrn   ro   rp   rF   rU   rQ   rr   r   r   rX   r   rs   J   s    rs   c                 C   s   d| j  dt j dS )Nzcontact-person//r   )iduuiduuid4hexr   r   r   r   image_person_folderi   s   r   c                   @   s   e Zd ZejeejedddZej	edddZ
ej	edddZejedddZej	ed	ddZej	ed
ddZeededddZejeddedZejeddedZejedddZejedddZdd ZG dd dZdS )ContactPersonr~   contact_personr4   r5   r6   r   r   )r   PhoneEmailMobileWhatsappr,   T)r-   r!   r    Checkedr(   r+   Fr:   r;   r=   r>   c                 C   r@   rA   rB   rD   r   r   r   rF   {   rG   zContactPerson.__str__c                   @   "   e Zd ZedZedZdgZdS )zContactPerson.MetazContact PersonzContact PersonsrI   NrJ   r   r   r   r   rQ   ~       
rQ   N)rK   rL   rM   r   rl   r   rm   rN   r~   r^   rC   phone
EmailFieldemailmobilewhatsappr	   r   rh   ra   CHECK_BOOLEANrd   rb   re   rn   ro   rp   rF   rQ   r   r   r   r   r   l   s    r   c                   @   s   e Zd ZejeejedddZeje	ej
edddddZejeddddZejed	d
dZejedddZejedddZdd ZG dd dZdS )DeveloperReviewr~   developer_reviewsr   userTr3   Reviewrw   r.   r/   r0   r:   r;   r=   r>   c                 C   s
   | j j S rA   )r~   rC   rD   r   r   r   rF      s   
zDeveloperReview.__str__c                   @   r   )zDeveloperReview.MetazDeveloper ReviewzDeveloper ReviewsrI   NrJ   r   r   r   r   rQ      r   rQ   N)rK   rL   rM   r   rl   r   rm   rN   r~   UserSET_NULLr   r   reviewri   rj   rn   ro   rp   rF   rQ   r   r   r   r   r      s    r   )r   bs4r   	django.dbr   django.utils.translationr   rN   django.contrib.authr   geo_location.modelsr   r   r   main.fieldsr	   main.modelsr
   django.utils.textr   r   r   ACTIVE_BOOLEANrb   r   Modelr   rs   r   r   r   r   r   r   r   <module>   s2    





)