U
    {hm                     @   s8   d dl mZ d dl mZ d dlmZ G dd deZdS )    )gettext_lazy)ngettext)PageBulkActionc                       sn   e Zd ZedZdZedZdZdZdd Z	 fdd	Z
 fd
dZ fddZedddZdd Z  ZS )UnpublishBulkActionZ	Unpublish	unpublishzUnpublish selected pagesz;wagtailadmin/pages/bulk_actions/confirm_bulk_unpublish.html2   c                 C   s   | | jj S )N)Zpermissions_for_userrequestuserZcan_unpublishselfpage r   x/var/www/dating/data/www/fatepal.com/env/lib/python3.8/site-packages/wagtail/admin/views/pages/bulk_actions/unpublish.py
check_perm   s    zUnpublishBulkAction.check_permc                    s    t  |d|   iS )Nlive_descendant_count)superobject_contextget_descendantslivecountr
   	__class__r   r   r      s    
 z"UnpublishBulkAction.object_contextc                    s,   t  jf |}tdd |d D |d< |S )Nc                 s   s   | ]}|d  dkV  qdS )r   r   Nr   ).0itemr   r   r   	<genexpr>   s    z7UnpublishBulkAction.get_context_data.<locals>.<genexpr>itemsZhas_live_descendants)r   get_context_dataany)r   kwargscontextr   r   r   r      s
    z$UnpublishBulkAction.get_context_datac                    s   t   | j| jjd dS )Ninclude_descendants)permission_checkerr    )r   get_execution_contextr   cleaned_formcleaned_data)r   r   r   r   r"      s    z)UnpublishBulkAction.get_execution_contextFNc           
      K   sp   d\}}|D ]Z}|j |d |d7 }|r|     D ]$}	|d ksT||	r@|	   |d7 }q@q||fS )N)r   r   )r	      )r   r   r   Zdefer_streamfieldsZspecificiterator)
clsobjectsr    r	   r!   r   num_parent_objectsnum_child_objectsr   Zlive_descendant_pager   r   r   execute_action'   s    	z"UnpublishBulkAction.execute_actionc                 C   s   | j jd }|dkrJ|r@|dkr*td}qHtdd|d|i }qtd}nF|r|dkrhtdd	|i }qtd
d|||d }ntdd	|i }|S )Nr    r%   r   z1 page has been unpublishedzA1 page and %(num_child_objects)d child page have been unpublishedzB1 page and %(num_child_objects)d child pages have been unpublishedr*   z2%(num_parent_objects)d pages have been unpublishedr)   zW%(num_parent_objects)d pages and %(num_child_objects)d child page have been unpublishedzX%(num_parent_objects)d pages and %(num_child_objects)d child pages have been unpublished)r*   r)   )r#   r$   _r   )r   r)   r*   r    Zsuccess_messager   r   r   get_success_messageB   sF    

	z'UnpublishBulkAction.get_success_message)FNN)__name__
__module____qualname__r,   display_nameZaction_typeZ
aria_labelZtemplate_nameZaction_priorityr   r   r   r"   classmethodr+   r-   __classcell__r   r   r   r   r      s   	   r   N)Zdjango.utils.translationr   r,   r   Z7wagtail.admin.views.pages.bulk_actions.page_bulk_actionr   r   r   r   r   r   <module>   s   