
    oif'                     z    d dl Z d dlmZ d dlmZ d dlmZmZ d dlm	Z	  e j                  d      Zd Zed        Zy)	    N)login_required)JsonResponse)renderredirect)CompanyUseraccount_loggerc                     t         j                  j                  | dd      }|j                         }d}|D ]  }|j                  dk(  s|dz  } |dk(  rd|d   _        |d   j                          t        |      S )NTF)company	is_active
is_deletedr   Admin   )r   objectsfiltercountrolesaveint)r
   company_userscompany_user_countadmin_countcompany_users        =D:\Rescue Scanner\qr_onkar\accounts\views\add_company_user.pycount_active_usersr      s    ''..w$[`.aM&,,.K% '1K a 'aa!""    c                    | j                   dk7  r1t        j                  d| j                           t        ddid      S 	 | j                  j
                  }t        |      }t        j                  d|j                   d|        t        ||j                         t        |      t        |j                        k\  r1t        j                  d|j                          t        dd
id      S | j                  j!                  d      }| j                  j!                  d      }| j                  j!                  d      }| j                  j!                  d      }| j                  j!                  dd      }| j                  j!                  dd      }	| j                  j!                  dd      }
|
dk(  rd}
nd}
|sd}|r|r|r|s-t        j                  d| d| d|        t        ddid      S t"        j$                  j'                  |      j)                         r't        j                  d|        t        dd id      S t"        j$                  j'                  |!      j)                         r't        j                  d"|        t        dd#id      S 	 t"        j$                  j+                  |||||$      }||_        |	|_        |j1                          t3        |
      |_        |j1                          t        j                  d%|j                   d&|j
                          t        d*d+i      S # t        $ r:}t        j                  d	t        |              t        dd
id      cY d }~S d }~ww xY w# t        $ r:}t        j                  d't        |              t        dd(id)      cY d }~S d }~ww xY w),NPOSTzInvalid request method: errorzInvalid request method.i  )statuszActive users count for company z: z#Error while counting active users: z5Cannot add more users to this company. Limit reached.i  zUser limit reached for company phonepasswordemailnamer   StaffaddressAddressr   TonF1234z Missing required fields. Phone: z	, Email: z, Name: zMissing required fields.)r    zPhone number already exists: zPhone number already exists.)r"   zEmail already exists: zEmail already exists.)r    r!   r"   r#   r
   zUser z added successfully to company zError creating user: zError creating user.i  successzUser added successfully.)methodloggerwarningr   userr
   r   infor#   	Exceptionr   strprintnumber_of_logins_allowedr   r   getr   r   r   existscreate_userr   r%   r   boolr   )requestr
   active_users_counter    r!   r"   r#   r   r%   r   r-   s               r   add_company_userr:      sU   ~~1'..1ABCW&?@MMl,,&&/85gll^2FXEYZ[
 

g>>?
#g&F&F"GG8GHW&]^gjkkLLW%E||
+HLLW%E<<F#D<<FG,Dlly)4G  d3ID		T9%	%PXY]X^_`W&@A#NN!!!.5576ug>?W&DEcRR!!!.557/w78W&=>sKK
K""..UXUZaeov.w			i		eDII;&Edll^TW
 $>?@@]  l:3q6(CDW&]^gjkklT  K,SVH56W&<=cJJKs>   AL< BN <	M?/M:4M?:M?	O/O :O O)loggingdjango.contrib.auth.decoratorsr   django.httpr   django.shortcutsr   r   accounts.modelsr   	getLoggerr+   r   r:    r   r   <module>rB      sB     9 $ - '			+	,# 7A 7Ar   