U
    èÜŒfÂ  ã                   @   s*   d dl T d dlmZ G dd„ dejƒZdS )é    )Ú*)Úcmf_approvec                   @   s@   e Zd Zejjddg Zeddœdd„ƒZeddœdd„ƒZdS )	Ú
CmfApproveÚ	sdesk_getÚ
sdesk_listN)Úfieldsc                O   sz   |sg }d|kr|  d¡ | j|d|i|—Ž}|rDttdd„ |ƒƒ}g }|D ](}t |d¡ t |jd¡ |  |¡ qL|S )NÚobjr   c                 S   s
   | j  ¡ S )N)r   Ú_sdesk_check_access)Úc© r   ú+./modules/servicedesk/models/cmf_approve.pyÚ<lambda>   ó    z'CmfApprove.sdesk_list.<locals>.<lambda>Úread)ÚappendÚlistÚfilterÚcmfutilÚacl_set_policyZapprove_group)Úclsr   ÚargsÚkwargsÚresZapprovesÚitemr   r   r   r      s     
þzCmfApprove.sdesk_listc                O   sP   |sg }d|kr|  d¡ | j|d|i|—Ž}|r@|j ¡ s@d S t |d¡ |S )Nr   r   r   )r   Úgetr   r	   r   r   )r   r   r   r   r   r   r   r   r       s    
zCmfApprove.sdesk_get)	Ú__name__Ú
__module__Ú__qualname__r   r   Zapi_methodsÚclassmethodr   r   r   r   r   r   r      s   þr   N)Zcmf.includeZmodules.settings.modelsr   r   r   r   r   r   Ú<module>   s   