a
    C%i+                  
   @   s.  d dl Z d dlZd dlZd dlZd dlT d dlmZ d dlZeej	 dd Z
dd Zz
e ZW n, ey Z zeeZW Y dZ[n
dZ[0 0 edd	*Zeeeej  W d   n1 s0    Y  ed
d	*Zeeeej  W d   n1 s0    Y  dd Zdd ZdS )    N)*)datetimec                 C   s"  i }t tj D ]\}}d|vr&q||i  tj|i ddtj|i ddtj|i ddtj|i ddtj|i ddtj|i d	dtj|i d
dtj|i ddtj|i ddtj|i ddt|ddtj|i d
dd||< q| dt| d7 } |D ]}| || d d || d  d 7 } | || d d || d  d 7 } | t|| d
 d 7 } || d dks| || d d 7 } nN|| d dks| || d d 7 } n&|| d dks@| || d d 7 } q@| S )N0xipNoneFromstationSiteidz
OS-Version8Uptime	timestamptemperatureCountryseOperatorslx a)r   fromr   siteid	osversionuptimer   r   countryoperatormacr   zAntal klienter: z <br>r    r   /r   z - r   z<br>r   )	enumeratevclientscopy
setdefaultgetstrreplace)outreturncontentnumberofclientsclienti r+   /var/www/html/_html.pyiterate_through_clients   s4    
$$((*r-   c                  C   s"   t j } t j| d< t| }|S )Nonline)r   r    r!   r.   jsondumps)r    r&   r+   r+   r,   generate_content4   s    


r1   zclients.datwzoperators.datc                  C   s    dt ttj  d} | S )Nzprint("Starting T-Monitor...")
from __main__ import *
from load_screen import *
data = "None"
time.sleep(1)
try: stars += 1
except: stars = 1
try: data = """zA"""
except Exception as e: pprint(e)
print(data)
print("Ending")
)r/   r0   r$   r   r    r!   )r&   r+   r+   r,   online_codeK   s    r3   c           !   
   C   s  d| j v rt }|S d| j v r6tttj }|S d| j v rdt_dd l	}d}z|j
|gdd W n, ty } zt|W  Y d }~S d }~0 0 dS d	| j v r<td
 tdd"}|ttj W d    n1 s0    Y  dd l	}d}z|j
|gdd W n. ty6 } zt|W  Y d }~S d }~0 0 dS d| j v rvztjd= ~W n   dd l}Y n0 || S d| j v r| j dd }tjD ]}||tj| }qt| td |= tdddd }|tt W d    n1 s0    Y  nd| j v rttjS d| j v rdd l}	d}d}
d}|	jd|ddid}t|j}i }|D ]:}|| d d d D ]}|d  }|d! }|||< q~qft|S d"| j v rttS d#| j v rDg }tjD ]6}d$ttj| ttj| d  vr| | qttj!}ttd% td& t"t#t||g}t|S d'| j v rZttjS d(| j v r(zz| j d)d }tt$% d d* d+d,tj&|< td-d"}|ttj& W d    n1 s0    Y  ttj&W S  ty } z"t|d. ttj& W  Y d }~S d }~0 0 ttj&S d/| j v rLdd l'}|(|j) nd0| j v rxzt*tj+ W n   Y n0 d1S d2| j v rzZ| j d)d }|rdtj,d< | j d)d tj,d< t-W S d+tj,d< d1tj,d< t-W S W n   Y n0 ttj,S d3| j v rttj.S d4| j v r&ttj/j0S d5| j v r:ttS d6| j v rLt1 S d7| j v rt| j d8d t_2tjD ]}tj2|tj| t_2qtttj2sd+t_2t3  n0d9| j v ri t_nd:| j v rZt| j  | j d;d }|d)d }| j d<d }tjD ]}||tj| }qt|r>|tj4|< ntj4|= t| t| nd=| j v r| j d)d }ztt5|W S    Y d>S 0 nFd?| j v r~d1}tjD ]}tj| D ]}tj| | D ]}d@tj| | | v rtj| | | d@ } nzt6| } W n   d1} Y n0 d?tj| | | v r|dA|  dB | dB tttj| | | d?  7 }qΐqq|S dC| j v r| j dDd dEd1}t| dF| dG | dH S dI| j v rdJ| j v rdKS dLS t-S )MNrunr    ftpTr   z/var/www/html/ftp.sh)shellz^<html><meta http-equiv="refresh" content="1; URL=http://data.t-skylt.se:89/settings" /></html>restartz!Attempting restart...............zdb.datr2   z/var/www/html/restart.shbalance
delstation   seen_stationszdata.datzutf-8)encodingdumpstationsGbpg 63ea83cd2cce48c79eaebf475818b7d0aJ  <REQUEST>
        <LOGIN authenticationkey='63ea83cd2cce48c79eaebf475818b7d0'/>
        <QUERY objecttype='TrainStation' schemaversion='1'>
        <FILTER/>
        <INCLUDE>Prognosticated</INCLUDE>
        <INCLUDE>AdvertisedLocationName</INCLUDE>
        <INCLUDE>LocationSignature</INCLUDE>
        </QUERY>
        </REQUEST>z3https://api.trafikinfo.trafikverket.se/v2/data.jsonzContent-Typeztext/xml)dataheadersRESULTTrainStationAdvertisedLocationNameLocationSignatureactivemonitor_htmlno_of_clientsmax_clients	operatorsadduser=
   F)dater   z	users.datz

stopreloadr   adcachesiteidsrA   statscalloutzcallout=clear_errorssendzsend=msgvariableError
departuresname
r   mac_idz?mac_id=r   z4
<html>

  <label for="fname">Direktmeddelande till z:</label><br>
  <input type="text" id="direct_message" value=""><br><br>
  <button onclick="window.location.href='settings?send=zp=msg'+encodeURIComponent(document.getElementById('direct_message').value)"> &#129146;/&#10060;</button>

</html>shop	supportedaL  <html><div style="background: black; color:white; padding: 0px; margin:0px">
<center>
Supported regions: 
<img src="https://cdn.shopify.com/s/files/1/0904/0235/7512/files/se_430x.png?v=1732310677#" style="width: 15px">


<img src="https://cdn.shopify.com/s/files/1/0904/0235/7512/files/dk_430x.png?v=1732310677#" style="width: 15px">


<img src="https://cdn.shopify.com/s/files/1/0904/0235/7512/files/de_430x.png?v=1732310677#" style="width: 15px">

<img src="https://cdn.shopify.com/s/files/1/0904/0235/7512/files/fi_430x.png?v=1732310677#" style="width: 15px">


</center>
</div></html>SHOP)7pathr3   r$   r/   r0   r   r    r!   r5   
subprocessr4   	ExceptionprintopenwriterL   sysmodulesr8   _balancesplithtml_decoder%   
saved_datar]   requestspostloadstextactive_stationserrorslenappendr.   	mean_ping_meanr   now	all_usersos_exitEX_OKrR   __name__rS   contentrT   rU   siteId
stats_pagecallout_messageload_deviationsdirect_messageseval_siteid)!requestr&   re   script_pathefr8   r   charrp   keyrZ   responser>   stations_dictr*   iir^   
short_name_errorsr.   r   new_userr|   _adr`   messager[   list_of_departuresr   r   r   _namer+   r+   r,   paramsZ   s$   


0


4	

4"	 2"

 









0B	r   )timer/   r|   rj   __main__r   cssr   rR   r   r-   r1   r   rf   r   r$   rh   r   ri   r0   r    r!   rL   r3   r   r+   r+   r+   r,   <module>   s     '
8: