U
    ?ti                     @   s   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 edeZejdd	gd
deddd
ZejdddedddZejddddd ZdS )    N)	Blueprintjsonifycurrent_app)require_login_access_token)
load_draft)build_public_media_url)fetch_post_statusZmisc_apiz/api/status/<draft_id>GET
api_status)methodsendpoint)draft_idc              
   C   s   t  }|stddddfS t| }|s:tddddfS |d}|sZtdd	d
dfS zt||}td|ddfW S  tk
r } ztdt|ddf W Y S d }~X Y nX d S )NFnot_authenticatedokerror  draft_not_found  
publish_idTZno_publish_id_yet)r   state   )r   data)r   r   r   getr   	Exceptionstr)r   access_tokendraftr   r   e r   5/var/www/html/luxverbi-app/app/blueprints/misc_api.pyr
      s    

z/api/media_url/<draft_id>api_media_url)r   c                 C   s   t  }|stddddfS t| }|s:tddddfS |d}|sZtdddd	fS tjd
 }tj||}tj	|stddddfS t
|tjd tjd tjd d}td|dS )NFr   r   r   r   r   stored_filenameZmissing_stored_filenamei  
UPLOAD_DIRZfile_not_foundPUBLIC_BASE_URLMEDIA_SIGNING_SECRETMEDIA_TOKEN_TTL_SECONDS)r"   public_base_urlsigning_secretttl_secondsT)r   url)r   r   r   r   r   configospathjoinexistsr   )r   r   r   r"   
upload_dir
local_pathr*   r   r   r    r!   "   s(    

z/healthzhealthzc                   C   s   t ddidfS )Nr   Tr   )r   r   r   r   r    r2   >   s    )r,   flaskr   r   r   services.authr   services.draftsr   services.mediar   tiktok_clientr   __name__bprouter   r
   r   r!   r2   r   r   r   r    <module>   s   
