U
    fG                     @   s*   d dl T d dlZG dd dejjjZdS )    )*Nc                       s0   e Zd Zdd Z fddZ fddZ  ZS )CmfCustFieldConfc                 C   s   g }g }t jj| dgdD ]H}|jj|krB||jj |j  |jjD ]}||krJ|| qJq| jD ]}||krj|  qj|| _|| _	d S )Nzparent.projects)Zcust_field_conffields)
ZmodelsZCmfCustFieldConfSchemeRulelistparentvalueappendZinvalidate_cacheprojectscache_schemescache_projects)selfZschemesr	   ZruleZprojectZscheme r   #./cmf/models/cmf_cust_field_conf.py_calc_cache   s    


zCmfCustFieldConf._calc_cachec                    s   t   ddg S )Nr
   r   )supersave_preload_fields)r   	__class__r   r   r      s    z$CmfCustFieldConf.save_preload_fieldsc                    s   |    t j||S )N)r   r   save)r   argskwargsr   r   r   r      s    zCmfCustFieldConf.save)__name__
__module____qualname__r   r   r   __classcell__r   r   r   r   r      s   r   )Zcmf.includeZcmf.fields.cmf_cust_field_confZcmfr   Zcmf_cust_field_confr   r   r   r   r   <module>   s   