U
    #£-dï  ã                   @   s*   d dl T d dlmZ G dd„ dejƒZdS )é    )Ú*)Úcmf_scheme_wf_rulec                       s.   e Zd Z‡ fdd„Zed‡ fdd„	ƒZ‡  ZS )ÚCmfSchemeWfRulec                    s   | j r| j| _tƒ j||ŽS )N)Zis_newÚcodeÚnameÚsuperÚsave)ÚselfÚargsÚkwargs©Ú	__class__© ú%./common/models/cmf_scheme_wf_rule.pyr      s    zCmfSchemeWfRule.saveNc                    sH   |sg }|dkr.|  dd ¡ }r.|dd|gg}tƒ j|f||dœ|—ŽS )NZ
logic_typeÚcmf_model_nameú=)ÚfilterÚobject_fields)Úgetr   Úfield_options_list)ÚclsZrelation_field_namer   r   r   r   r   r   r   r      s    z"CmfSchemeWfRule.field_options_list)NN)Ú__name__Ú
__module__Ú__qualname__r   Úclassmethodr   Ú__classcell__r   r   r   r   r      s   r   N)Zcmf.includeZcommon.fieldsr   r   r   r   r   r   Ú<module>   s   