U
    3cC                     @   sZ   d dl Z d dlZd dlZd dlT d dlmZ d dlmZ d dlm	Z	 G dd dej
Z
dS )    N)*)cmf_comment)Path)CmfActiveEntityc                       s*   e Zd Zdd fdd
Zdd Z  ZS )
CmfCommentF)forcec                   s   |  dg | j}|s.| jjdgdr.| jj}|r|jjdkrD|}n|j}|r|jjdkrtj| jkrz|j	d|d W q t
k
r   |j	d|d Y qX n|j	d|d td	|j d
| jji| d t j|d|i|S )Nparent.parentparentfields
CmfProject	CmfPersonzPPP-COM-DELETE-ALLobjzPPP-COM-DELETE-OWNzcomment-delete-id)event_personsr   )load_fieldsr	   tree_parentloadvalue
class_namegcurrent_user	cmf_ownercheck_project_role_accessCmfPermissionErrorcmf_emit_eventr   all_relation_personssuperdelete)selfr   argskwargsr	   project	__class__ %/opt/crm/common/models/cmf_comment.pyr      s"    "zCmfComment.deletec                 C   s   | j dkrd S | dg | j}|s<| jjdgdr<| jj}|jjdkrN|}n|j}|rh|rh|jjdkrld S | jr|jd|d nZ| j	j
rtj| jkrz|jd	|d W q tk
r   |jd
|d Y qX n|jd	|d d S )Nr   r   r	   r
   r   )CmfPipelineCmfDealzPPP-COM-ADDr   zPPP-COM-EDIT-ALLzPPP-COM-EDIT-OWN)	log_levelr   r	   r   r   r   r   is_newr   text
is_changedr   r   r   r   )r    r	   r#   r&   r&   r'   _check_project_perm*   s(    
zCmfComment._check_project_perm)__name__
__module____qualname__r   r.   __classcell__r&   r&   r$   r'   r      s   r   )base64datetime	mimetypescmf.include
cmf.modelsr   pathlibr   common.models.cmf_active_entityr   r   r&   r&   r&   r'   <module>   s   