o
    @,g$                     @   s   d dl mZ d dlmZ ddlmZmZmZmZ dej	_
dej	_dej	_G dd	 d	ejZeeG d
d dejZG dd dejZeeG dd dejZdS )    )admin)format_html   )ArticleArticleImage
InnovationInnovationImagezCMS CHAMPS CENTERzMy CMS CHAMPS CENTERzWelcome to CHAMPS CENTERc                   @   sT   e Zd ZeZg dZdgZdZdZdZ	dZ
G dd dZddd	Zd
d Zde_dS )ArticleImageInlineshow_previewimagecaptionr   Tr   Nc                   @      e Zd ZdZddiZdS )zArticleImageInline.Mediaz"js/admin_inline_multiple_upload.jsallzcss/inline_preview.cssN__name__
__module____qualname__jscss r   r   /var/www/html/blog/admin.pyMedia       r   c                 K      dS )Nr   r   )selfrequestobjkwargsr   r   r   	get_extra      zArticleImageInline.get_extrac                 C      |j r
td|j jS dS NzM<div class="thumbnail-hover"><img src="{}" style="max-height:100px;" /></div>No Imager   r   urlr   r   r   r   r   r         zArticleImageInline.show_previewPreviewN)r   r   r   r   modelfieldsreadonly_fields
can_deleteextramin_nummax_numr   r!   r   short_descriptionr   r   r   r   r	   	   s    

	r	   c                       x   e Zd ZdZegZdd Zde_d fdd	Z fdd	Z	 fd
dZ
 fddZdddZdddZdddZ  ZS )ArticleAdmintitlecategory
show_coverc                 C   r#   Nz<img src="{}" width="100" />r%   cover_imager   r'   r(   r   r   r   r9   +      zArticleAdmin.show_coverCover PreviewNc                    (   t  j||fi |}dd }||_|S )Nc                  _   r   NTr   argskwr   r   r   force_multipart3   r"   z.ArticleAdmin.get_form.<locals>.force_multipartsuperget_formis_multipartr   r   r   r    
form_classrD   	__class__r   r   rG   1      zArticleAdmin.get_formc              	         |j tkrY|jD ]E}|d}|j|g }|rIt|dkrI|jdd}|j}	|D ]}
tj	j
|	|
|jddd q)d |jd< d |j_d|jd	< q|  qt |||| d S t |||| d S )
Nr   r   Fcommitr    )articler   r   TDELETE)r,   r   forms
add_prefixFILESgetlistlensaverR   objectscreatecleaned_datagetinstancer   rF   save_formset)r   r   formformsetchangeinline_form	files_keymultiple_filesinline_instancearticle_objfrK   r   r   r_   8   &   




zArticleAdmin.save_formsetc                    T   |j js|j jjdd rd|_n|j jjdd rd|_t |||| d S N
admin-csscnamecssc
admin-sctcsctcuseris_superusergroupsfilterexistsr8   rF   
save_modelr   r   r   r`   rb   rK   r   r   rx   S      zArticleAdmin.save_modelc                    `   t  |}|jjr|S |jjjdd r|jddS |jjjdd r,|jddS | S Nrl   rm   ro   )r8   rp   rq   rF   get_querysetrs   rt   ru   rv   rw   noner   r   qsrK   r   r   r~   [      zArticleAdmin.get_querysetc                 C      |j jsdgS g S Nr8   rs   rt   r   r   r   r   r   r   get_excludee      zArticleAdmin.get_excludec                 C   `   |j jrdS |d ur.|j jjdd r|jdkrdS |j jjdd r,|jdkr,dS dS dS NTrl   rm   ro   rp   rq   Frs   rt   ru   rv   rw   r8   r   r   r   r   has_change_permissionj      z"ArticleAdmin.has_change_permissionc                 C   r   r   r   r   r   r   r   has_delete_permissionu   r   z"ArticleAdmin.has_delete_permissionr+   )r   r   r   list_displayr	   inlinesr9   r3   rG   r_   rx   r~   r   r   r   __classcell__r   r   rK   r   r5   &       


r5   c                   @   sB   e Zd ZeZg dZdgZdZdZG dd dZ	dd Z
d	e
_d
S )InnovationImageInliner
   r   r   Tc                   @   r   )zInnovationImageInline.Mediar   r   r   Nr   r   r   r   r   r      r   r   c                 C   r#   r$   r&   r(   r   r   r   r      r)   z"InnovationImageInline.show_previewr*   N)r   r   r   r   r,   r-   r.   r0   r/   r   r   r3   r   r   r   r   r      s    
	r   c                       r4   )InnovationAdminr6   c                 C   r#   r:   r;   r(   r   r   r   r9      r=   zInnovationAdmin.show_coverr>   Nc                    r?   )Nc                  _   r   r@   r   rA   r   r   r   rD      r"   z1InnovationAdmin.get_form.<locals>.force_multipartrE   rI   rK   r   r   rG      rM   zInnovationAdmin.get_formc              	      rN   )
Nr   r   FrO   r   rQ   )
innovationr   r   TrS   )r,   r   rT   rU   rV   rW   rX   rY   r   rZ   r[   r\   r]   r^   r   rF   r_   )r   r   r`   ra   rb   rc   rd   re   rf   innovation_objrh   rK   r   r   r_      ri   zInnovationAdmin.save_formsetc                    rj   rk   rr   ry   rK   r   r   rx      rz   zInnovationAdmin.save_modelc                    r{   r|   r}   r   rK   r   r   r~      r   zInnovationAdmin.get_querysetc                 C   r   r   r   r   r   r   r   r      r   zInnovationAdmin.get_excludec                 C   r   r   r   r   r   r   r   r      r   z%InnovationAdmin.has_change_permissionc                 C   r   r   r   r   r   r   r   r      r   z%InnovationAdmin.has_delete_permissionr+   )r   r   r   r   r   r   r9   r3   rG   r_   rx   r~   r   r   r   r   r   r   rK   r   r      r   r   N)django.contribr   django.utils.htmlr   modelsr   r   r   r   sitesite_header
site_titleindex_titleTabularInliner	   register
ModelAdminr5   r   r   r   r   r   r   <module>   s    _