
    .th`                     x    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 d dl	m
Z
 d dlmZ d Z G d de
          ZdS )	    N)Path)folium_static)HydraHeadApp)interactive_tablec                     t          |                                           }t          j        |                                          }|S N)r   
read_bytesbase64	b64encodedecode)img_path	img_bytesencodeds      5/srv/www/htdocs/dashboard-catalog-gnss/apps/region.pyimg_to_bytesr      s:    X))++Iy))0022GN    c                   (    e Zd ZddZd Zd Zd ZdS )	RegionApp c                 H    | j                             |           || _        d S r   )__dict__updatetitle)selfr   kwargss      r   __init__zRegionApp.__init__   s#    V$$$


r   c                 V    |                                   |                                  d S r   )_cs_sidebar_cs_body)r   s    r   runzRegionApp.run   s%    r   c                    t           j        5  t          j        dd           t           j                            dt          j        dd           dd           t          j        d          }t          j        d	          }t          j        d
d          }t          j        dd          }t          j        dd          }t          j        dd          }t          j        dd           t          j        d          }|r:|r|st          j        d           n ||k    rt          j        d           n|t           j	        d<   |t           j	        d<   |t           j	        d<   |t           j	        d<   |t           j	        d<   |t           j	        d<   |
                    d          }|
                    d          }	|j        }
d|
cxk    rdk    r	n nd|
 }n"t          j        d           	 d d d            d S d| d | d!|	 d"}|d#| d!| d$| d!| d%	z  }t          j        |          }|t           j	        d&<   d d d            d S # 1 swxY w Y   d S )'Na  
                <style>
                    div[data-testid="stVerticalBlock"] div:has(div.select-bar) {
                        position: sticky;
                        top: 0;
                        background-color: white;
                        z-index: 999;
                    }
                    .select-bar {
                        border-bottom: 0 solid black;
                    }
                </style>
                T)unsafe_allow_htmlzO<div style='padding-top: 0px; margin-top: -60px; margin-left: 40px;'><img src='zresources/region.pnglogoz' alt='Logo' width='200'></div>zPilih Start DatezPilih End DatezStart Longitudez%.2f)formatzEnd LongitudezStart LatitudezEnd Latitudez<div class='select-bar'></div>Submitz&Silakan pilih start date dan end date.z1Start date tidak boleh lebih besar dari end date.
start_dateend_dateslonelonslatelatz%Y-%m-%di  i  catalog_z$Data untuk tahun ini tidak tersedia.zSELECT * FROM z WHERE formatted_date BETWEEN 'z' AND ''z AND (SLAT BETWEEN 'z') AND (SLON BETWEEN 'z')data)stsidebarmarkdownutilsreplace_image
date_inputnumber_inputbuttonerrorsession_statestrftimeyear	load_data)r   r&   r'   r(   r)   r*   r+   submitstart_date_strend_date_strr:   tablequerydfs                 r   r   zRegionApp._cs_sidebar   sF   Z F	2 F	2K #'     Jr"01GPPr r r"&      '9::J}%566H?#4VDDDD??6BBBD?#3FCCCD?>&AAADK8DQQQQ Yx((F #2! !2 !2HEFFFF(**HPQQQQ 6@B$\23;B$Z0/3B$V,/3B$V,/3B$V,/3B$V, &0%8%8%D%DN#+#4#4Z#@#@L%?D t++++t+++++ 14 1 1!GHHHyF	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2~ zUyySayyjvyyyErDrrrr]arrjnrrrrE //B 02B$V,MF	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2 F	2s   G(IAIIIc                    dt           j        v r+t           j        d         }|j        rt          j        d           d S t	          |g d           t           j        d         t           j        d         z   dz  t           j        d         t           j        d	         z   dz  g}t          j        |d
d          }|                                D ]Y\  }}d|d          d|d          d|d          }t          j        |d         |d         g|          	                    |           Zt          |dd           d S t          j        d           d S )Nr.   zTidak ada data yang ditemukan.)	copyHtml5csvHtml5
excelHtml5)buttonsr*   r+      r(   r)      z100%)location
zoom_startwidth(clatz, clonz), basefile)popupi  iX  )rK   heightzHSilakan isi parameter di sidebar dan klik Submit untuk menampilkan data.)r/   r8   emptyr7   r   foliumMapiterrowsMarkeradd_tor   info)r   rA   
map_centermindexrow
popup_texts          r   r   zRegionApp._cs_bodye   s{   R%%%!&)Bx 
99::::: "".U.U.UVVVV!/7":J6:RRVWWZ\ZjkqZruw  vF  GM  vN  [N  RS  ZS  T
J
qOOO"$++-- Z ZJE3!US[!U!UCK!U!UC
O!U!UJM3v;F"<JOOOVVWXYYYYatC888888G^_____r   N)r   )__name__
__module____qualname__r   r    r   r    r   r   r   r      s^             
G2 G2 G2R` ` ` ` `r   r   )	streamlitr/   pathlibr   r
   r2   rS   streamlit_foliumr   hydralitr   itables.streamlitr   r   r   ra   r   r   <module>rg      s                 * * * * * * ! ! ! ! ! ! / / / / / /  d` d` d` d` d` d` d` d` d` d`r   