
    cf                         d dl 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	 d Z
n# e$ r	 d dlm
Z
 Y nw xY we j        d          d	k    reZneZ eed
e          Zer e
e          ZndZd Zd Zd ZdS )    N)md5)settings)DEFAULT_CACHE_ALIAS)parsecachesc                     t           |          S )Nr   )backendkwargss     J/var/www/html/env/lib/python3.11/site-packages/django_user_agents/utils.py	get_cacher      s    g    )r      USER_AGENTS_CACHEc                     t          | t                    r|                     d          } d                    dt	          |                                           g          S )Nutf-8 zdjango_user_agents.)
isinstance	text_typeencodejoinr   	hexdigest)	ua_strings    r   get_cache_keyr   "   sQ    )Y'' .$$W--	77)3y>>+C+C+E+EFGGGr   c                    t          | d          sdS | j                            dd          }t          |t                    s|                    dd          }t          rVt          |          }t                              |          }|*t          |          }t          	                    ||           nt          |          }|S )NMETAr   HTTP_USER_AGENTr   ignore)
hasattrr   getr   r   decodecacher   r   set)requestr   key
user_agents       r   get_user_agentr'   )   s     7F## r  !2B77Ii++ 8$$Wh77	 &I&&YYs^^
y))JIIc:&&&9%%
r   c                     t          | d          r| j        S | st          d          S t          |           | _        | j        S )Nr&   r   )r   r&   r   r'   )r$   s    r   get_and_set_user_agentr)   ?   sL     w%% "!! Ryy'00Gr   )syshashlibr   django.confr   django.core.cacher   user_agentsr   r   r   ImportErrorversion_infostrr   unicodegetattrr   r"   r   r'   r)    r   r   <module>r5      sF   



                   1 1 1 1 1 1      ,((((((    , , ,++++++++,
 A!III GH&9;NOO  I'((EEEH H H  ,
 
 
 
 
s   	( 66