a
    Dg                     @   sv   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
 G dd dZG dd	 d	eejZG d
d deejZdS )    )PermissionDenied)reverse)gettext)lock)Pagec                       s,   e Zd ZeZdZ fddZdd Z  ZS )PageOperationViewMixinZpage_idc                    s   t   jS N)super
get_objectZspecificself	__class__ ]/var/www/lab.imftr.de/x/nb_venv/lib/python3.9/site-packages/wagtail/admin/views/pages/lock.pyr
      s    z!PageOperationViewMixin.get_objectc                 C   s"   | j r| j S td| j jgdS )NZwagtailadmin_explore)args)Znext_urlr   objectZ
get_parentidr   r   r   r   get_success_url   s    z&PageOperationViewMixin.get_success_url)	__name__
__module____qualname__r   modelZpk_url_kwargr
   r   __classcell__r   r   r   r   r   	   s   r   c                       s   e Zd Z fddZ  ZS )LockViewc                    s"   | j | jj stt  S r   )r   permissions_for_userrequestuserZcan_lockr   r	   perform_operationr   r   r   r   r      s    zLockView.perform_operation)r   r   r   r   r   r   r   r   r   r      s   r   c                       s$   e Zd Z fddZdd Z  ZS )
UnlockViewc                    s"   | j | jj stt  S r   )r   r   r   r   Z
can_unlockr   r	   r   r   r   r   r   r      s    zUnlockView.perform_operationc                 C   s   t dd| j i S )Nz&Page '%(page_title)s' is now unlocked.Z
page_title)_r   Zget_admin_display_titler   r   r   r   get_success_message#   s    
zUnlockView.get_success_message)r   r   r   r   r!   r   r   r   r   r   r      s   r   N)Zdjango.core.exceptionsr   Zdjango.urlsr   Zdjango.utils.translationr   r    Zwagtail.admin.views.genericr   Zwagtail.modelsr   r   r   r   r   r   r   r   <module>   s   