
    Bh                         d dl Z d dlmZmZmZmZ d dlmZ d dlm	Z
 d dlmZ d dlmZmZ ej                    e
d      edej"                   e
d	      edej$                   e
d
      edej&                   e
d      edej(                   e
d      edej*                   e
d      ediZej.                   e
d      eddej0                   e
d      eddej2                   e
d      eddej4                   e
d      eddej6                   e
d      eddej8                   e
d      eddej:                   e
d      eddej<                   e
d      eddej>                   e
d      eddi	Z d Z!d Z"d Z#d Z$y)    N)ADDITIONCHANGEDELETIONLogEntry)ContentType)gettext_lazy)
operations)PagePageTypeMoved)messageflagChangedDeletedzAdded Page TranslationzChanged Page TranslationzDeleted Page TranslationzAdded Pluginplaceholder)r   r   placeholder_kwargzChanged PluginzMoved Plugintarget_placeholderzDeleted Pluginz
Cut Pluginsource_placeholderzPaste PluginzPaste to Placeholderz+Added plugins to placeholder from clipboardzCleared Placeholderc                     t        |t              rt        j                  |      }t        j
                  j                  | |t        |      |d d ||       y )N   user_idcontent_type_id	object_idobject_repraction_flagchange_message)
isinstancelistjsondumpsr   objectscreatestrr   s         G/home/dcms/DCMS/lib/python3.12/site-packages/cms/signals/log_entries.pycreate_log_entryr&   V   sP    .$'N3+)n#DS)#)  
    c                 .    t        | t        t        f      S )zH
    Check if the supplied object is a valid Page / PageType object
    )r   r
   r   )pages    r%   _is_valid_page_instancer*   d   s     dT8,--r'   c           	      t   |j                  d      }|j                  d      }|j                  d      }|t        v r}t        |      rqt        |   }t        j                  j                  |      j                  }t        |j                  j                  ||j                  t        |      |d   |d          yyy)z:
    Create a log for the correct page operation type
    request	operationobjr   r   r   N)
get_page_operations_mapr*   r   r"   get_for_modelpkr&   userr$   )senderkwargsr,   operation_typer.   operation_handlerr   s          r%   log_page_operationsr8   k   s     jj#GZZ,N
**U
C --2I#2N0@%--;;C@CCLLOO+ffC)&1,Y7	
 3O-r'   c           	         |j                  d      }|j                  d      }|t        v rt        |   }|j                  |d         }|j                  }t        |      rht        j
                  j                  |      j                  }t        |j                  j                  ||j                  t        |      |d   |d          yyy)zA
    Create a log for the correct placeholder operation type
    r,   r-   r   r   r   r   N)r/   _placeholder_operations_mapr)   r*   r   r"   r1   r2   r&   r3   r$   )r4   r5   r,   r6   r7   r   r)   r   s           r%   log_placeholder_operationsr;      s     jj#GZZ,N 447Gjj!23F!GH #4()11??EHHO /''I-f50; ) 5r'   )%r    django.contrib.admin.modelsr   r   r   r   "django.contrib.contenttypes.modelsr   django.utils.translationr   _cmsr	   
cms.modelsr
   r   	MOVE_PAGECHANGE_PAGEDELETE_PAGEADD_PAGE_TRANSLATIONCHANGE_PAGE_TRANSLATIONDELETE_PAGE_TRANSLATIONr0   
ADD_PLUGINCHANGE_PLUGINMOVE_PLUGINDELETE_PLUGIN
CUT_PLUGINPASTE_PLUGINPASTE_PLACEHOLDERADD_PLUGINS_FROM_PLACEHOLDERCLEAR_PLACEHOLDERr:   r&   r*   r8   r;    r'   r%   <module>rR      s    L L : 6  % W: Y< Y< ##-.& &&/0) &&/0)+ 8 ^$*
 %&*
 ^$1
 %&*
 \?1
 ^$1
   +,1#
 ++BC1.
   *+*#S. b
.
.r'   