U
    eg                     @   s*   d dl T d dlmZ G dd dejZdS )    )*)cmf_commentc                       s   e Zd Zejjddddddg Zeddd	 fd
d
Zedd Zdd Z	dd Z
eddddZeddddZ  ZS )
CmfCommentsdesk_create	sdesk_get
sdesk_listsdesk_updatesdesk_deletesdesk_ux_check_permupdateNpermparentc                   s8   t j|dgd}| sdS t j|||d|}|S )NprojectfieldsFr   )cmfutilZget_obj_by_id_sdesk_check_accesssuperZux_check_perm)clsr   r   argskwargsres	__class__ +./modules/servicedesk/models/cmf_comment.pyr
      s
    zCmfComment.sdesk_ux_check_permc                O   st   t jj|dgd}t j|d|i|}|j s<tddd |jjd|d t	
|d	 t	
|jd	 |  |jS )
Nr   )idr   r      Нет доступа!TabortPPP-COM-ADDobjwrite)ZmodelsZCmfTaskgetr   r   r   	cmf_alertr   check_project_role_accessr   acl_set_policyZsaver   )r   r   r   r   Ztaskr   r   r   r   r      s    
zCmfComment.sdesk_createc                 O   s   |  dddg | j s&tddd |dd}| jrN|sN| jjd| d	 n| jjd
| d	 t	| d t	| jd | j
||S )Nr   r   is_dummyr   Tr   Fr!   r"   zPPP-COM-EDIT-OWNr$   )load_fieldsr   r   r&   r%   r)   r   r'   r   r(   r   )selfr   r   r)   r   r   r   r   %   s    

zCmfComment.sdesk_updatec                 O   sZ   |  ddg | j s$tddd | jjd| d t| d t| jd | j||S )	Nr   r   r   Tr   zPPP-COM-DELETE-OWNr"   r$   )	r*   r   r   r&   r   r'   r   r(   delete)r+   r   r   r   r   r   r	   6   s    
zCmfComment.sdesk_deleter   c                O   sV   |sg }d|kr| d | j||dd|}|rRttdd |}t|d |S )Nr   r   r   Z	log_levelc                 S   s
   | j  S )N)r   r   )cr   r   r   <lambda>L       z'CmfComment.sdesk_list.<locals>.<lambda>read)appendlistfilterr   r(   r   r   r   r   r   r   r   r   r   @   s    
zCmfComment.sdesk_listc                O   sF   |sg }d|kr| d | j||dd|}|rB|j sBd S |S )Nr   r   r-   )r2   r%   r   r   r5   r   r   r   r   R   s    
zCmfComment.sdesk_get)__name__
__module____qualname__r   r   Zapi_methodsclassmethodr
   r   r   r	   r   r   __classcell__r   r   r   r   r      s$   		

r   N)Zcmf.includeZmodules.crm.modelsr   r   r   r   r   r   <module>   s   