
    sojK                     ~    d dl Z d dlT d dlmZ d dlmZ d dlmZ  G d de          Ze	                                 dS )    N)*)	BaseModel)Group)Userc                       e Zd ZdZ eeddd          Z eeddd          Z e	e
j
        j                  Z ed          Z ed	          Z G d
 d          Zed             Zed             ZdS )	GroupUserz
    Group User class
    groupsRESTRICTCASCADE)backref	on_delete	on_updateusers)defaultTFc                       e Zd ZdZdS )GroupUser.Meta
group_userN)__name__
__module____qualname__db_table     /app/src/model/GroupUser.pyMetar      s        r   r   c                    t                               t                              t           j                                      d                                        t           j        | k    t           j        dk    t           j        	                    t                               t           j                                      t           j        |k    t           j        dk                                  dk    S )Ncount_same_groupTr   )
r   selectfnCOUNTgroupaliaswhereuser	is_activein_)user_1user_2s     r   *get_user_is_active_is_same_group_statementz4GroupUser.get_user_is_active_is_same_group_statement   s     RXXio66<<=OPPQQWW&(#t+##$$Y_55;;!&0)2E2M    
 
	r   c                     t                               d                              t           j        | k    t           j        |k    z                                             d S )NF)is_admin)r   updater#   r$   r!   execute)r$   r!   s     r   set_no_longer_adminzGroupUser.set_no_longer_admin&   sK    %((..^t#	5(@A	
 	

')))))r   N)r   r   r   __doc__ForeignKeyFieldr   r!   r   r$   DateTimeFielddatetimenowlast_message_dateBooleanFieldr%   r+   r   staticmethodr)   r.   r   r   r   r   r   
   s          OE8zU^___E?4JR[\\\D%h.?.CDDDT***I|E***H                  \   \  r   r   )
r2   peeweesrc.model.BaseModelr   src.model.Groupr   src.model.Userr   r   create_tabler   r   r   <module>r<      s         ) ) ) ) ) ) ! ! ! ! ! !               	      F 
       r   