
    fi                     T    d dl T d dlT d dlmZ d dlmZ  G d dej                  ZdS )    )*)cmf_comment)CmfActiveEntityc                   >     e Zd Z fdZdd fd
Z fdZd Z xZS )
CmfCommentc                 N    t                                                      ddgz   S )Nzdeal.idis_dummy)supersave_preload_fields)self	__class__s    #./modules/crm/models/cmf_comment.pyr   zCmfComment.save_preload_fields	   s#    ww**,,	:/FFF    T)notifyc                T   | j         r2| j                                          | j                                          | j        dk    r|                                   t                      j        |d|i|}| j        s,| j        dk    r!t          j	        
                    | dd           |S )Nr   r   comment
after_save)dealloademit	log_levelhandle_mention_personsr
   saver	   modelsCmfAutomationCrudTrigger	crud_hook)r   r   argskwargsresr   s        r   r   zCmfComment.save   s    9 	INNINN>Q'')))egglD::6::} 	U1!4!4+55dI|TTT
r   c                      t                      j        |i |}|                    d          sA| j                                         | j        s!t
          j                            | dd           |S )NTEXKOM_db_deletedelete_commentr   )r
   deletegetr	   r   r   r   r   )r   r   r   r   r   s       r   r#   zCmfComment.delete   st    eggnd-f--zz,-- 	`M   = `/99$@PR^___
r   c                 T   | j         j        rt          | j        j        t
                    sd S t                      }t                      }| j         j        r6t          t          j	        
                    | j         j                            }| j         j        r6t          t          j	        
                    | j         j                            }d ||z
  D             }|rG| j                            dg           |D ]+}t          j                            | j        d|           *d S d S )Nc                 $    g | ]}|j         d v |S ))CmfPersonGroup	CmfPersonCmfRole)
class_name).0objs     r   
<listcomp>z5CmfComment.handle_mention_persons.<locals>.<listcomp>.   s%    wwwC#.Lv:v:vC:v:v:vr   parentmention)event_person)text
is_changed
isinstancer.   valuer   setoldr   CmfTask
parse_textnewload_fieldsCmfEventdo_event)r   objs_oldobjs_newnew_objsr,   s        r   r   z!CmfComment.handle_mention_persons"   s   	$ 	DK4E)W)W 	F55559= 	E6>44TY]CCDDH9= 	E6>44TY]CCDDHww8h#6www 	SK##XJ/// S S((ic(RRRR	S 	SS Sr   )__name__
__module____qualname__r   r   r#   r   __classcell__)r   s   @r   r   r      s        G G G G G "& 
 
 
 
 
 
 
    S S S S S S Sr   r   N)cmf.include
cmf.fieldsmodules.crm.fieldsr   common.models.cmf_active_entityr   r    r   r   <module>rI      s            * * * * * * ; ; ; ; ; ;+S +S +S +S +S' +S +S +S +S +Sr   