U
    Ef                     @   s*   d dl T d dlZG dd dejjjZdS )    )*Nc                       sB   e Zd Zdd Z fddZ fddZdd 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)
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.saveF)TEXKOM_db_deletec                   s@   t jj| |dD ]}|j|d|i| qt j|d|i|S )N)r   Zinclude_deletedr   )r   ZCmfCustFieldConfFieldr   deleter   )r   r   r   r   Z
field_confr   r   r   r      s    zCmfCustFieldConf.delete)__name__
__module____qualname__r   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   