U
    ¿~¬Z™	  ã                   @   sP   d dl Z d dlZd dlZd dlZd dlZdadd„ Zdd„ Zdd„ Z	dd	„ Z
dS )
é    Nc              
   C   sL   t ddƒat ttj¡ d}zt| |ƒ}W 5 t ttj¡ t ¡  d aX |S )Nústored_data.jsonzr+)FzInternal ErrorN)ÚopenÚjsonfdÚfcntlÚlockfZLOCK_EXZLOCK_UNÚcloseÚ_auth)ÚformÚcookiesÚrv© r   ú)/srv/www/eltanin/alttp/pycode/__init__.pyÚauth	   s    
r   c                 C   sŒ  |   d¡}|   d¡}|r|s~zLd|krf|d j}tj |¡}t |¡}d|krfd|krf|d }|d }W n   d }d }Y nX |r†|sŠdS | ¡ }tƒ }|s dS ||d krV|d | }|d	 | }t	 	¡ d
 |d k rê|d dkrêdS ||kr |d dkrd|d	 |< t
|ƒ d||fS |d  d7  < t	 	¡ |d< ||d	 |< t
|ƒ dS n2||d |< dt	 	¡ f|d	 |< t
|ƒ d||fS d S )NÚunÚpwr   ÚuserÚpassword)FzNot logged inN)FzDatabase error!NZusersZ	loginfaili„  é   r   é   )Fz0Username is already taken, or password is wrong!N)r   r   T)ÚgetfirstÚvalueÚurllibÚparseÚunquoteÚjsonÚloadsÚlowerÚ	read_jsonÚtimeÚ
write_json)r	   r
   r   r   ZauthvÚdbZdbpwZlfr   r   r   r      sR    






r   c                  C   s.   t j d¡r&t d¡ t t ¡ ¡} ni } | S )Nr   r   )ÚosÚpathÚexistsr   Úseekr   r   Úread)r    r   r   r   r   M   s
    
r   c                 C   s2   t j| dd}t}| d¡ | ¡  | |¡ d S )Né   )Zindentr   )r   Údumpsr   r$   ÚtruncateÚwrite)r    ZdumpdataÚfdr   r   r   r   V   s
    
r   )r!   r   r   Úurllib.parser   r   r   r   r   r   r   r   r   r   r   Ú<module>   s   7		