o
    gw                     @   s   d dl Z d dlZd dlmZ d dlmZ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mZmZ d d	lmZmZ d d
lmZmZmZ d dlmZmZmZ d dlmZ d dl m!Z! dd Z"dd Z#dd Z$dS )    N)JsonResponse)redirectrender)reverse)get_client_ip)settings)MasterSignInForm)LoginLogMasterUserLog)check_robotget_settings)UserGroup
Permission)authenticateloginlogout)login_required)Sessionc                 C   sx   t | }|jdv rd|_t| \}}| jd}|d u rd}| jjr&t|  t }|j	 d}|j	 d}t
| |t S )N) NNoner   next/master/z/login.htmlz/base_auth.html)r   	page_namer   GETgetuseris_authenticatedr   r   
theme_namer   locals)requestsite_settingsip_	next_addrformpage_adrbase_adr r)   +/var/www/Entralon-Web-Backend/user/views.pymaster_login   s   
r+   c                 C   s  | j d}|d u rd}| jjrt|  t| \}}| jdkrt| }|d r| jd}| jd}z"t	j
j|d}|jdkrT|jt d	 krTtd
di dddW S W n tyh   td
di ddd Y S w |j}t||d }	rtj }
tjstj
j|
dD ]}| dt|	jkr|
|_|  qt| |	 d|_|  tj
j|	|d tj
j|	d|d tddd|ii dddS tj
j||ddd | jd7  _t |_|  td
di dddS td
di dddS t | dS ) Nr   r   POSTsuccesspasswordusername)user__username   i  Tznot allowed to login)errormessageerrorsi  )statusz!username or password is incorrect)r/   r.   )expire_date__gt_auth_user_idr   )r   r#   zlogin to siter   descr#   Fr%   )r2   r3   datar4      zincorrect password)r   r#   r-   failure   z)please select checkbox: you are not robotz
blank.html)!r   r   r   r   r   r   methodr   r,   r
   objectsincorrect_numincorrect_timetimer   	Exceptionr   datetimenowr   DEBUGr   filterget_decodedstridexpire_datesaver   r	   creater   r   )r!   r%   r#   r$   resultr.   r/   masterr   f_userrE   sr)   r)   r*   master_login_submit#   sR   




rR   c                 C   s<   | j }t| \}}|jrt|  tjj|d|d ttj	S )Nu   خروج از سایتr8   )
r   r   r   r   r   r?   rM   r   r   LOGOUT_REDIRECT_URL)r!   r   r#   r$   r)   r)   r*   logout_userR   s   
rT   )%rD   rB   django.httpr   django.shortcutsr   r   django.urlsr   ipwarer   django.confr   
user.formsr   user.modelsr	   r
   r   
user.utilsr   r   django.contrib.auth.modelsr   r   r   django.contrib.authr   r   r   django.contrib.auth.decoratorsr   django.contrib.sessions.modelsr   r+   rR   rT   r)   r)   r)   r*   <module>   s"    /