B
    b/                 @   s   d dl mZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZ d dlmZ yeje W n ejjk
r   Y nX G d	d
 d
eZe
ee dS )    )admin)gettext_lazy)settings)ZKModelAdmin)zk_site)GroupDelete)GroupChangeForm)GroupProfilec                   sp   e Zd ZddgZdgZdZegZdZe	Z
ddgZddgZdd	 Zed
e_d fdd	Zdd Zdd Z  ZS )
GroupAdminidget_group_namename)Zcompany)Zgroup_tree_nodeszauth/group/edit.htmlzincludes/data_edit.htmlc             C   s"   |j }tjrtdd}|| }|S )Nr   i)r   r   CLOUD_VERSIONslice)selfobj
group_nameZ
name_slice r   ;G:\easytimepro\master/mysite/base\admin\auth_group_admin.pyr   &   s
    
zGroupAdmin.get_group_nameZgroup_field_nameNc                sF   |j dkr*|d|jjj}|d|d< tt| j|fd|i|S )NZpermissionsZquerysetZcontent_typerequest)	r   getZremote_fieldZmodelobjectsZselect_relatedsuperr
   formfield_for_manytomany)r   Zdb_fieldr   kwargsZqs)	__class__r   r   r   /   s
    

z#GroupAdmin.formfield_for_manytomanyc             C   s   t jj|jjd}|S )N)
company_id)r	   r   filteruserZcurrent_company)r   r   Zall_group_profilesr   r   r   get_queryset8   s    zGroupAdmin.get_querysetc       	      C   s   ddl m} tjr~|jd}t|jj	dd}|d | }t
jj||jjdj|jjd}| rr|td	|r~||j_|jd
dS )z
        Given a ModelForm return an unsaved instance. ``change`` is True if
        the object is being changed, and False if it's being added.
        r   )AdminRuntimeWarningr   - _)r   r   )r   Zduplicate_group_nameF)Zcommit)Zmysite.admin.exceptionsr    r   r   Zcleaned_datar   strinstancer   replacer	   r   r   Zexcluder   existsr#   r   Zsave)	r   r   Z
model_formZchanger    r   r   r   Zgpr   r   r   	save_form<   s    zGroupAdmin.save_form)N)__name__
__module____qualname__Zlist_displayZlist_filterZhidden_fieldsr   ZactionsZ
cache_keysr   ZformZadd_form_templateZchange_form_templater   r#   Zshort_descriptionr   r   r(   __classcell__r   r   )r   r   r
      s   
	r
   N)Zdjango.contribr   Zdjango.utils.translationr   r#   Zdjango.confr   Zmysite.adminr   Zmysite.admin.sitesr   Z!mysite.base.actions.group_actionsr   Z'mysite.base.admin.forms.auth_group_formr   Zmysite.base.modelsr	   ZsiteZ
unregisterZsitesZNotRegisteredr
   registerr   r   r   r   <module>   s   6