o
    &j                     @   sB   d Z ddlmZ dZdZdZdd Zdd	 ZdddZdd Z	dS )zUHelper: connect to the user's logged-in Chrome via CDP and return the FFG eCall page.    )sync_playwrightzhttp://127.0.0.1:9223715456166078747c                 C   sn   | j t}|jd }d }|jD ]}d|jv r|} nq|d u r/tdddd |jD  |  ||fS )Nr   zecall.ffg.atzKein ecall.ffg.at Tab. Tabs: z, c                 s   s    | ]}|j V  qd S )N)url).0pg r   </home/nk/hobo-godmode/otto/projekte/plappi/ffg-antrag/_pw.py	<genexpr>   s    zget_ffg_page.<locals>.<genexpr>)	chromiumconnect_over_cdpCDPcontextspagesr   RuntimeErrorjoinbring_to_front)pbrowserctxtargetr   r   r   r	   get_ffg_page   s   


r   c                 C   s2   |  dt dt  | jddd | d d S )Nz1https://ecall.ffg.at/Cockpit/Cockpit.aspx?target=z&antrag=networkidle0u  timeouti   )gotoTARGETANTRAGwait_for_load_statewait_for_timeout)r   r   r   r	   goto_project   s   r!   Tc                 C   sr   |  dD ]1}| pd }|r||kn| | v }|r6| r6|  | jddd | d  dS qdS )	Na r   r   r   i  TF)query_selector_all
inner_textstriplower
is_visibleclickr   r    )r   textexactr"   tokr   r   r	   
click_menu   s    r.   c                 C   s   i }|  dD ]@}d| pd }|rt|dkrqd|v p$d|v }|dd }| rG|rGt|dk rG||vs?|rG|rCd	nd
||< q|S )Nr"    r#      u   nicht befüllte Pflichtfelder
VerletzunguO   Es gibt nicht befüllte Pflichtfelder oder andere Verletzungen von Prüfregeln.<   ROTr-   )r$   r   r%   splitlenreplacer&   r(   )r   seenr"   r,   rotcleanr   r   r	   section_status!   s   r:   N)T)
__doc__playwright.sync_apir   r   r   r   r   r!   r.   r:   r   r   r   r	   <module>   s    
	