o
    Df                     @   s   d dl Z d dlmZ d dlmZmZmZmZ d dlZd dl	Z	ee
Ze	dZeddd ZedZeed	 ZW d   n1 sFw   Y  d
d Zeddd Zeddd Ze
dkrmejdd dS dS )    N)BeautifulSoup)Flaskrender_templatejsonifyabortMAPBOX_ACCESS_TOKEN/c                   C   s   t dtdS )Nz
index.html)Zmapbox_access_token)r   r    r	   r	   </home/exouser/operations/rsmas_insar/tools/Precip_web/app.pyindex   s   r   zdata/volcanoes.json	volcanoesc              
      s   d|  d g }zt  }|  t|jd} fdd|dD }W |S  t jyD } ztd|  d|  W Y d	}~|S d	}~ww )
z
    Fetches the list of image URLs for a given volcano.

    Args:
        volcano_name (str): The name of the volcano.

    Returns:
        list: A list of image URLs.
    z3http://149.165.154.65/data/HDF5EOS/precip_products/r   zhtml.parserc                    s*   g | ]}| d dr | d  qS )Zhrefz.png)getendswith).0ZnodeZimage_base_urlr	   r
   
<listcomp>$   s   * z(fetch_volcano_images.<locals>.<listcomp>azError fetching images for z: N)requestsr   Zraise_for_statusr   textZfind_allZRequestExceptionprint)Zvolcano_nameimagesZresponseZsouper	   r   r
   fetch_volcano_images   s   

r   z/volcano/<int:volcano_id>c                    sB   t  fddtD d }|stddd t|d }td||dS )	Nc                 3   s     | ]}|d   kr|V  qdS )idNr	   )r   v
volcano_idr	   r
   	<genexpr>,   s    z!volcano_detail.<locals>.<genexpr>i  zVolcano not found)Zdescriptionnamezvolcano.html)volcanor   )nextr   r   r   r   )r   r   r   r	   r   r
   volcano_detail)   s
   r!   z/api/volcanoesc                   C   s   t tS )N)r   r   r	   r	   r	   r
   get_volcanoes5   s   r"   __main__T)debug)r   Zbs4r   Zflaskr   r   r   r   Zjsonos__name__appgetenvr   Zrouter   openfloadr   r   r!   r"   runr	   r	   r	   r
   <module>   s(    




