o
    eZ.                  
   @   s  d dl Z d dlZd dlZd dlZd dlmZ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 dd	lmZ dd
lmZ d dlmZ zd dlmZ d dlmZ d dlmZ d dlmZ e W n/ ey Z z#ed e ed e eZ!ee e eej" ee W Y dZ[ndZ[ww da#da#e Z$ej%dej& d dgddd Z'ej%ddgddd Z(dd Z)ej%dej* d dgddd Z+ej%dej, d dgdd d! Z-ej%dej. d dgdd"d# Z/dS )$    N)Flaskjsonifyrender_template)make_response)request)abort)BaseConverter   )app)cl_man_regist)
cl_man_req)clC)clMDB)cl_log_data_man)cl_param_man)cl_man_cmdszContent-type: text/html ;

z'device_management import      ExceptionFT/GET)methodsc                  C   s   t d t ttj dtjv rOtjd} ttjd}t|d |d< |d }|d dkr=t|d t	
d nt|d t	
d t d	| t }d
}||td}td|dS )Nzdevice_management args	useremailkey_secid_telegramr   Device_managementid_telegram_selfmes_session_time_endedz$device_management id_telegram!>0 {} device_management)useris_win
DEBUG_SAITzdevice_management.htmldata)printstrr   argsgetr   check_key_secintsend_messager   gformatr   r   r   r   )r   ans
is_key_secr   r   r     r,   I/opt/Telegram_ESP32/site2/telegram_esp32adv/flaskdir/device_management.pyr   +   s   
r   z/param_change/c                     s   t d t ttj tj} |  } t t|  t }t| d d}t d t | tt|dkr5|S |d }||| I d H }t d t | d|iS )	Nzparam_change argsr   	dis_paramzparam_change ans<class 'dict'>maczparam_change resultresult)	r!   r"   r   r#   to_dictr   check_key_sec_get_mactypeparam_change)vals_requestv_cl_param_manr*   r0   r1   r,   r,   r-   r5   D   s"   r5   c                 C   s   d}|dkr	t j}t| d}t|d |d< |d }tjdt| t	| |d dkr/nt	d
| |d S t|d }t||d }|d |d< t	t| |S )Nworkr.   Tr   zcheck_key_sec_get_mac ans>>> %sr   zdis_param id_telegram!>0 {} )r   url_dis_param_fr   r%   r&   r
   loggerwarningr"   r!   r)   v_clMDBget_id_sel_deviceBYid_telegramget_sel_device)r   actmes_infor*   r+   id_sel_deviceoner,   r,   r-   r3   X   s"   r3   c               
      s  t d t ttj tjdttj t } d}d}dtjv r/tj	d}|dkr/d}t dt| t d	t|  |dksE| d
krwt
tj	dd}t dtt|  tt|dkrb|S |d }t|}| }t dt|  ndd
i}t|}t }||I d H  |j}	|j}
t dt|	  t|}d}d}|||	|
|| |d}zt|}W n) ty } zt d t|}t t| t |j t | W Y d }~nd }~ww td|dS )Nzdis_param argszdis_param args>>> %s Fr   TrueTzdis_param DEBUG_SAIT_L>>> %szdis_param is_win>>> %sr   r   r.   zdis_param str(type(ans))=r/   r0   zdis_param vals=r   zdis_param ArParameters=zcdis_param<input type="text" id="name" name="name" required minlength="4" maxlength="8" size="10" />)valsvals_lenArParametersar_params_chr   r   r   z*device_management dis_param      Exceptionzdis_param.htmlr   )r!   r"   r   r#   r
   r:   r;   r   r   r$   r3   r4   r   Get_the_current_array_fromDBjsondumpsr   creation_params_DataWebparams_dict_webrH   len	Exceptionr   )r   r0   DEBUG_SAIT_Lr   r*   v_cl_log_data_manrE   vals_javascriptr7   rG   rH   rF   r   r    instmr,   r,   r-   r.   v   s`   


r.   c                     s   t d t ttj t } d}d}dtjv r1tjdat dtt  tdks/tdkr1d}d }d }}t d	t|   |dksG| d
krttjdd}t dtt	|  t dt|  tt	|dkr|dkr~t
dd| td}td|dS |S |d }t dt|  d}dtjv rtjd}t }t
j}	|d ur|dkrt||	t}	dtjvrt
|t
j t||	t
_|d |d |d |I d H }
|
dkrt
d}n|
}dtjv rd|iS d}t
dt
dt
d||| td}td|dS ) Nzdis_param_cmd argsrC   Fr   zdis_param_cmd DEBUG_SAIT=rD   Tr   zdis_param_cmd is_win=r	   r   dis_param_cmdzdis_param_cmd str(type(ans))=zdis_param_cmd ans=r/   mes_session_time_ended_adv)rT   r   r   r   zsess_end.htmlr   r   zdis_param_cmd DEBUG_SAIT_L=z/helpcmdr0   mess_Invalid_command_formatrT   	ReferenceClearSend)rY   rZ   r[   rT   r   r   r   zdis_param_cmd.html)r!   r"   r   r#   r   r   r$   r   r3   r4   r   r(   r   r   ID_langget_langr
   r'   url_dis_param_cmd_fr<   get_id_lang	IsCommand)r   r0   rP   r   r*   rT   r    cmd_datav_cl_man_cmdslangr`   r   r,   r,   r-   rU      sb   



rU   c               	      s  t d t ttj i } d }d }dtjv rtjd}dtjv r(tjd}dtjv r5tjd| d< ttjdd}t dt|  t|d |d< |d }|d dkr^|d }n9d	tjv rtjd	at d
tt  tdksytdkrznt	|d t
d t d| tt
jt
ddS t dt|  |d kr|d urt||t}|dkrd}td|iS t }t|j }t
j}|d ur|dkrt
	|t
j t||t}t dt|  t }	|pd}
|
||t
dt
dt
d|	td}td|dS )Nzchange_language argsAPI_KEYlang_newr   Tzchange_language ans0=r   r   r   zchange_language DEBUG_SAIT=rD   r   r   z"change_language id_telegram!>0 {} rV   )r1   desczchange_language id_telegram=OKr1   zchange_language lang=Shalabheeeemess_Changetit_Setting_languagenote_Choose_language)r   langsrc   ri   rj   rk   r   r   zchange_language.htmlr   )r!   r"   r   r#   r$   r   r%   r&   r   r'   r   r(   r)   r   v_errorr   Ch_langr
   r   listdicLangkeysr\   url_change_language_fr]   r   r   )request_datar   re   rd   r*   r+   rb   rp   rc   r   r   r    r,   r,   r-   change_language   sh   



rt   )0sysdatetimerJ   randomflaskr   r   r   r   r   r   werkzeug.routingr   rC   r
   handlers.cl_man_registr   handlers.cl_man_reqr   utils.constsr   
man_db.MDBr   handlers.cl_log_data_manr   handlers.cl_param_manr   handlers.cl_man_cmdsr   r!   rO   rS   r4   rT   r#   r   r<   routeurl_Device_management_fr   r5   r3   r9   r.   r^   rU   rr   rt   r,   r,   r,   r-   <module>   sV   



;
B