o
    h5                     @   s>   d dl mZ G dd deZG dd deZG dd dZdS )	    )PermissionDeniedc                   @      e Zd ZdZdS )RevertToPageRevisionErrorzO
    Raised when the revision revert cannot be performed for data reasons.
    N__name__
__module____qualname____doc__ r
   r
   g/var/www/html/ndineBlogger/venv/lib/python3.10/site-packages/wagtail/actions/revert_to_page_revision.pyr          r   c                   @   r   )#RevertToPageRevisionPermissionErrorz^
    Raised when the revision revert cannot be performed due to insufficient permissions.
    Nr   r
   r
   r
   r   r      r   r   c                   @   s4   e Zd Z					dddZdddZdd	d
ZdS )RevertToPageRevisionActionNwagtail.revertTc                 C   s.   || _ || _|| _|| _|| _|| _|| _d S )N)pagerevisionuser
log_actionapproved_go_live_atchangedclean)selfr   r   r   r   r   r   r   r
   r
   r   __init__   s   

z#RevertToPageRevisionAction.__init__Fc                 C   s@   | j jrtd| jr|s| j | j stdd S d S d S )NzURevisions are not required for alias pages as they are an exact copy of another page.z,You do not have permission to edit this page)r   alias_of_idr   r   permissions_for_usercan_editr   r   skip_permission_checksr
   r
   r   check'   s   z RevertToPageRevisionAction.checkc                 C   s4   | j |d | j j| j| j| j| j| j| jdS )N)r   )previous_revisionr   r   r   r   r   )	r   r   	as_objectsave_revisionr   r   r   r   r   r   r
   r
   r   execute7   s   
z"RevertToPageRevisionAction.execute)Nr   NTT)F)r   r   r   r   r   r"   r
   r
   r
   r   r      s    

r   N)django.core.exceptionsr   RuntimeErrorr   r   r   r
   r
   r
   r   <module>   s    