o
    Lâ^É  ã                   @   sL   d dl mZ d dlmZ d dlmZ d dlZd dlmZ dd„ Z	dd	„ Z
dS )
é    )ÚPermissionDenied)Úredirect)ÚwrapsN)ÚUserc                    ó   ‡ fdd„}ˆ j |_ |S )Nc                    s�   t dƒ d| jv r5t dƒ | jd }t d|ƒ tjj|d� ¡ }|r4|jdkr/t dƒ tdƒS t d	ƒ 	 nt d
ƒ tdƒS ˆ | g|¢R i |¤ŽS )Nzin user_redirect userprofile.Ú_auth_user_idzalready logged userÚid©r   Túadmin (user)z/login/znot admin (user)z$not logged in so redirect to login .©ÚprintÚsessionr   ÚobjectsÚfilterÚfirstÚis_superuserr   ©ÚrequestÚargsÚkwargsr   Ú	superuser©Úfunction© ú5/home/esfera/Documents/myproject/userapp/decorator.pyÚwrap	   s    



€zuser_redirect.<locals>.wrap©Ú__doc__©r   r   r   r   r   Úuser_redirect   ó   r   c                    r   )Nc                    s’   t dƒ d| jv r5| jd }t d|ƒ tjj|d� ¡ }|r4|jdkr/t dƒ t dƒ tdƒS t d	ƒ 	 n	t d
ƒ t dƒ 	 ˆ | g|¢R i |¤ŽS )Nzin login_redirect userprofile.r   r   r	   Tr
   z.already logged user, redirect it to dashboard.z/dashboard/zno admin (user)zno logged userzpass itr   r   r   r   r   r   $   s"   



€zlogin_redirect.<locals>.wrapr   r   r   r   r   Úlogin_redirect#   r    r!   )Údjango.core.exceptionsr   Údjango.shortcutsr   Ú	functoolsr   ÚdatetimeÚdjango.contrib.auth.modelsr   r   r!   r   r   r   r   Ú<module>   s    