
    *.+hO                     @    d dl T d dlmZ  G d dej                  ZdS )    )*)cmf_full_searchc                   J    e Zd ZdZej        j        dgz   Zedd            ZdS )CmfFullSearchTsdesk_fulltext_searchFNc                 \    dvrg S fd}	t          j        j        d|||||||	d|}
|
S )N)CmfDocumentCmfSDeskRequestType
CmfProjectc                    d}|                      ddg           | j        r| j        j        dk    rىdk    r/| j                            d          r|                                 }nsdk    r4| j                            d          r| j                                        }n9dk    r3| j                            d          r| j                                        }|r/t                              | d           |                                  |S )	NFprojectzproject.logic_prefixzproject.servicedeskr   r	   r
   read)	load_fieldsr   logic_prefixid
startswith_sdesk_check_accesscmfutilacl_set_policy_acl_check_read)objcheck
model_names     /./modules/servicedesk/models/cmf_full_search.pycheck_accessz9CmfFullSearch.sdesk_fulltext_search.<locals>.check_access   s    EOOY(>?@@@{ 
*s{7;PPP--#&2C2CL2Q2Q-3355EE=00SV5F5F}5U5U0K;;==EE#888SV=N=NOd=e=e8K;;==E ***3777'')))L    )r   
field_namesearch_queryonly_idsslicefieldsno_analitycsr    )modelsr   fulltext_search)clsr   r   r   r   r    r!   r"   kwargsr   
search_ress    `         r   r   z#CmfFullSearch.sdesk_fulltext_search   s     QQQI	 	 	 	 	$ )9 PZ\f  vB  MU:?]i  yEP P IOP P
r   )FNNF)	__name__
__module____qualname__	api_allowr   r   api_methodsclassmethodr   r#   r   r   r   r      sQ        I!/;? K    [  r   r   N)cmf.includemodules.project.modelsr   r   r#   r   r   <module>r1      sZ        2 2 2 2 2 2         O1          r   