3
š(ƒh@  ã               @   s8   d dl mZ d dlmZ d dlmZ dd„ Zdd„ ZdS )	é    )Údb)Úauth)Úforce_bytesc             C   s\   t jƒ }tjƒ  z<y|jj|ƒ}W n |jk
r8   dS X |jsDdS |j|ƒS tj	ƒ  X dS )z¯
    Authenticates against Django's auth database

    mod_wsgi docs specify None, True, False as return value depending
    on whether the user exists and authenticates.
    N)
r   Úget_user_modelr   Úreset_queriesÚ_default_managerÚget_by_natural_keyÚDoesNotExistÚ	is_activeÚcheck_passwordÚclose_old_connections)ÚenvironÚusernameÚpasswordÚ	UserModelÚuser© r   úH/tmp/pip-install-q3hcpn_q/Django/django/contrib/auth/handlers/modwsgi.pyr      s    
r   c             C   sf   t jƒ }tjƒ  zFy|jj|ƒ}W n |jk
r8   g S X |jsDg S dd„ |jj	ƒ D ƒS tj
ƒ  X dS )z+
    Authorizes a user based on groups
    c             S   s   g | ]}t |jƒ‘qS r   )r   Úname)Ú.0Úgroupr   r   r   ú
<listcomp>.   s    z#groups_for_user.<locals>.<listcomp>N)r   r   r   r   r   r   r	   r
   ÚgroupsÚallr   )r   r   r   r   r   r   r   Úgroups_for_user   s    r   N)Zdjangor   Zdjango.contribr   Zdjango.utils.encodingr   r   r   r   r   r   r   Ú<module>   s   