o
    sg                     @   sx   d dl Z d dlZd dlmZmZmZmZmZ ededdZ	dZ
e	ddd Ze	d	d
d Ze	ddd ZdS )    N)	Blueprintrender_templatesend_from_directory	send_filecurrent_appmodsz/mods)
url_prefixz/home/minecraft/server/mods//c                  C   s<   zdd t tD } W n ty   g } Y nw td| dS )u2   설치된 모드 목록을 보여주는 페이지.c                 S   s   g | ]	}| d r|qS ).jar)endswith).0file r   */var/www/html/minecraft/app/routes/mods.py
<listcomp>   s    zmods.<locals>.<listcomp>z	mods.html	mod_files)oslistdirMODS_DIRFileNotFoundErrorr   r   r   r   r   r   
   s   z/download/<mod_name>c                 C   s&   zt t| ddW S  ty   Y dS w )u   모드 파일 다운로드.Tas_attachment)zFile not foundi  )r   r   r   )mod_namer   r   r   download_mod   s
   r   z/download-allc               
   C   s  d} t jtj| }znzCt|d!}t tD ]}|	dr+|j
t jt||d qW d   n1 s6w   Y  t|ddW W t j|rNt | S S  tyx } ztjd|  W Y d}~W t j|rrt | d	S d	S d}~ww t j|rt | w w )
u&   모든 모드 ZIP 파일 다운로드.zall_mods.zipwr
   )arcnameNTr   zError creating ZIP file: )zError creating ZIP filei  )r   pathjoinr   instance_pathzipfileZipFiler   r   r   writer   existsremove	Exceptionloggererror)zip_filenamezip_pathzipfr   er   r   r   download_all_mods   s2   
r,   )r   r    flaskr   r   r   r   r   __name__bpr   router   r   r,   r   r   r   r   <module>   s    


