a
    whR                     @   s2  d dl mZmZmZ d dlmZ d dlmZmZm	Z	 d dl
Z
d dlZd dlZd dlmZ d dlZd dlmZ d dlZd dlZd dlm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 e Z ee Z!ej"ej#d
d e$e%Z&eddgdZ'eddZ(edgddZ)e'j*dedee+e,dddZ-dS )    )	APIRouterFormRequest)Jinja2Templates)	BaseModelEmailStrfield_validatorN)HTMLResponse)CryptContext)MIMEText)get_pingconf_vars
open_mysqlget_mysql_creds)contextmanagerz)%(asctime)s - %(levelname)s - %(message)s)levelformatz/confirmconfirm)prefixtags	templates)	directoryZbcryptauto)Zschemes
deprecated )response_class)requestidcodec              
   C   s  t t }|jdd}d}|||f | }|sDtddd|d dkrtd	| d
dddW  d    W  d    S |d |krtdddd}|||f |  td	| ddddW  d    W  d    S 1 s0    Y  W d    n1 s0    Y  d S )NT)
dictionaryzFSELECT StatusCode, ConfirmCode, Email FROM Handles WHERE HandleID = %si  zInvalid confirmation link.)status_codedetailZ
StatusCodeUzconfirm.htmlzEmail already confirmedz;Your account is already confirmed and you may now Sign-in!.)r   Zmessage_titlemessage_bodyZsignin_linkZConfirmCodei  zInvalid confirmation code.z7UPDATE Handles SET StatusCode = 'F' WHERE HandleID = %szConfirmation SuccesszBYour account has been successfully confirmed. You may now Sign-in!)	r   mysql_credscursorZexecuteZfetchoneHTTPExceptionr   TemplateResponsecommit)r   r   r   
connectionr$   ZsqlresultZ
update_sql r*   */wd/v2025.freedom4um.com/routes/confirm.pyr   #   s6     	).fastapir   r   r   fastapi.templatingr   pydanticr   r   r   rerandomstringstarlette.responsesr	   Zmysql.connectormysqlZpasslib.contextr
   configparsersmtplibZemail.mime.textr   loggingosZpymysqlZutils.pingdatar   r   r   
contextlibr   ZPingConfr#   basicConfigDEBUG	getLogger__name__loggerrouterr   Zpwd_contextgetintstrr   r*   r*   r*   r+   <module>   s8   

