B
    f                 @   s*   d dl T d dlmZ G dd dejZdS )    )*)cmf_commentc                   sh   e Zd Zedd Z fddZedddddZeddd fd	d

ZedddddZ  Z	S )
CmfCommentc             O   sz   d|kr,t jrt jt jkr,t|d |d< | j||}|j  y|j  W n  t	k
rp   t
ddd Y nX |d S )Ntextu   Нет доступа!T)abortid)gcurrent_personanonymous_usercmfutil
html_cleanZcreateparentload_acl_check_readCmfPermissionError	cmf_alert)clsargskwargsres r   #./modules/api/models/cmf_comment.pypublic_create   s    
zCmfComment.public_createc                s4   | j   | j tjkr&tddd d S t j||S )Nu>   Нельзя удалять чужой комментарий!T)r   )
cmf_authorr   r   r	   r   superdelete)selfr   r   )	__class__r   r   public_delete   s
    
zCmfComment.public_deleteN)fieldsfilterc            O   sz   |sg }|sd S d|kr<t jr*t jt jkr<t|d |d< tjj|dgd}|jt jkrjt	ddd d S |j
|| d S )Nr   r   )r    r   uJ   Нельзя редактировать чужой комментарий!T)r   )r   r	   r
   r   r   Zmodelsr   getr   r   update)r   r   r    r   r   commentr   r   r   public_update   s    zCmfComment.public_updatec               s   |sg }d|kr| d |s$g }ng }| | |}| dddg t j|||d|}y|j  W n tk
r   d S X |S )Nr   	log_levelz==r   )r   r    )appendr   r!   r   r   r   )r   r   r    r   r   Z
outer_listr   )r   r   r   
public_get2   s     

zCmfComment.public_getc         	   O   s   |sg }d|kr| d |s"g }| dddg | j|||d|}g }x<|D ]4}y|j  | | W qR tk
r   wRY qRX qRW |S )Nr   r%   =r   )r   r    )r&   listr   r   r   )r   r   r    r   r   Zres_uncheckedr   rr   r   r   public_listK   s     


zCmfComment.public_list)
__name__
__module____qualname__classmethodr   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   