a
    Dg                     @   sp   d dl mZ d dlmZ d dlmZmZ d dlmZ d dl	m
Z
 ddlmZ dd	 Zd
d Zdd Zdd ZdS )    )settings)transaction)post_delete	post_save)get_image_model)delete_file_from_storage_task   )set_image_focal_point_taskc                    s   t  fdd d S )Nc                      s   t  jj  jjS N)r   enqueuefileZstorageZdeconstructname instancer   ]/var/www/lab.imftr.de/x/nb_venv/lib/python3.9/site-packages/wagtail/images/signal_handlers.py<lambda>   s   z*post_delete_file_cleanup.<locals>.<lambda>)r   Z	on_commitr   kwargsr   r   r   post_delete_file_cleanup   s    
r   c                 K   s   |    d S r
   )Zpurge_from_cacher   r   r   r   !post_delete_purge_rendition_cache   s    r   c                 K   s@   t tddr<|d du r<|  s<t| jj| jjt| j	 d S )NZ'WAGTAILIMAGES_FEATURE_DETECTION_ENABLEDFraw)
getattrr   Zhas_focal_pointr	   r   Z_metaZ	app_labelZ
model_namestrpkr   r   r   r   !post_save_image_feature_detection   s
    r   c                  C   sJ   t  } |  }tjt| d tjt| d tjt|d tjt|d d S )N)Zsender)r   Zget_rendition_modelr   connectr   r   r   r   )ZImageZ	Renditionr   r   r   register_signal_handlers"   s    r   N)Zdjango.confr   Z	django.dbr   Zdjango.db.models.signalsr   r   Zwagtail.imagesr   Zwagtail.tasksr   Ztasksr	   r   r   r   r   r   r   r   r   <module>   s   