ó
    <IËjðÝ  ã                   óB
  • S SK r S SKrS SKrS SKrS SKrS SKJrJr  S SKJ	r	J
r
JrJrJrJrJrJrJr  S SKJrJrJrJr  S SKJr  S SKJrJr  S SKrS SKJr  S SKJ r   S S	KJ!r!J"r"J#r#J$r$J%r%J&r&J'r'J(r(J)r)  S S
K*J+r+J,r,  S SK-J.r.J/r/J0r0J1r1  S SK2J3r3J4r4J5r5  S SK6J7r7J8r8  S SK9J:r:J;r;J<r<J=r=J>r>J?r?J@r@  S SKAJBrB  S SKCJDrDJErEJFrFJGrG  \	" \" \(" S5      5      /S9rHSrISrJS\JS4rKS\JSSSS4rLSrMSrN\M\N4-   rOSrPS\Q4S jrRS\QS\S4S  jrTS!\QS"\Q4S# jrU\HR­                  S$5      S%S&S&S&S&\" \ 5      \" \#5      4S'\
S(\QS)\QS*\QS+\QS,\QS-\S.\R®                  4S/ jj5       rX\HR³                  S05      \" S15      \" S15      \" \ 5      \" \#5      4S'\
S2\S3\ZS4\[S-\S.\R®                  4S5 jj5       r\S'\
S-\4S6 jr]S-\S7\^4S8 jr_S9 r`S7\Q4S: jraS-\4S; jrbS-\S<\ZS=\Z4S> jrcS-\4S? jrdS-\4S@ jre\HR­                  SA5      S&\" \ 5      \" \#5      4S'\
S3\ZS\QS-\S.\R®                  4
SB jj5       rf\HR³                  SC5      \" S15      \" S15      \" \ 5      \" \#5      4S'\
S3\ZS=\ZS-\S.\R®                  4
SD jj5       rg\HR³                  SE5      \" S15      \" S15      \" \ 5      \" \#5      4S'\
S=\ZSF\^\Z   S-\S.\R®                  4
SG jj5       rh\HR­                  SH5      \" \ 5      \" \#5      4SI\ZSJ\QS-\S.\R®                  4SK jj5       ri\HR­                  SL5      \" \ 5      \" \#5      4S'\
S3\ZS-\S.\R®                  4SM jj5       rj\HR³                  SN5      \" S15      \" S15      \" SOSP9\" S&SP9\" S&SP9\" S15      \" \ 5      \" \#5      4S'\
S2\S3\ZS\QSQ\QSR\QSS\QST\S-\S.\R®                  4SU jj5       rk\HRÙ                  SV5      \" \ 5      \" \#5      4S'\
S=\ZS-\S.\R®                  4SW jj5       rm\HR­                  SX5      \" \ 5      \" \#5      4SI\ZS3\ZSJ\QS-\S.\R®                  4
SY jj5       rnSZ\QS[\Q4S\ jro\HR­                  S]5      S&S&\" \ 5      \" \#5      4S'\
S3\ZSZ\QS[\QS-\S.\R®                  4S^ jj5       rp\HR­                  S_5      S&S&\" \ 5      \" \#5      4S'\
S3\ZSZ\QS[\QS-\S.\R®                  4S` jj5       rqS-\4Sa jrr\HR­                  Sb5      S&S&\" \ 5      \" \#5      4S'\
S3\ZSZ\QS[\QS-\S.\R®                  4Sc jj5       rs\HR­                  Sd\Se9SfSOS&S&\" \ 5      \" \#5      4S'\
S3\ZSg\QS"\QSZ\QS[\QS-\S.\R®                  4Sh jj5       rtg)ié    N)ÚdateÚdatetime)	Ú	APIRouterÚRequestÚDependsÚFormÚFileÚ
UploadFileÚBackgroundTasksÚHTTPExceptionÚstatus)ÚHTMLResponseÚJSONResponseÚStreamingResponseÚFileResponse)Úor_)ÚSessionÚ
joinedload)ÚEMELOGEP_SZEREPKOROK)Úget_db)	Úis_safe_extensionÚsanitize_filenameÚget_current_userÚget_working_company_idÚapply_user_data_scope_filterÚis_machine_allowedÚis_company_activeÚrequire_modulÚ%tartalom_illeszkedik_e_kiterjesztesre)Úkep_eÚtomorit_kepet)Ú check_uzemora_drift_and_escalateÚ'kezeli_sikertelen_vizsgalati_minositestÚeui_fovizsgalatra_jogosult_eÚ#VIZSGALATI_MINOSITES_KIVONO_ERTEKEK)Úget_search_filterÚtipus_egyezo_gepekÚ_tipus_norm)Úberelt_gep_idk_a_ceghezÚaktiv_berlet)ÚKOZOS_FAJLTIPUSOKÚkozos_prefixÚkozos_utvonal_eÚkozosbe_masolÚfizikai_torolÚarva_kozos_torleseÚhivatkozas_szam)Únaploz)Ú	templatesÚ	helyi_idoÚhelyi_datetimeÚhelyi_nap_utc_hataraiÚEMELOGEP)Údependencies)ÚAdminõ   EmelÅ‘gÃ©p szakÃ©rtÅ‘õ   EmelÅ‘gÃ©p vizsgÃ¡lÃ³õ   EmelÅ‘gÃ©p Ã¼gyintÃ©zÅ‘u   FÃ©nykÃ©p - AdattÃ¡blau	   FÃ©nykÃ©pu
   GÃ©pnaplÃ³õ   Napi ellenÅ‘rzÃ©s fotÃ³õ   JavÃ­tÃ¡si munkalapu   KockÃ¡zatÃ©rtÃ©kelÃ©s)õ   Szerkezeti vizsgÃ¡lat jkvõ   FÅ‘vizsgÃ¡lat jkvõ+   IdÅ‘szakos biztonsÃ¡gi felÃ¼lvizsgÃ¡lat jkvõ   RendkÃ­vÃ¼li vizsgÃ¡lat jkvõ2   ÃœzembehelyezÃ©si jkv / IsmÃ©telt Ã¼zembehelyezÃ©séd   Ú	file_typec                 óx   • U(       a  [        U5      [        :”  a  gU R                  [        ;  a  U[        ;  a  gg)u_   None, ha az adott felhasznÃ¡lÃ³ feltÃ¶ltheti ezt a dokumentumtÃ­pust, kÃ¼lÃ¶nben a hibaÃ¼zenet.u   Ã‰rvÃ©nytelen dokumentumtÃ­pus!uZ   Ezt a dokumentumtÃ­pust a szerepkÃ¶rÃ¶d nem tÃ¶ltheti fel (csak fÃ©nykÃ©p Ã©s gÃ©pnaplÃ³)!N)ÚlenÚFAJLTIPUS_MAX_HOSSZÚroleÚSZAKMAI_FELTOLTO_SZEREPKOROKÚALAP_FAJLTIPUSOK)Úcurrent_userrE   s     Ú!/var/www/website/routers/files.pyÚ_fajltipus_hibarN   =   s1   € æœ˜I›Ô)<Ó<Ø0Ø×ÑÔ <Ó<ÀÔRbÓAbØkØó    Ú	szigor_kic                 ó’   • UR                   nUS;   a  gUS:X  a  US:X  a  ggUS:X  a   US;   a  U(       d  g[        U 5      (       d  g	gg
)uÐ  None, ha a felhasznÃ¡lÃ³ egy feltÃ¶ltÃ¶tt jegyzÅ‘kÃ¶nyvvel Ã¡tÃ¡llÃ­thatja a gÃ©p vizsgÃ¡lati dÃ¡tumÃ¡t / minÅ‘sÃ­tÃ©st adhat,
kÃ¼lÃ¶nben a hibaÃ¼zenet. A szabÃ¡ly UGYANAZ, mint a vizsgÃ¡lat-rÃ¶gzÃ­tÃ©snÃ©l (routers/inspections.py, /general-jegyzokonyv):
  - Admin (rendszeradmin is), EmelÅ‘gÃ©p szakÃ©rtÅ‘: minden tÃ­pus;
  - EmelÅ‘gÃ©p vizsgÃ¡lÃ³: kizÃ¡rÃ³lag a Szerkezeti vizsgÃ¡lat jkv;
  - EmelÅ‘gÃ©p Ã¼gyintÃ©zÅ‘: Szerkezeti, RendkÃ­vÃ¼li, ÃœzembehelyezÃ©si jkv; a FÅ‘vizsgÃ¡lat / IdÅ‘szakos biztonsÃ¡gi felÃ¼lvizsgÃ¡lat jkv
    csak ha a cÃ©g beÃ¡llÃ­tÃ¡sÃ¡ban a szigorÃ­tÃ¡s ki van kapcsolva Ã‰S a gÃ©p az EBSZ 7.2.10 szerint jogosult (eui_fovizsgalatra_jogosult_e);
  - mindenki mÃ¡s (FelhasznÃ¡lÃ³ stb.): soha.)r9   r:   Nr;   r?   un   EmelÅ‘gÃ©p vizsgÃ¡lÃ³ kizÃ¡rÃ³lag szerkezeti vizsgÃ¡lati jegyzÅ‘kÃ¶nyvvel Ã¡llÃ­that dÃ¡tumot / minÅ‘sÃ­tÃ©st!r<   )r@   rA   uG   Az Ã¼gyintÃ©zÅ‘i fÅ‘vizsgÃ¡lat nincs engedÃ©lyezve a beÃ¡llÃ­tÃ¡sokban!uº   EmelÅ‘gÃ©p Ã¼gyintÃ©zÅ‘ nem rÃ¶gzÃ­thet fÅ‘vizsgÃ¡latot/idÅ‘szakos biztonsÃ¡gi felÃ¼lvizsgÃ¡latot ehhez a gÃ©phez a jogszabÃ¡ly Ã©rtelmÃ©ben (teherbÃ­rÃ¡s vagy kezelÅ‘i munkahely miatt)!u_   A szerepkÃ¶rÃ¶d nem Ã¡llÃ­that vizsgÃ¡lati dÃ¡tumot / minÅ‘sÃ­tÃ©st feltÃ¶ltÃ¶tt dokumentummal!)rI   r$   )ÚgeprL   rE   rP   Úszereps        rM   Ú_datum_minosites_hibarT   F   sb   € ð ×Ñ€FØÐ3Ó3ØØÐ(Ó(ØÐ3Ó3ØØØÐ*Ó*ØÐ\Ó\ÞØ`Ü/°×4Ñ4ð TØØlrO   ÚmappaÚnevc                 ór  • [         R                  R                  U5      u  p4[        S5       H[  nUS:X  a  UO(U S[        R
                  " 5       R                  SS  U 3nU  SU 3n [        US5       nU" U5        SSS5        Us  $    [        S5      e! , (       d  f       N= f! [         a     Mˆ  f = f)	uÞ  A fÃ¡jlt a megadott mappÃ¡ba menti, Ã©s SOHA nem Ã­r felÃ¼l meglÃ©vÅ‘t (J-03 / K8: eddig az azonos nevÅ± fÃ¡jl - pl. egy hivatalos,
kiszÃ¡mÃ­thatÃ³ nevÅ± jegyzÅ‘kÃ¶nyv-PDF - felÃ¼lÃ­rÃ³dott). ÃœtkÃ¶zÃ©snÃ©l a nÃ©v egy vÃ©letlen utÃ³tagot kap (`nev_ab12cd34.kit`).
KizÃ¡rÃ³lagos lÃ©trehozÃ¡ssal ("xb") nyitunk, Ã­gy kÃ©t egyidejÅ±, azonos nevÅ± feltÃ¶ltÃ©s sem Ã­rhatja felÃ¼l egymÃ¡st.
`iro(fajl)` Ã­rja ki a tartalmat. Visszaadja a mentett fÃ¡jl elÃ©rÃ©si ÃºtjÃ¡t (mappa/nÃ©v).é   r   Ú_Né   Ú/Úxbu:   Nem sikerÃ¼lt egyedi fÃ¡jlnevet kÃ©pezni a feltÃ¶ltÃ©shez.)
ÚosÚpathÚsplitextÚrangeÚuuidÚuuid4ÚhexÚopenÚFileExistsErrorÚRuntimeError)	rU   rV   ÚiroÚtorzsÚkiterjesztesÚkiserletÚjeloltÚhelyÚfajl_objektums	            rM   Ú_fajl_mentese_egyedi_nevvelrn   _   s¶   € ô
 Ÿ'™'×*Ñ*¨3Ó/Ñ€EÜ˜!–HˆØ  A›‘¨e¨W°A´d·j²j³l×6FÑ6FÀrÈÐ6JÐ5KÈLÈ>Ð+ZˆØ�˜˜&˜Ð"ˆð	Ü�d˜DÔ! ]Ù�MÔ"÷ "àŠKñ ô ÐSÓ
TÐT÷ "Õ!ûô ó 	Úð	ús*   Á)B(Á5	BÁ>	B(Â
B%	Â!B(Â(
B6Â5B6z/export-excelÚallÚ ÚrequestÚmodeÚsearch1Úsearch2Úsearch3ÚcolsÚdbrL   c                 óþ  ^(^)^*^+^,^-• SS K nSSKJn	Jn
  [	        Xp5      m-[        T-U5      nU(       a{  UR                  [        R                  5      R                  [        [        R                  R                  T-:H  [        R                  R                  R                  U5      5      5      nOIUR                  [        R                  5      R                  [        R                  R                  T-:H  5      n[        XÇ5      nUS:X  ar  U(       a  UR                  [        U[        5      5      nU(       a  UR                  [        U[        5      5      nU(       a  UR                  [        U[        5      5      nUR!                  5       nU H¤  nUR"                  Ul        UR&                  Ul        UR                  T-:w  d  M7  [+        Xæ5      nU(       d  MK  UR,                  (       d  M^  UR.                  (       a  UR0                  Ul        UR2                  (       d  M“  UR2                  Ul        M¦     UR                  [        R4                  5      R                  [        R4                  R                  T-:H  5      R!                  5       n0 m,U Hl  nUR6                  (       aI  UR6                  R9                  S5       Vs/ s H  nUR;                  5       PM     snT,UR<                  '   M]  / T,UR<                  '   Mn     U,4S jm+S m*S m(S m)0 S	S
S 4_SSU+4S j4_SSU+4S j4_SSU+4S j4_SSU+4S j4_SSS 4_SSU+4S j4_SSU+4S  j4_S!S"U+4S# j4_S$S%U*U+4S& j4_S'S(U(U+4S) j4_S*S+U(U+4S, j4_S-S.S/ 4_S0S1U-4S2 j4_S3S4U)4S5 j4_S6S7U)4S8 j4_SS9S: 4_n/ nU(       a3  UR9                  S5       H  nUR?                  [A        U5      5        M     O(URC                  5        H  nUR?                  U5        M     URE                  5       nURF                  nS;Ul$        S<URJ                  l&        S<URJ                  l'        S=URJ                  l$        S>URJ                  l(        S?URJ                  l)        S@URJ                  l*        U	" SASB9nU
" SCSCSDSE9nU	" SFSASG9nU Vs/ s H  nUU;   d  M  UU   S   PM     nnUR?                  U5        US	    H
  nUUl+        M     U HŠ  n/ nU H(  nUU;   d  M  UR?                  UU   S	   " U5      5        M*     UR?                  U5        URX                  n[[        US	SH9 H,  u  n n!U!SI:X  d  M  UR]                  UU SJ9nUUl/        UUl+        M.     MŒ     UR`                   Hƒ  n"Sn#U"S   Rb                  n$U" HF  n [e        [g        URh                  5      5      U#:”  a   [e        [g        URh                  5      5      n#MF  MH     [k        U#S-   SK5      n%U%URl                  U$   l7        M…     [p        Rr                  " 5       n&URu                  U&5        U&Rw                  S5        [x        Rz                  R}                  SL5      n'[        U&SMSNSOU' 30SP9$ s  snf s  snf !    Mæ  = f)QNr   )ÚFontÚPatternFillÚvisibleÚ,c                 óX   >• TR                  U R                  / 5      nX;   a  gU" U 5      $ )Nõ   Nem relevÃ¡ns)ÚgetÚgeptipus)rR   Údb_field_nameÚ
value_funcÚrejtett_mezokÚrejtett_maps       €rM   Úget_value_if_not_hiddenÚ-export_excel.<locals>.get_value_if_not_hidden­   s*   ø€ Ø#Ÿ™¨¯©°bÓ9ˆØÓ)Ø"Ù˜#‹ÐrO   c                 óF   • U R                   (       a  U R                    S3$ S$ )Nz kgÚ-)Ú
teherbiras©Úgs    rM   Úformat_teherÚ"export_excel.<locals>.format_teher³   s   € Ø'(§|§|�!—,‘,�˜sÐ#Ð<¸Ð<rO   c                 ó6   • U (       a  U R                  S5      $ S$ )Nú%Y-%m-%drˆ   )Ústrftime)Úds    rM   Úformat_datumÚ"export_excel.<locals>.format_datum¶   s   € Þ)*ˆq�z‰z˜*Ó%Ð3°Ð3rO   c                 ón   • U (       d  gU R                   =(       d    S SU R                  =(       d    S S3$ )Nrˆ   z (u   gyÃ¡ri szÃ¡m nÃ©lkÃ¼lÚ))Ú
megnevezesÚ
gyari_szamrŠ   s    rM   Úformat_gep_jelzoÚ&export_excel.<locals>.format_gep_jelzo¹   s1   € ÞØØ—,‘,×% #Ð& b¨¯©×)PÐ9PÐ(QÐQRÐSÐSrO   é   Ú	Telephelyc                 óT   • U R                   (       a  U R                   R                  $ S$ ©Nrˆ   )Úmegjelenitett_telephelyrV   rŠ   s    rM   Ú<lambda>Úexport_excel.<locals>.<lambda>¿   s!   € ÀA×D]×D] 1×#<Ñ#<×#@Ñ#@Ð#fÐcfÐ#frO   é   u	   HelyszÃ­nc                 ó   >• T" U SS 5      $ )Nr–   c                 ó   • U R                   $ ©N)Úmegjelenitett_keszenleti_hely©Úxs    rM   rŸ   Ú0export_excel.<locals>.<lambda>.<locals>.<lambda>À   s   € ÐVW×VuÒVurO   © ©r‹   r…   s    €rM   rŸ   r    À   s   ø€ Ñ#:¸1¸lÑLuÔ#vrO   é   u   GyÃ¡rtÃ³c                 ó   >• T" U SS 5      $ )NÚgyartoc                 ó   • U R                   $ r¤   )r­   r¦   s    rM   rŸ   r¨   Á   s   € ÐQR×QYÒQYrO   r©   rª   s    €rM   rŸ   r    Á   s   ø€ Ñ"9¸!¸XÑGYÔ"ZrO   é   u   TÃ­pusc                 ó   >• T" U SS 5      $ )NÚtipusc                 ó   • U R                   $ r¤   )r±   r¦   s    rM   rŸ   r¨   Â   s   € ÈaÏgÊgrO   r©   rª   s    €rM   rŸ   r    Â   s   ø€ Ñ 7¸¸7ÑDUÔ VrO   é   u   GyÃ¡ri szÃ¡mc                 ó   >• T" U SS 5      $ )Nr—   c                 ó   • U R                   $ r¤   )r—   r¦   s    rM   rŸ   r¨   Ã   s   € ÐYZ×YeÒYerO   r©   rª   s    €rM   rŸ   r    Ã   s   ø€ Ñ&=¸aÀÑOeÔ&frO   rX   u
   GÃ©ptÃ­pusc                 ó   • U R                   $ r¤   )r€   rŠ   s    rM   rŸ   r    Ä   s   €  A§J¢JrO   é   u   CsoportszÃ¡mc                 ó   >• T" U SS 5      $ )NÚcsoportszamc                 ó,   • U R                   =(       d    S$ r�   )Úcalculated_csoportszamr¦   s    rM   rŸ   r¨   Å   s   € ÐZ[×ZrÑZr×ZyÐvyÐZyrO   r©   rª   s    €rM   rŸ   r    Å   s   ø€ Ñ&=¸aÀÑPyÔ&zrO   rZ   õ	   ÃœzemÃ³rac                 ó   >• T" U SS 5      $ )NÚuzemorac                 ó   • U R                   $ r¤   )r¾   r¦   s    rM   rŸ   r¨   Æ   s   € ÐST×S\ÒS\rO   r©   rª   s    €rM   rŸ   r    Æ   s   ø€ Ñ#:¸1¸iÑI\Ô#]rO   é	   u   LeltÃ¡ri szÃ¡mc                 ó   >• T" U SS 5      $ )NÚleltari_szamc                 ó,   • U R                   =(       d    S$ r�   )rÂ   r¦   s    rM   rŸ   r¨   Ç   s   € Ð]^×]kÑ]k×]rÐorÐ]rrO   r©   rª   s    €rM   rŸ   r    Ç   s   ø€ Ñ(?ÀÀ>ÑSrÔ(srO   é
   u   TeherbÃ­rÃ¡sc                 ó    >• T" U SU4S j5      $ )Nr‰   c                 ó   >• T" U 5      $ r¤   r©   )r§   rŒ   s    €rM   rŸ   r¨   È   s   ø€ ÑZfÐghÔZirO   r©   )r‹   rŒ   r…   s    €€rM   rŸ   r    È   s   ø€ Ñ'>¸qÀ,ÔPiÔ'jrO   é   u   GyÃ¡rtÃ¡s dÃ¡tumac                 ó    >• T" U SU4S j5      $ )NÚgyartas_datumc                 ó(   >• T" U R                   5      $ r¤   )rÉ   ©r§   r’   s    €rM   rŸ   r¨   É   s   ø€ ÑbnÐop×o~Ño~ÔbrO   r©   ©r‹   r’   r…   s    €€rM   rŸ   r    É   s   ø€ Ñ,CÀAÀÔXô  -ArO   é   u   Ãœzembe helyezÃ©sc                 ó    >• T" U SU4S j5      $ )NÚuzembe_helyezes_datumc                 ó(   >• T" U R                   5      $ r¤   )rÏ   rË   s    €rM   rŸ   r¨   Ê   s   ø€ ÑjvÐwx÷  xOñ  xOô  kPrO   r©   rÌ   s    €€rM   rŸ   r    Ê   s   ø€ Ñ,CÀAÐG^ô  aPô  -QrO   é   u   StÃ¡tuszc                 ó@   • U R                   S:w  a  U R                    $ S$ )Nu   AktÃ­v)ÚstatuszrŠ   s    rM   rŸ   r    Ë   s   € °Q·Y±YÀ(Ó5J a§i¡i [Ð#XÐPXÐ#XrO   é   ÚEredetc                 ó‚   >• U R                   T:X  a  S$ SU R                  (       a  U R                  R                  OS S3$ )Nu   SajÃ¡tu	   BÃ©relt (rˆ   r•   )Ú
company_idÚcegrV   )r‹   Úworking_company_ids    €rM   rŸ   r    Ï   s>   ø€ ¨Q¯\©\Ð=OÓ-O Ð!ÐW`Ðno×ns×nsÐab×afÑaf×ajÒajÐy|Ð`}Ð}~ÐUÐ!rO   é   u   FÅ‘ gÃ©pc                 óN   >• U R                   (       a  T" U R                  5      $ S$ r�   )Ú	fo_gep_idÚfo_gep©r‹   r˜   s    €rM   rŸ   r    Ð   s   ø€ ÀÇÇÑ#3°A·H±HÓ#=Ð#UÐRUÐ#UrO   é   u   TartozÃ©kokc                 ót   >• U R                   (       a%  SR                  U4S jU R                    5       5      $ S$ )Nú, c              3   ó4   >#   • U  H  nT" U5      v •  M     g 7fr¤   r©   )Ú.0Útr˜   s     €rM   Ú	<genexpr>Ú1export_excel.<locals>.<lambda>.<locals>.<genexpr>Ñ   s   øé € Ð/ZÊ\ÈÑ0@À×0CÐ0CÊ\ùs   ƒrˆ   )Ú
tartozekokÚjoinrÞ   s    €rM   rŸ   r    Ñ   s*   ø€ Ð^_×^j×^j d§i¡iÔ/ZÈQÏ\Ê\Ó/ZÓ&ZÐ&sÐpsÐ&srO   ÚIDc                 ó   • U R                   $ r¤   ©ÚidrŠ   s    rM   rŸ   r    Õ   s   € ˜AŸDšDrO   u   EmelÅ‘gÃ©p ListaÚEmeLOGu   EmeLOG emelÅ‘gÃ©p-exportu!   EmelÅ‘gÃ©p-nyilvÃ¡ntartÃ¡s exportuY   Az EmeLOG (emelÅ‘gÃ©p-nyilvÃ¡ntartÃ³ Ã©s vizsgÃ¡latkezelÅ‘) rendszerrel kÃ©szÃ¼lt export.zEmeLOG exportT)ÚboldÚEEEEEEÚsolid)Ústart_colorÚ	end_colorÚ	fill_typeÚ888888)ÚcolorÚitalic)Ústartr~   )ÚrowÚcolumné(   zEmeLOG_Export.xlsxzAapplication/vnd.openxmlformats-officedocument.spreadsheetml.sheetzContent-Dispositionzattachment; filename*=UTF-8'')Ú
media_typeÚheaders)@ÚopenpyxlÚopenpyxl.stylesry   rz   r   r)   ÚqueryÚmodelsÚMachineÚfilterr   r×   rì   Úin_r   r&   ro   Ú	telephelyrž   r–   r¥   r*   Ú
jovahagyvaÚberlo_site_idÚ
berlo_siteÚberlo_keszenleti_helyÚMachineTypeConfigrƒ   ÚsplitÚstripr€   ÚappendÚintÚkeysÚWorkbookÚactiveÚtitleÚ
propertiesÚcreatorÚlastModifiedByÚsubjectÚdescriptionÚcategoryÚfontÚmax_rowÚ	enumerateÚcellÚfillÚcolumnsÚcolumn_letterrG   ÚstrÚvalueÚminÚcolumn_dimensionsÚwidthÚioÚBytesIOÚsaveÚseekÚurllibÚparseÚquoter   ).rq   rr   rs   rt   ru   rv   rw   rL   rý   ry   rz   Úberelt_gep_idkrÿ   ÚgepekrR   ÚberletÚconfigsÚcr§   Úcol_mapÚselected_indicesÚkÚwbÚwsÚheader_fontÚdisabled_fillÚdisabled_fontÚiÚ
header_rowr  Úadat_sorÚcurrent_rowÚcol_idxÚ
cell_valueÚcolÚ
max_lengthr  Úadjusted_widthÚoutputÚfilenamer’   r˜   rŒ   r…   r„   rÙ   s.                                           @@@@@@rM   Úexport_excelrC  q   s*  ý€ ó ß1ä/°ÓFÐô
 -Ð-?ÀÓD€NÞØ—‘œŸ™Ó(×/Ñ/Ü”—‘×)Ñ)Ð-?Ñ?ÄÇÁ×ARÑAR×AVÑAVÐWeÓAfÓgó
‰ð —‘œŸ™Ó(×/Ñ/´·±×0IÑ0IÐM_Ñ0_Ó`ˆÜ(¨Ó=€EàˆyÓÞØ—L‘LÔ!2°7¼FÓ!CÓDˆEÞØ—L‘LÔ!2°7¼FÓ!CÓDˆEÞØ—L‘LÔ!2°7¼FÓ!CÓDˆEà�I‰I‹K€Eó ˆØ&)§m¡mˆÔ#Ø,/¯N©NˆÔ)Ø�>‰>Ð/Õ/Ü! #Ó*ˆFßˆv˜&×+×+Ñ+Ø×'×'Ø28×2CÑ2C�CÔ/Ø×/×/Ñ/Ø8>×8TÑ8T�CÖ5ñ ð �h‰h”v×/Ñ/Ó0×7Ñ7¼×8PÑ8P×8[Ñ8[Ð_qÑ8qÓr×vÑvÓx€GØ€KÛˆØ�?�?Ø:;¿/¹/×:OÑ:OÐPSÔ:TÓ&UÒ:T°Q q§w¡w¦yÑ:TÑ&UˆK˜Ÿ
™
Ó#à&(ˆK˜Ÿ
™
Ó#ñ	 õò=ò4òTð
Ø	ˆKÑfÐgðà	ˆKÔvÐwðð 	
ˆJÔZÐ[ðð 	
ˆHÔVÐWð	ð
 	
ˆNÔfÐgðð 	
ˆLÑ.Ð/ðð 	
ˆNÔzÐ{ðð 	
ˆKÔ]Ð^ðð 	
ÐÔsÐtðð 	ˆ^ÕjÐkðð 	Ð õ  #Að  Bðð 	Ð õ  #Qð  Rðð 	ˆZÑXÐYðð" 	ˆXÔð  Að#ð$ 	ˆZÔUÐVð%ð& 	ˆ]ÔsÐtð'ð. 	
ˆD‘.Ð!ð/€Gð4 ÐÞØ—‘˜C–ˆAØ×#Ñ#¤C¨£FÖ+ò !ð —‘–ˆAØ×#Ñ# AÖ&ñ  ð 
×	Ñ	Ó	€BØ	�‰€BØ!€B„Hð %€B‡M�MÔØ#+€B‡M�MÔ Ø4€B‡M�MÔØ?€B‡M�MÔØ {€B‡M�MÔØ,€B‡M�MÔñ ˜D‘/€KÙ¨HÀÐT[Ñ\€MÙ˜x°Ñ5€Mñ *:ÓJÒ)9 A¸QÀ'¹\“-�'˜!‘*˜Q”-Ñ)9€JÐJØ‡I�IˆjÔØ�1”ˆØˆŽ	ñ ó ˆØˆÛ!ˆAØ�G�|Ø—‘ ¨¡
¨1¢¨cÓ 2Ö3ñ "ð 	�	‰	�(ÔØ—j‘jˆô $-¨X¸QÔ#?ÑˆG�ZØ˜_Õ,Ø—w‘w ;°w�wÐ?�Ø)�”	Ø)�–	ó	 $@ñ ð" �zŒzˆØˆ
Ø˜A™×,Ñ,ˆÛˆDðÜ”s˜4Ÿ:™:“Ó'¨*Ó4Ü!$¤S¨¯©£_Ó!5’Jñ 5ñ ô ˜Z¨!™^¨RÓ0ˆØ4Bˆ×Ñ˜]Ñ+Ö1ñ ô �ZŠZ‹\€FØ‡G�GˆF„OØ
‡K�K�„Nä�|‰|×!Ñ!Ð"6Ó7€HäØØVØ&Ð*IÈ(ÈÐ(TÐUñð ùòk 'VùòV Køð<Úús   Ê>Y-Ò$
Y2Ò2Y2ÖA Y7Ù7Y<z/gyors-uzemora.Úbackground_tasksÚ
machine_idr¾   c           	   ƒ   ól  #   • UR                   [        ;  a  [        SSS0S9$ UR                   S;   a  [        USS5      (       d  [        SSS0S9$ [	        XP5      n[        Xd5      (       d  [        SSS0S9$ UR                  (       a  [        SSS	0S9$ UR                  [        R                  5      R                  [        R                  R                  U:H  [        R                  R                  U:H  5      R                  5       nU(       a  [        Xu5      (       d  [        S
SS0S9$ UR                  nX7l        [!        XtU5        [        R"                  " UR                  UR                  S[%        U5      [%        U5      S9n	UR'                  U	5        UR)                  5         [        SSS0S9$ 7f)Né“  Úmessageu2   Nincs jogosultsÃ¡god az Ã¼zemÃ³ra frissÃ­tÃ©sÃ©re!©Ústatus_codeÚcontent©õ   FelhasznÃ¡lÃ³r<   Újog_uzemora_rogzitesFu;   Ez a cÃ©g inaktÃ­v stÃ¡tuszÃº, Ã¼zemÃ³ra nem frissÃ­thetÅ‘!õM   Csak megtekintÃ©si jogosultsÃ¡ggal rendelkezel, szerkesztÃ©s nem lehetsÃ©ges!é”  u    A keresett gÃ©p nem talÃ¡lhatÃ³!r¼   ©rE  Úuser_idÚ
field_nameÚ	old_valueÚ	new_valueéÈ   u   Sikeres mentÃ©s!)rI   r   r   Úgetattrr   r   Úcsak_olvasasrÿ   r   r  r  rì   r×   Úfirstr   r¾   r"   ÚAuditLogr  ÚaddÚcommit)
rq   rD  rE  r¾   rw   rL   rÙ   rR   Úold_valÚlogs
             rM   Úgyors_uzemorar_  %  s£  é € ð ×ÑÔ 4Ó4Ü¨°iÐAuÐ5vÑwÐwà×ÑÐHÓHÜ�|Ð%;¸U×CÑCÜØØ"Ð$XÐYñð ô
 0°ÓFÐäÐ/×4Ñ4ÜØØÐ ]Ð^ñ
ð 	
ð
 × × ÜØØÐ oÐpñ
ð 	
ð
 �(‰(”6—>‘>Ó
"×
)Ñ
)Ü�‰×Ñ˜ZÑ'Ü�‰×!Ñ!Ð%7Ñ7ó÷ �eƒgð ö
 Ô(¨×;Ñ;ÜØØÐ BÐCñ
ð 	
ð
 �k‰k€GØ„Kô % SÐ.>Ô?ä
�/Š/Ø—6‘6Ø—‘ØÜ�g“,Ü�g“,ñ€Cð ‡F�Fˆ3„KØ‡I�I„Kä C°)Ð=OÐ1PÑQÐQùs   ‚F2F4c                 ó>  • [        X 5      n[        X15      (       d  S[        SSS0S94$ UR                  (       a  S[        SSS0S94$ UR                  S;   a   [        USS	5      (       d  S[        SSS
0S94$ UR                  [        ;  a  S[        SSS0S94$ US4$ )u  A megosztÃ¡s ugyanazokat a kapukat kÃ¶veti, mint a feltÃ¶ltÃ©s (/upload-file): aktÃ­v cÃ©g, nem csak olvasÃ³, feltÃ¶ltÃ©si jog, Ã©s szakmai szerepkÃ¶r
(a FelhasznÃ¡lÃ³ ezeket a tÃ­pusokat nem is tÃ¶lthetnÃ© fel). VisszatÃ©rÃ©s: (munkakÃ¶rnyezet cÃ©ge, None) vagy (None, hibavÃ¡lasz).NrG  rH  u:   Ez a cÃ©g inaktÃ­v stÃ¡tuszÃº, dokumentum nem csatolhatÃ³!rI  rO  rL  Újog_dokumentum_feltoltesFõ0   Nincs jogosultsÃ¡god dokumentum feltÃ¶ltÃ©sÃ©re!u6   Ezt a dokumentumtÃ­pust a szerepkÃ¶rÃ¶d nem kezelheti!)r   r   r   rX  rI   rW  rJ   )rq   rw   rL   Úcids       rM   Ú_kozos_kapurd  i  sø   € ô ! Ó
7€CÜ˜S×%Ñ%Ø”\¨c¸Ið  HDð  <Eñ  Fð  Fð  	FØ× × Ø”\¨c¸Ið  HWð  <Xñ  Yð  Yð  	YØ×ÑÐHÓHÔQXÐYeð  hBð  DI÷  RJñ  RJØ”\¨c¸IÐGyÐ;zÑ{Ð{Ð{Ø×ÑÔ <Ó<Ø”\¨c¸IÐGð  <Añ  Bð  Bð  	BØ�ˆ9ÐrO   Úreturnc                 óÞ   • [        XR                  UR                  UR                  5       Vs/ s H2  o3R                  UR                  :w  d  M  [        X25      (       d  M0  UPM4     sn$ s  snf )u}   A gÃ©p azonos gyÃ¡rtÃ³jÃº Ã‰S tÃ­pusÃº, a felhasznÃ¡lÃ³ Ã¡ltal lÃ¡thatÃ³ tÃ¡rsgÃ©pei (a gÃ©p maga nÃ©lkÃ¼l), a cÃ©gen belÃ¼l.)r'   r×   r­   r±   rì   r   )rw   rR   rL   r‹   s       rM   Ú_kozos_tarsgepekrg  x  s^   € ä)¨"¯n©n¸c¿j¹jÈ#Ï)É)ÔTó  PÒT�!×X\ÑX\Ð`c×`fÑ`fÑXf‹AÔk}Ð~÷  lO�AÑTñ  Pð  Pùò  Ps   ®A*ÁA*Á!A*c                 ó~  • UR                   U R                   :X  a  gUR                  U R                  :w  a  g[        X5      (       d  g[        U R                  5      [        U R
                  5      pCU(       aE  U(       a>  US:X  d8  US:X  d2  [        UR                  5      U:w  d  [        UR
                  5      U:w  a  gg)u^   None, ha a cÃ©l-gÃ©p megkaphatja a forrÃ¡sgÃ©p dokumentumÃ¡t, kÃ¼lÃ¶nben a hiba oka (szÃ¶veg).u   ugyanaz a gÃ©pu   mÃ¡sik cÃ©g gÃ©peu   nincs hozzÃ¡fÃ©rÃ©sed a gÃ©phezrˆ   u   nem azonos gyÃ¡rtÃ³ Ã©s tÃ­pusN)rì   r×   r   r(   r­   r±   )Ú
forras_gepÚcelrL   ÚgyÚtis        rM   Ú_kozos_cel_hibarm  }  s’   € à
‡v�v�—‘ÓØØ
‡~�~˜×.Ñ.Ó.Ø"Ü˜c×0Ñ0Ø0Ü˜×*Ñ*Ó+¬[¸×9IÑ9IÓ-JˆÞ–R˜2 ›9¨¨c«	´[ÀÇÁÓ5LÐPRÓ5RÔVaÐbe×bkÑbkÓVlÐprÓVrØ/ØrO   c                 óf   • [         R                  R                  U R                  =(       d    S5      $ )Nrp   )r]   r^   ÚbasenameÚ	file_path)Úfajls    rM   Ú_kozos_fajlnevrr  ‹  s    € Ü�7‰7×Ñ˜DŸN™N×0¨bÓ1Ð1rO   c                 óP  • [         R                  " UR                  UR                  UR                  UR
                  S9nU R                  U5        [        XSSSSUR                   S[        U5       SUR                   SUR                  =(       d    S S	3	UR                  S
9  U$ )u†   HivatkozÃ¡s-sor a cÃ©l-gÃ©pnek a (mÃ¡r kÃ¶zÃ¶s mappÃ¡ban lÃ©vÅ‘) forrÃ¡s-fÃ¡jlra + naplÃ³ a cÃ©l-gÃ©p esemÃ©nyei kÃ¶zÃ©. Nem commitol.©rE  rp  rE   Ú
megjegyzesNu   DOKUMENTUM HIVATKOZÃ�Srˆ   u"   MeglÃ©vÅ‘ dokumentum hasznÃ¡lata: ú: u    (forrÃ¡s: #Ú r•   ©ÚregiÚujrE  )
r   r	   rì   rp  rE   ru  r[  r2   rr  r–   )rw   Úforrasri  rj  rL   rz  s         rM   Ú_hivatkozas_keszitr|  �  s»   € ä	�Š §¡°&×2BÑ2BÈf×N^ÑN^Ðkq×k|Ñk|Ñ	}€BØ‡F�Fˆ2„JÜ
ˆ2˜TÐ#;À#Ø2°6×3CÑ3CÐ2DÀBÄ~ÐV\ÓG]ÐF^Ð^jÐku×kxÑkxÐjyÐyzð  |F÷  |Qñ  |Q÷  |Xð  UXð  {Yð  YZð  [Ø—f‘fòð €IrO   rc  Úfile_idc                 ó¢  • U R                  [        R                  5      R                  [        R                  R                  U:H  5      R                  5       nU(       a  UR                  OSnU(       a'  U(       a   UR                  U:w  d  [        XR5      (       d  SS[        SSS0S94$ UR                  [        ;  a  SS[        SSS0S94$ XES4$ )uŽ   (forrÃ¡s File, forrÃ¡s gÃ©p, None) vagy (None, None, hibavÃ¡lasz): a forrÃ¡s a munkakÃ¶rnyezet cÃ©gÃ©Ã©, lÃ¡thatÃ³, Ã©s megoszthatÃ³ tÃ­pusÃº.NrP  rH  u)   A hivatkozott dokumentum nem talÃ¡lhatÃ³!rI  é�  uB   Csak HasznÃ¡lati utasÃ­tÃ¡s, GÃ©pkÃ¶nyv Ã©s Adatlap oszthatÃ³ meg!)rÿ   r   r	   r  rì   rY  Úmachiner×   r   r   rE   r+   )rw   rc  rL   r}  r{  ri  s         rM   Ú_kozos_forrasr�  ™  s¿   € à�X‰X”f—k‘kÓ"×)Ñ)¬&¯+©+¯.©.¸GÑ*CÓD×JÑJÓL€FÞ#)�—’¨t€JÞž z×'<Ñ'<ÀÓ'CÔK]Ð^h×KwÑKwØ�Tœ<°CÀ)ÐMxÐAyÑzÐzÐzØ×ÑÔ0Ó0Ø�Tœ<°CÀ)ð  NRð  BSñ  Tð  Tð  	TØ˜tÐ#Ð#rO   c                 óè   •  U R                  5         [        U5        g! [         aI  nU R                  5         [        U5        [	        S[        U5      R                   SU 35         SnAgSnAff = f)u§   Commit; siker utÃ¡n a rÃ©gi fizikai pÃ©ldÃ¡ny tÃ¶rlÃ©se, hibÃ¡nÃ¡l visszagÃ¶rgetÃ©s Ã©s az Ãºjonnan lÃ©trehozott mÃ¡solat tÃ¶rlÃ©se. VisszatÃ©rÃ©s: True, ha sikerÃ¼lt.u.   â�Œ Hiba a megosztott dokumentum mentÃ©sekor: rv  NFT)r\  Ú	ExceptionÚrollbackr/   ÚprintÚtypeÚ__name__)rw   Úregi_fizikaiÚ
uj_masolatÚes       rM   Ú_kozos_commitr‹  ¤  sg   € ðØ
�	‰	Œô �,ÔØøô ó Ø
�‰ŒÜ�jÔ!ÜÐ>¼tÀA»w×?OÑ?OÐ>PÐPRÐSTÐRUÐVÔWÜûð	ús   ‚ ž
A1¨?A,Á,A1c                 ó:  • [        XU5      nU(       d  gU R                  [        R                  R                  5      R                  [        R                  R                  R                  U Vs/ s H  oUR                  PM     sn5      [        R                  R                  UR                  :H  5      R                  5        Vs1 s H  ofS   iM	     nnU Vs/ s H  oUR                  U;  d  M  UPM     nnU(       d  gUR                  UR                  [        U5      U Vs/ s HZ  nUR                  UR                  UR                  UR                  UR                  (       a  UR                  R                  OSS.PM\     snS.$ s  snf s  snf s  snf s  snf )u¯   FeltÃ¶ltÃ©s utÃ¡n: mely tÃ¡rsgÃ©peknek nincs mÃ©g ilyen tÃ­pusÃº dokumentuma (a rÃ¡juk alkalmazÃ¡s felajÃ¡nlhatÃ³), Ã©s hÃ¡nyuknak van mÃ¡r.
None, ha nincs kinek felajÃ¡nlani.Nr   )rì   r–   r—   rÂ   r  )r}  rE   Úmar_vanÚjeloltek)rg  rÿ   r   r	   rE  r  r  rì   rE   ro   rG   r–   r—   rÂ   r  rV   )	rw   rR   Úuj_fajlrL   Útarsakr‹   ÚsorÚvanrŽ  s	            rM   Ú_kozos_ajanlatr“  ±  sP  € ô ˜b |Ó4€FÞØØŸX™X¤f§k¡k×&<Ñ&<Ó=×DÑDÜ�‰×Ñ×"Ñ"±&Ó#9²&¨Q§D¤D±&Ñ#9Ó:¼F¿K¹K×<QÑ<QÐU\×UfÑUfÑ<fóhßhkÑhkÓhmðnó oò n�cˆqŒ6ñ n€Cð oá!Ó5š6�a§T¡T°¡_—™6€HÐ5ÞØà—:‘:Ø×&Ñ&Ü�s“8áV^ó`ÚV^ÐQRð ŸD™D°·±ÈAÏLÉLÐjk×jxÑjxØ67·k·k 1§;¡;§?¢?ÀtôMÙV^ñ`ñ	ð ùò	 $:ùòoùâ5ùò`s   Á.F	ÃFÃFÃ/FÄ#A!F
z$/gep-kozos-dokumentumok/{machine_id}c                 óê  • [        XU5      u  pVU(       d
  U[        ;  a  / SS.$ UR                  [        R                  5      R                  [        R                  R                  U:H  [        R                  R                  U:H  5      R                  5       nU(       a  [        Xt5      (       d  / SS.$ [        X7U5       Vs0 s H  oˆR                  U_M     n	nUR                  [        R                  5      R                  [        R                  R                  UR                  :H  [        R                  R                  U:H  5      R                  5       S:„  n
0 nU	(       GaÂ  UR                  [        R                  5      R                  [        R                  R                  R                  [!        U	5      5      [        R                  R                  U:H  5      R#                  [        R                  R$                  R'                  5       [        R                  R                  R'                  5       5      R)                  5        HÚ  nUR*                  (       a=  [,        R.                  R1                  UR*                  R3                  S5      5      (       d  MS  UR5                  UR*                  UR                  [7        U5      [9        UR$                  5      / S.5      nUS   R;                  XœR                     R<                  =(       d    SUR                   35        MÜ     U
UR?                  5        Vs/ s H&  nUS   US	   US
   US   SS [A        US   5      S.PM(     snS.$ s  snf s  snf )u4  FeltÃ¶ltÃ©s elÅ‘tt: a gÃ©p azonos gyÃ¡rtÃ³jÃº+tÃ­pusÃº tÃ¡rsgÃ©pein mÃ¡r meglÃ©vÅ‘, ilyen tÃ­pusÃº dokumentumok (fÃ¡jlonkÃ©nt egyszer) - ezekre a gÃ©p egy kattintÃ¡ssal
hivatkozhat (POST /hivatkozas-fajl), nem kell Ãºjra feltÃ¶lteni. CSAK OLVAS; csak annak ad listÃ¡t, aki a megosztÃ¡st vÃ©gre is hajthatnÃ¡.F)ÚdokumentumokÚvan_marr   r[   )r}  ÚfajlnevÚ	feltoltver,  r,  Ú#r}  r—  r˜  Nr³   )r}  r—  r˜  r,  Úgep_db)r–  r•  )!rd  r+   rÿ   r   r  r  rì   r×   rY  r   rg  r	   rE  rE   Úcountr  ÚlistÚorder_byÚuploaded_atÚdescro   rp  r]   r^   ÚisfileÚlstripÚ
setdefaultrr  r4   r  r–   ÚvaluesrG   )rq   rE  rE   rw   rL   rc  ÚhibarR   r‹   r�  r–  Ú	csoportokÚfÚcss                 rM   Úgep_kozos_dokumentumokr¨  Å  sÊ  € ô ˜G¨Ó6�I€CÞˆyÔ 1Ó1Ø "¨uÑ5Ð5Ø
�(‰(”6—>‘>Ó
"×
)Ñ
)¬&¯.©.×*;Ñ*;¸zÑ*IÌ6Ï>É>×KdÑKdÐhkÑKkÓ
l×
rÑ
rÓ
t€CÞÔ(¨×;Ñ;Ø "¨uÑ5Ð5Ü/°¸ÔFÓGÒF˜!�d‰d�AŠgÑF€FÐGØ�h‰h”v—{‘{Ó#×*Ñ*¬6¯;©;×+AÑ+AÀSÇVÁVÑ+KÌVÏ[É[×MbÑMbÐfoÑMoÓp×vÑvÓxÐ{|Ñ|€GØ€IßØ—‘œ&Ÿ+™+Ó&×-Ñ-¬f¯k©k×.DÑ.D×.HÑ.HÌÈfËÓ.VÔX^×XcÑXc×XmÑXmÐqzÑXzÓ{÷  Eñ  EÜ—‘×'Ñ'×,Ñ,Ó.´·±·±×0CÑ0CÓ0EóGßGJÁsÃuòMˆAà—;—;¤b§g¡g§n¡n°Q·[±[×5GÑ5GÈÓ5L×&MÑ&MÙØ×%Ñ% a§k¡k¸q¿t¹tÔP^Ð_`ÓPaÔpyÐz{÷  {Hñ  {Hó  qIØ=?ñ4Aó BˆBàˆw‰K×Ñ˜v§l¡lÑ3×>Ñ>×TÀAÀaÇlÁlÀ^ÐBTÖUñMð à×"Ñ"Ô$ó1&â$ˆBð �y‘M¨b°©mÈ"È[É/ÐdfÐgnÑdoÐprÐqrÐdsô  @Cð  DFð  GNñ  DOó  @Pô  	QÙ$ñ1&ñ 'ð 'ùò Hùò1&s   ÃM+Ì9-M0z/hivatkozas-fajlc                 óv  • [        XU5      u  pVU(       a  U$ UR                  [        R                  5      R	                  [        R                  R
                  U:H  [        R                  R                  U:H  5      R                  5       nU(       a  [        Xt5      (       d  [        SSS0S9$ [        X5XB5      u  p‰nU(       a  U$ [        X—U5      n
U
(       a  [        SSSU
 S30S9$ UR                  [        R                  5      R	                  [        R                  R                  UR
                  :H  [        R                  R                  UR                  :H  5      R                  5       (       a  [        SSS	0S9$  [        X…5      u  p¼U(       aS  [#        X4SSSUR$                   S['        U5       SUR
                   SUR(                  =(       d    S 3U	R
                  S9  [+        X8X—U5        [-        X;U5      (       d  [        SSS0S9$ [        SSS0S9$ ! [          a    [        S
SS0S9s $ f = f)uŸ   A gÃ©p egy MEGLÃ‰VÅ� (azonos gyÃ¡rtÃ³jÃº+tÃ­pusÃº gÃ©p) HasznÃ¡lati utasÃ­tÃ¡s / GÃ©pkÃ¶nyv / Adatlap dokumentumÃ¡ra hivatkozik - fizikai feltÃ¶ltÃ©s nÃ©lkÃ¼l.rG  rH  õ)   Hiba tÃ¶rtÃ©nt vagy nincs jogosultsÃ¡god!rI  r  u1   Erre a gÃ©pre nem hasznÃ¡lhatÃ³ ez a dokumentum (z)!i™  u.   Ez a gÃ©p mÃ¡r hivatkozik erre a dokumentumra!rP  õ1   A dokumentum fÃ¡jlja nem talÃ¡lhatÃ³ a szerveren!Nõ   DOKUMENTUM MEGOSZTÃ�Srˆ   rv  u/    kÃ¶zÃ¶s dokumentummÃ¡ vÃ¡lt; hivatkozik rÃ¡: #rw  rx  éô  õ7   Hiba tÃ¶rtÃ©nt a mentÃ©s kÃ¶zben, semmi nem vÃ¡ltozott!rV  u'   A dokumentum hozzÃ¡kapcsolva a gÃ©phez.)rd  rÿ   r   r  r  rì   r×   rY  r   r   r�  rm  r	   rE  rp  r.   ÚFileNotFoundErrorr2   rE   rr  r–   r|  r‹  )rq   rE  r}  rw   rL   rc  r¤  rj  r{  ri  Úokry  Úmasolats                rM   Úhivatkozas_fajlr²  å  s  € ô ˜G¨Ó6�I€CÞØˆØ
�(‰(”6—>‘>Ó
"×
)Ñ
)¬&¯.©.×*;Ñ*;¸zÑ*IÌ6Ï>É>×KdÑKdÐhkÑKkÓ
l×
rÑ
rÓ
t€CÞÔ(¨×;Ñ;Ü¨°iÐAlÐ5mÑnÐnÜ,¨R°lÓLÑ€F˜ÞØˆÜ	˜¨,Ó	7€BÞ	Ü¨°iÐCtÐuwÐtxÐxzÐA{Ð5|Ñ}Ð}Ø	‡x�x”—‘Ó×#Ñ#¤F§K¡K×$:Ñ$:¸c¿f¹fÑ$DÄfÇkÁk×F[ÑF[Ð_e×_oÑ_oÑFoÓp×vÑv×xÑxÜ¨°iÐAqÐ5rÑsÐsðwÜ% fÓ2‰ˆö Üˆr Ð'>ÀSØ×%Ñ%Ð& b¬¸Ó)?Ð(@Ð@oÐps×pvÑpvÐowÐwxÐy|÷  zHñ  zH÷  zOð  LOð  yPð  QØ$Ÿ-™-ò	)ô �r :°LÔAÜ˜ 7×+Ñ+Ü¨°iÐAzÐ5{Ñ|Ð|Ü C°)Ð=fÐ1gÑhÐhøô ó wÜ¨°iÐAtÐ5uÑvÒvðwús   ÆH ÈH8È7H8z/kozos-dokumentum-alkalmazÚmachine_idsc                 ó4  • [        XU5      u  pVU(       a  U$ [        X5XA5      u  pxnU(       a  U$ / / p©[        R                  U5       GHp  nUR	                  [
        R                  5      R                  [
        R                  R                  U:H  [
        R                  R                  U:H  5      R                  5       nU(       d  U
R                  USS.5        M”  [        XŒU5      nU(       d›  UR	                  [
        R                  5      R                  [
        R                  R                  UR                  :H  [
        R                  R                  UR                  :H  5      R!                  5       S:”  a  SUR                   S3nU(       a  U
R                  X½S.5        GM_  U	R                  U5        GMs     U	(       d  [#        SSU
S.S9$  [%        Xu5      u  pïU	 H  n[)        X7XŒU5        M     [+        X4SSSUR                   S[-        U5       S[/        U	5       S3SR1                  S U	 5       5      -   UR                  S9  [3        X>U5      (       d  [#        SS
S0S9$ [#        S[/        U	5      U
S.S9$ ! [&         a    [#        S	S
S0S9s $ f = f)u  Egy (frissen feltÃ¶ltÃ¶tt) HasznÃ¡lati utasÃ­tÃ¡s / GÃ©pkÃ¶nyv / Adatlap hivatkozÃ¡sÃ¡nak lÃ©trehozÃ¡sa a KIJELÃ–LT, azonos gyÃ¡rtÃ³jÃº+tÃ­pusÃº gÃ©peknek.
Akinek mÃ¡r van ilyen TÃ�PUSÃš dokumentuma, azt nem Ã­rja felÃ¼l (kihagyja Ã©s jelzi). Az egÃ©sz egy tranzakciÃ³.u   a gÃ©p nem talÃ¡lhatÃ³)rì   r°  r   u%   mÃ¡r van ilyen tÃ­pusÃº dokumentuma (r•   rV  )Ú
alkalmazvaÚkihagyvarI  rP  rH  r«  Nr¬  rˆ   rv  z megosztva u
    gÃ©ppel: rá   c              3   ó@   #   • U  H  nS UR                    3v •  M     g7f)r™  Nrë   )rã   r‹   s     rM   rå   Ú,kozos_dokumentum_alkalmaz.<locals>.<genexpr>4  s3   é € ð  rTò  GSð  BCÐtuÐvw×vzÑvzÐu{Õr|ò  GSùs   ‚rx  r­  r®  )rd  r�  ÚdictÚfromkeysrÿ   r   r  r  rì   r×   rY  r  rm  r	   rE  rE   r›  r   r.   r¯  r|  r2   rr  rG   rè   r‹  )rq   r}  r³  rw   rL   rc  r¤  r{  ri  Úalkalmazhator¶  Úmidrj  r°  ry  r±  s                   rM   Úkozos_dokumentum_alkalmazr½    sf  € ô ˜G¨Ó6�I€CÞØˆÜ,¨R°lÓLÑ€F˜ÞØˆà �(Ü�}‰}˜[×)ˆØ�h‰h”v—~‘~Ó&×-Ñ-¬f¯n©n×.?Ñ.?À3Ñ.FÌÏÉ×HaÑHaÐehÑHhÓi×oÑoÓqˆÞØ�O‰O 3Ð.FÑGÔHÙÜ˜Z¨lÓ;ˆÞ�b—h‘hœvŸ{™{Ó+×2Ñ2´6·;±;×3IÑ3IÈSÏVÉVÑ3SÔU[×U`ÑU`×UjÑUjÐnt×n~Ñn~ÑU~Ó÷  Fñ  Fó  Hð  KLó  LØ8¸×9IÑ9IÐ8JÈ!ÐLˆBÞØ�O‰O 3Ñ1×2à×Ñ ×$ñ *ö Ü¨ÀAÐS[Ñ5\Ñ]Ð]ðwÜ% fÓ2‰ˆó ˆÜ˜2 z¸ÖEñ ä
ˆ2˜TÐ#:ÀØ×!Ñ!Ð" "¤^°FÓ%;Ð$<¸KÌÈLÓHYÐGZÐZdÐeÐhl×hqÑhqñ  rTñ  GSó  rTó  iTñ  TØ —m‘mò%ô ˜ 7×+Ñ+Ü¨°iÐAzÐ5{Ñ|Ð|Ü CÄÀLÓ@QÐ_gÑ1hÑiÐiøô ó wÜ¨°iÐAtÐ5uÑvÒvðwús   ÇI> É>JÊJz*/uploads/{company_id:int}/kozos/{filename}r×   rB  c                 óê  ^• [        U 5       [        U5       3nUR                  [        R                  5      R                  [        R                  [        R                  R                  [        R                  R                  :H  5      R                  [        R                  R                  U:H  [        R                  R                  U :H  5      R                  5       n[        U4S jU 5       5      (       d  [        [        R                   SS9e["        R$                  R'                  UR)                  S5      5      (       d  [        [        R*                  SS9e[-        UR)                  S5      5      $ )u6  A kÃ¶zÃ¶s mappÃ¡ban lÃ©vÅ‘ (megosztott) dokumentum kiszolgÃ¡lÃ¡sa. A gÃ©p-alapÃº ellenÅ‘rzÃ©s (secure_file_server) ide nem alkalmazhatÃ³, mert a fÃ¡jl nem egy gÃ©p
mappÃ¡jÃ¡ban van: elÃ©rhetÅ‘, ha a felhasznÃ¡lÃ³ LEGALÃ�BB EGY olyan gÃ©pet lÃ¡that (is_machine_allowed), amelynek van ilyen ÃºtvonalÃº File-sora.c              3   óP   >#   • U  H  n[        UR                  T5      v •  M     g 7fr¤   )r   r€  )rã   ÚsrL   s     €rM   rå   Ú(kozos_fajl_kiszolgalo.<locals>.<genexpr>H  s    øé € ÐJÂE¸qÔ! !§)¡)¨\×:Ð:ÂEùs   ƒ#&õ6   Nincs jogosultsÃ¡god a kÃ©rt dokumentum elÃ©rÃ©sÃ©hez!©rJ  Údetailr[   õ-   A keresett fÃ¡jl nem talÃ¡lhatÃ³ a szerveren.)r,   r   rÿ   r   r	   rè   r  rE  rì   r  rp  r×   ro   Úanyr   r   ÚHTTP_403_FORBIDDENr]   r^   r   r¡  ÚHTTP_404_NOT_FOUNDr   )r×   rB  rw   rL   ÚutvonalÚsoroks      `  rM   Úkozos_fajl_kiszolgalorË  ;  s  ø€ ô ˜jÓ)Ð*Ô+<¸XÓ+FÐ*GÐH€GØ�H‰H”V—[‘[Ó!×&Ñ&¤v§~¡~´v·{±{×7MÑ7MÔQW×Q_ÑQ_×QbÑQbÑ7bÓc×jÑjÜ�‰×Ñ Ñ(¬&¯.©.×*CÑ*CÀzÑ*Qóç	�cƒeð 
ô ÔJÁEÓJ×JÑJÜ¬×(AÑ(Að  KCñ  Dð  	DÜ�7‰7�>‰>˜'Ÿ.™.¨Ó-×.Ñ.Ü¬×(AÑ(AÐJyÑzÐzÜ˜Ÿ™ sÓ+Ó,Ð,rO   z/gep-fajlok/{machine_id}c                 ó´  • [        X05      nUR                  [        R                  5      R	                  [        R                  R
                  U:H  [        R                  R                  U:H  5      R                  5       nU(       a  [        XS5      (       d  / $ UR                  [        R                  5      R	                  [        R                  R                  U:H  5      R                  [        R                  R                  R                  5       [        R                  R
                  R                  5       5      R                  5       n/ nU H…  nUR                  S:X  a  UR                   ["        ;  a  M)  UR%                  UR
                  UR&                  UR                   [)        UR                  5      [)        UR                  S5      S.5        M‡     U$ )NrM  r�   )rì   rp  rE   rž  Únap)r   rÿ   r   r  r  rì   r×   rY  r   r	   rE  r�  rž  rŸ  ro   rI   rE   ÚFELHASZNALO_LATHATO_FAJLTIPUSOKr  rp  r4   )	rq   rE  rw   rL   rÙ   rR   ÚfilesÚeredmenyr¦  s	            rM   Ú
gep_fajlokrÑ  O  sT  € ô 0°ÓFÐØ
�(‰(”6—>‘>Ó
"×
)Ñ
)Ü�‰×Ñ˜ZÑ'Ü�‰×!Ñ!Ð%7Ñ7ó÷ �eƒgð ö
 Ô(¨×;Ñ;Øˆ	ð �H‰H”V—[‘[Ó!×(Ñ(¬¯©×)?Ñ)?À:Ñ)MÓN×WÑWÜ�‰×Ñ×$Ñ$Ó&¬¯©¯©×(;Ñ(;Ó(=óç	�cƒeð 
ð €HÛˆØ×Ñ Ó/Ø�{‰{Ô"AÓAÙà�‰Ø—$‘$ØŸ™ØŸ™Ü$ Q§]¡]Ó3Ü˜QŸ]™]¨JÓ7ñ
ö 	ñ ð €OrO   z/upload-fileÚfalse)ÚdefaultÚupdate_dateÚ	minositesru  Úfilec
                 óì
  ^^• [        TR                  5      (       d  [        SSS0S9$ [        X�5      n
[	        X¨5      (       d  [        SSS0S9$ U	R
                  (       a  [        SSS0S9$ U	R                  S;   a  [        U	S	S
5      (       d  [        SSS0S9$ UR                  [        R                  5      R                  [        R                  R                  U:H  [        R                  R                  U
:H  5      R                  5       nU(       a  [        X¹5      (       d  [        SSS0S9$ U=(       d    SR!                  5       n[#        X“5      nU(       a  [        SU;   a  SOSSU0S9$ U[$        :X  a&  ['        TR                  5      (       d  [        SSS0S9$ US:H  =(       a	    U[(        ;   n[+        U5      =(       a	    U[,        ;   nU(       a  U[.        ;  a  [        SSS0S9$ U(       d  U(       a°  UR                  [        R0                  5      R                  [        R0                  R                  U
:H  [        R0                  R2                  S:H  [        R0                  R4                  S:H  5      R                  5       S Ln[7        X¹X?5      nU(       a  [        SSU0S9$ SU
 SU 3n[8        R:                  " USS9  [=        TR                  5      n['        TR                  5      (       a\  [?        TR@                  RC                  5       5      mTc  [        SSS0S9$ URE                  SS5      S   S-   n[G        UUU4S j5      nOnTR@                  RC                  S5      nTR@                  RI                  S5        [K        TR                  U5      (       d  [        SSS0S9$ [G        UUU4S  j5      n[        RL                  " USU-   UU(       a%  UR!                  5       (       a  UR!                  5       OS S!9nURO                  U5        S"U 3n[P        RR                  " 5       nU(       a°  US#:X  a  UUl*        URV                  Ul,        US$-  nOŒUS%:X  a  UUl-        URV                  Ul.        US&-  nOhUS':X  a  UUl/        US(-  nOUUS):X  a%  UUl/        [a        US*5      (       a  S
Ul1        US+-  nO*US,:X  a$  UUl2        [a        US*5      (       a  S
Ul1        US--  n[        Rf                  " UU	R                  S.S/US09nURO                  U5        U(       a  [i        XµS1U S23X˜U5        URk                  5         SS30nU[l        ;   a  [o        X‹UU	5      nU(       a  UUS4'   [        S5US9$ )6Nr  rH  ub   BiztonsÃ¡gi hiba: Nem engedÃ©lyezett fÃ¡jlformÃ¡tum! Csak kÃ©p, PDF, DOCX Ã©s XLSX tÃ¶lthetÅ‘ fel.rI  rG  u=   Ez a cÃ©g inaktÃ­v stÃ¡tuszÃº, dokumentum nem tÃ¶lthetÅ‘ fel!rO  rL  ra  Frb  rª  rp   u   szerepkÃ¶rÃ¶du8   Az adattÃ¡bla-fÃ©nykÃ©p csak kÃ©p (jpg, png, gif) lehet!ÚtrueuH   MinÅ‘sÃ­tÃ©s csak vizsgÃ¡lati jegyzÅ‘kÃ¶nyv feltÃ¶ltÃ©sekor adhatÃ³ meg!ÚRendeletSzigoritasKikapcsolvaÚTrueúuploads/r[   T)Úexist_oku)   A feltÃ¶ltÃ¶tt fÃ¡jl nem Ã©rvÃ©nyes kÃ©p!Ú.rš   r   z.jpgc                 ó&   >• U R                  T5      $ r¤   )Úwrite)ÚfoÚ	kep_bytess    €rM   rŸ   Úupload_file.<locals>.<lambda>Ë  s   ø€ ÐZ\×ZbÑZbÐclÔZmrO   rZ   u?   A feltÃ¶ltÃ¶tt fÃ¡jl tartalma nem egyezik a kiterjesztÃ©sÃ©vel!c                 óF   >• [         R                  " TR                  U 5      $ r¤   )ÚshutilÚcopyfileobjrÖ  )rà  rÖ  s    €rM   rŸ   râ  Ñ  s   ø€ ÔZ`×ZlÒZlÐmq×mvÑmvÐxzÔZ{rO   rt  u   FeltÃ¶ltÃ¶tt dokumentum: r?   u-    -> Szerkezeti vizsgÃ¡lati dÃ¡tum frissÃ­tve.r@   u%    -> FÅ‘vizsgÃ¡lati dÃ¡tum frissÃ­tve.rA   u4    -> BiztonsÃ¡gi felÃ¼lvizsgÃ¡lati dÃ¡tum frissÃ­tve.rB   Úkornyezet_megvaltozottu/    -> RendkÃ­vÃ¼li vizsgÃ¡lati dÃ¡tum frissÃ­tve.rC   u)    -> Ãœzembe helyezÃ©si dÃ¡tum frissÃ­tve.u   DOKUMENTUM FELTÃ–LTÃ‰Srˆ   rQ  u   FeltÃ¶ltÃ¶tt dokumentum (r•   u#   Sikeres feltÃ¶ltÃ©s Ã©s naplÃ³zÃ¡s!ÚkozosrV  )8r   rB  r   r   r   rX  rI   rW  rÿ   r   r  r  rì   r×   rY  r   r  rN   ÚADATTABLA_FAJLTIPUSr    ÚDATUMOS_FAJLTIPUSOKÚboolr%   ÚVIZSGALATI_JKV_FAJLTIPUSOKÚ
DictionaryÚ	kategoriaÚertekrT   r]   Úmakedirsr   r!   rÖ  ÚreadÚrsplitrn   r'  r   r	   r[  r   ÚtodayÚszerkezeti_vizsgalat_datumr¾   Úszerkezeti_vizsgalat_uzemoraÚfovizsgalat_datumÚfovizsgalat_uzemoraÚbiztonsagi_vizsgalat_datumÚhasattrræ  rÏ   rZ  r#   r\  r+   r“  )rq   rD  rE  rE   rÔ  rÕ  ru  rÖ  rw   rL   rÙ   rR   r¤  Údatum_kerveÚminosites_hatasosrP   Ú
mappa_vegeÚsafe_filenameÚfile_locationÚfejreszr�  Ú
log_uzenetÚmai_napr^  ÚvalaszÚajanlatrá  s          `                  @rM   Úupload_filer  u  sR  ù€ ô ˜TŸ]™]×+Ñ+ÜØØð  !Eð  Fñ
ð 	
ô
 0°ÓFÐäÐ/×4Ñ4ÜØØÐ _Ð`ñ
ð 	
ð
 × × ÜØØÐ oÐpñ
ð 	
ð
 ×ÑÐHÓHÜ�|Ð%?À×GÑGÜØØ"Ð$VÐWñð ð
 �(‰(”6—>‘>Ó
"×
)Ñ
)Ü�‰×Ñ˜ZÑ'Ü�‰×!Ñ!Ð%7Ñ7ó÷ �eƒgð ö
 Ô(¨×;Ñ;ÜØØÐ KÐLñ
ð 	
ð —˜b×'Ñ'Ó)€IÜ˜<Ó3€DÞÜ¨À$Ó/F©ÈCÐZcÐeiÐYjÑkÐkð Ô'Ó'´°d·m±m×0DÑ0DÜ¨°iÐA{Ð5|Ñ}Ð}à &Ñ(×M¨YÔ:MÑ-M€KÜ˜i›×]¨YÔ:]Ñ-]ÐÞ˜YÔ.HÓHÜ¨°ið  BLð  6Mñ  Nð  	NÞÖ'Ø—H‘HœV×.Ñ.Ó/×6Ñ6Ü×Ñ×(Ñ(Ð,>Ñ>Ü×Ñ×'Ñ'Ð+JÑJÜ×Ñ×#Ñ# vÑ-ó
÷ ‰%‹'˜ð	ˆ	ô
 % S¸	ÓMˆÞÜ¨C¸)ÀTÐ9JÑKÐKàÐ.Ð/¨q°°Ð=€JÜ‡K‚K�
 TÒ*ä% d§m¡mÓ4€MäˆT�]‰]×ÑÜ! $§)¡)§.¡.Ó"2Ó3ˆ	ØÑÜ¨C¸)ÐEpÐ9qÑrÐrØ%×,Ñ,¨S°!Ó4°QÑ7¸&Ñ@ˆÜ3°JÀÔOmÓn‰à—)‘)—.‘. Ó#ˆØ�	‰	�‰�qÔÜ4°T·]±]ÀG×LÑLÜ¨C¸)ð  FGð  :Hñ  Ið  IÜ3°JÀÔO{Ó|ˆä�kŠkØØ˜Ñ%ØÞ)3¸
×8HÑ8H×8JÑ8J�:×#Ñ#Ô%ÐPTñ	€Gð ‡F�Fˆ7„Oà,¨Y¨KÐ8€JÜ�jŠj‹l€GæØÐ3Ó3Ø-4ˆCÔ*Ø/2¯{©{ˆCÔ,ØÐIÑI‰JØÐ-Ó-Ø$+ˆCÔ!Ø&)§k¡kˆCÔ#ØÐAÑA‰JØÐGÓGØ-4ˆCÔ*ØÐPÑP‰JØÐ7Ó7Ø-4ˆCÔ*Ü�sÐ4×5Ñ5Ø-2�Ô*ØÐKÑK‰JØÐNÓNØ(/ˆCÔ%Ü�sÐ4×5Ñ5Ø-2�Ô*ØÐEÑEˆJä
�/Š/ØØ—‘Ø+ØØñ€Cð ‡F�Fˆ3„Kö
 Ü/ØÐ7¸	°{À!ÐDÀlÐXhô	
ð ‡I�I„KØÐ>Ð?€FØÔ%Ó%ä  ¨'°<Ó@ˆÞØ%ˆF�7‰OÜ C°Ñ8Ð8rO   z/torol-fajl/{file_id}c                 ó:  • [        X05      nUR                  S;  a  [        SSS0S9$ [        XB5      (       d  [        SSS0S9$ UR                  (       a  [        SSS0S9$ UR                  [        R                  5      R                  [        R                  R                  U:H  5      R                  5       nU(       GaA  UR                  R                  U:X  Ga&  [        UR                  U5      (       a  UR                  OS nU(       d0   [        R                   " UR                  R#                  S5      5        UR'                  [        R(                  " UR*                  UR                  S	UR,                   S
[        R.                  R1                  UR                  =(       d    S5       3U(       a  SOS-   SS95        UR3                  U5        UR5                  5         U(       a  [7        X&/5        [        SSS0S9$ [        SSS0S9$ ! [$         a     NÞf = f)N)r9   r<   rG  rH  u$   Nincs jogod dokumentum tÃ¶rlÃ©sÃ©re!rI  u;   Ez a cÃ©g inaktÃ­v stÃ¡tuszÃº, dokumentum nem tÃ¶rÃ¶lhetÅ‘!rO  r[   u   DOKUMENTUM TÃ–RLÃ‰Srv  rp   u    (hivatkozÃ¡s)rˆ   rQ  rV  u
   TÃ¶rÃ¶lve!rP  u   Hiba tÃ¶rtÃ©nt.)r   rI   r   r   rX  rÿ   r   r	   r  rì   rY  r€  r×   r-   rp  r]   Úremover¡  rƒ  r[  rZ  rE  rE   r^   ro  Údeleter\  r0   )rq   r}  rw   rL   rÙ   rq  Úkozos_utvonals          rM   Ú
torol_fajlr    sÔ  € ô 0°ÓFÐà×ÑÐ DÓDÜØØÐ FÐGñ
ð 	
ô
 Ð/×4Ñ4ÜØØÐ ]Ð^ñ
ð 	
ð
 × × ÜØØÐ oÐpñ
ð 	
ð
 �8‰8”F—K‘KÓ ×'Ñ'¬¯©¯©¸'Ñ(AÓB×HÑHÓJ€Dç�—‘×'Ñ'Ð+=Ô=ä*9¸$¿.¹.ÐJ\×*]Ñ*]˜ŸšÐcgˆÞðÜ—	’	˜$Ÿ.™.×/Ñ/°Ó4Ô5ð
 	�‰Œv�ŠØ—‘Ø —O‘OØ,ØŸ™Ð(¨¬2¯7©7×+;Ñ+;¸D¿N¹N×<PÈbÓ+QÐ*RÐSÖkxÑWgð  Añ  BØñ
ô 	ð 	�	‰	�$ŒØ
�	‰	ŒÞÜ˜r ?Ô3Ü¨°iÀÐ5NÑOÐOä C°)Ð=NÐ1OÑPÐPøô# ó Ùðús   Ä/H È
HÈHz5/uploads/{company_id:int}/{machine_id:int}/{filename}c                 ó   • UR                  [        R                  5      R                  [        R                  R                  U:H  [        R                  R
                  U :H  5      R                  5       nU(       a  [        XT5      (       d  [        [        R                  SS9e[        U5      nSU  SU SU 3n[        R                  R                  U5      (       d  [        [        R                  SS9e[!        U5      $ )NrÂ  rÃ  rÛ  r[   rÅ  )rÿ   r   r  r  rì   r×   rY  r   r   r   rÇ  r   r]   r^   ÚexistsrÈ  r   )r×   rE  rB  rw   rL   rR   rü  rp  s           rM   Úsecure_file_serverr  G  s×   € ð �(‰(”6—>‘>Ó
"×
)Ñ
)Ü�‰×Ñ˜ZÑ'Ü�‰×!Ñ! ZÑ/ó÷ �eƒgð ö
 Ô(¨×;Ñ;ÜÜ×1Ñ1ØKñ
ð 	
ô
 & hÓ/€MØ˜:˜, a¨
 |°1°]°OÐD€Iä�7‰7�>‰>˜)×$Ñ$ÜÜ×1Ñ1ØBñ
ð 	
ô
 ˜	Ó"Ð"rO   ÚtolÚigc                 ó  • SnSnU (       a&   [         R                  " U S5      R                  5       nU(       a)   [         R                  " US5      R                  5       nX#4$ X#4$ ! [         a     N?f = f! [         a     X#4$ f = f)uß   OpcionÃ¡lis dÃ¡tum-intervallum feldolgozÃ¡sa a naplÃ³-szÅ±rÅ‘khÃ¶z (Ã©vek mÃºltÃ¡n egyre nagyobb
naplÃ³kban a keresÃ©st segÃ­tendÅ‘). HibÃ¡s vagy Ã¼res bemenetnÃ©l None-t ad - az adott irÃ¡nyban
ilyenkor nincs korlÃ¡tozÃ¡s.Nr�   )r   Ústrptimer   Ú
ValueError)r  r  Ú	tol_datumÚig_datums       rM   Ú_datum_szuro_hatarokr  f  s™   € ð €IØ€HÞ
ð	Ü ×)Ò)¨#¨zÓ:×?Ñ?ÓAˆIö 
ð	Ü×(Ò(¨¨ZÓ8×=Ñ=Ó?ˆHð ÐÐˆ9ÐÐøô ó 	Ùð	ûô
 ó 	ØØÐÐð	ús"   �%A% º%A5 Á%
A2Á1A2Á5
BÂBz/gep-naplo/{machine_id}c           	      ó¾  • [        XP5      nUR                  [        R                  5      R	                  [        R                  R
                  U:H  [        R                  R                  U:H  5      R                  5       nU(       a  [        Xu5      (       d  / $ [        X#5      u  p‰UR                  [        R                  5      R                  [        [        R                  R                  5      5      R	                  [        R                  R                  U:H  5      n
U(       a8  U
R	                  [        R                  R                  [!        U5      S   :¬  5      n
U	(       a8  U
R	                  [        R                  R                  [!        U	5      S   :*  5      n
U
R#                  [        R                  R                  R%                  5       5      R'                  5       n/ nU Ht  nSnUR                  (       a  UR                  R(                  nUR+                  UR,                  UR.                  UR0                  [3        UR                  5      US.5        Mv     U$ )Nr   rš   ÚRendszer)rS  rT  rU  Ú	timestampÚuser)r   rÿ   r   r  r  rì   r×   rY  r   r  rZ  Úoptionsr   r  rE  r  r6   r�  rŸ  ro   Úusernamer  rS  rT  rU  r4   )rq   rE  r  r  rw   rL   rÙ   rR   r  r  rÿ   ÚlogsrÐ  r^  Úuser_nevs                  rM   Ú	gep_naplor  y  s¶  € ô 0°ÓFÐØ
�(‰(”6—>‘>Ó
"×
)Ñ
)Ü�‰×Ñ˜ZÑ'Ü�‰×!Ñ!Ð%7Ñ7ó÷ �eƒgð ö
 Ô(¨×;Ñ;Øˆ	ä.¨sÓ7Ñ€Ià�H‰H”V—_‘_Ó%×-Ñ-¬j¼¿¹×9MÑ9MÓ.NÓO×VÑVÔW]×WfÑWf×WqÑWqÐuÑWó  A€EÞØ—‘œVŸ_™_×6Ñ6Ô:OÐPYÓ:ZÐ[\Ñ:]Ñ]Ó^ˆÞØ—‘œVŸ_™_×6Ñ6Ô:OÐPXÓ:YÐZ[Ñ:\Ñ\Ó]ˆà�>‰>œ&Ÿ/™/×3Ñ3×8Ñ8Ó:Ó;×?Ñ?ÓA€Dà€HÛˆØˆØ�8�8Ø—x‘x×(Ñ(ˆHà�‰ØŸ.™.ØŸ™ØŸ™Ü" 3§=¡=Ó1Øñ
ö 	ñ ð €OrO   z/gep-vizsgalatok/{machine_id}c           	      óÄ  • [        XP5      nUR                  [        R                  5      R	                  [        R                  R
                  U:H  [        R                  R                  U:H  5      R                  5       nU(       a  [        Xu5      (       d  / $ [        X#5      u  p‰UR                  [        R                  5      R                  [        [        R                  R                  5      5      R	                  [        R                  R                  U:H  5      n
U(       a,  U
R	                  [        R                  R                  U:¬  5      n
U	(       a,  U
R	                  [        R                  R                  U	:*  5      n
U
R!                  [        R                  R                  R#                  5       5      R%                  5       n/ nU H�  nSnUR                  (       a  UR                  R&                  nSnUR(                  (       a  UR(                  nUR+                  UR,                  UR                  R/                  S5      UR0                  UUS.5        M‘     U$ )NÚ
Ismeretlenrp   r�   )r±   ÚdatumrÐ  ru  r  )r   rÿ   r   r  r  rì   r×   rY  r   r  Ú
Inspectionr  r   r  rE  r  r�  rŸ  ro   r  ru  r  Úvizsgalat_tipusar�   rÐ  )rq   rE  r  r  rw   rL   rÙ   rR   r  r  rÿ   ÚvizsgalatokrÐ  Úvr  Úmegjegyzes_szovs                   rM   Úgep_vizsgalatokr%  ¦  sÅ  € ô 0°ÓFÐØ
�(‰(”6—>‘>Ó
"×
)Ñ
)Ü�‰×Ñ˜ZÑ'Ü�‰×!Ñ!Ð%7Ñ7ó÷ �eƒgð ö
 Ô(¨×;Ñ;Øˆ	ä.¨sÓ7Ñ€Ià�H‰H”V×&Ñ&Ó'×/Ñ/´
¼6×;LÑ;L×;QÑ;QÓ0RÓS×ZÑZÔ[a×[lÑ[l×[wÑ[wð  |Fñ  \Fó  G€EÞØ—‘œV×.Ñ.×4Ñ4¸	ÑAÓBˆÞØ—‘œV×.Ñ.×4Ñ4¸Ñ@ÓAˆà—.‘.¤×!2Ñ!2×!8Ñ!8×!=Ñ!=Ó!?Ó@×DÑDÓF€Kà€HÛˆØˆØ�6�6Ø—v‘v—‘ˆHàˆØ�<�<ØŸl™lˆOà�‰Ø×'Ñ'Ø—W‘W×%Ñ% jÓ1ØŸ
™
Ø)Øñ
ö 	ñ ð" €OrO   c                 óÎ
  • / nUR                  [        R                  5      R                  [	        [        R                  R
                  5      5      R                  [        R                  R                  U R                  :H  5      R                  5       nU GH;  n[        [        USS5      5      nU(       a"  UR                  5       UR                  :X  a  USpvOw[        R                  " UR                  [        R                   R#                  5       5      nUR                  R%                  S5      nU(       a  USUR%                  S5       S3-  nUR'                  UUSUR(                  UR*                  UR,                  (       a  SUR,                   3OS	-   UR
                  (       a  UR
                  R.                  OS
UR0                  S.5        GM>     SnUR                  [        R2                  5      R                  [        R2                  R                  U R                  :H  [        R2                  R4                  R7                  U5      5      R                  5       n	U	 H^  n
UR'                  [        U
R8                  5      SU
R4                  =(       d    SU
R,                  =(       d    SSU
R:                  S.5        M`     UR                  [        R<                  5      R                  [	        [        R<                  R
                  5      5      R                  [        R<                  R                  U R                  :H  5      R                  5       nU H¥  nUR'                  [        UR>                  5      SUR@                  URB                  (       a+  URB                  S:w  a  URB                   SURD                   3OURD                  UR
                  (       a  UR
                  R.                  OSSS.5        M§     UR                  [        RF                  5      R                  [        RF                  R                  U R                  :H  5      R                  5       nU Hì  nUR'                  [        URH                  5      SSURJ                   S3URL                  =(       d    SURN                  =(       d    S
URP                  S.5        URR                  S:X  d  M~  URT                  (       d  M‘  UR'                  [        URT                  5      SSURV                  =(       d    SURX                  URZ                  =(       d    S
S.5        Mî     UR]                  S SS9  U$ )uË  
EgyesÃ­tett, idÅ‘rendbe rendezett idÅ‘vonal: hivatalos vizsgÃ¡latok, napi ellenÅ‘rzÃ©sek /
adminisztrÃ¡ciÃ³s mÃ³dosÃ­tÃ¡sok (AuditLog) Ã©s hibajegyek/javÃ­tÃ¡sok (MaintenanceTicket)
egyetlen listÃ¡ban.

Az opcionÃ¡lis "idopont_szoveg" felÃ¼lÃ­rja a megjelenÃ­tÃ©st (vizsgÃ¡latoknÃ¡l: csak dÃ¡tum,
ill. dÃ¡tum + "kiÃ¡llÃ­tva:" megjegyzÃ©s), a rendezÃ©s/szÅ±rÃ©s ilyenkor is az "idopont"-on megy.

Az "idopont" mindenhol HELYI (Europe/Budapest) naiv datetime: az UTC-ben tÃ¡rolt
idÅ‘bÃ©lyegeket (AuditLog, MaintenanceTicket) itt vÃ¡ltjuk Ã¡t, a vizsgÃ¡latok helyi
naptÃ¡ri dÃ¡tuma (Inspection.datum) pedig eleve helyi - Ã­gy a rendezÃ©s, a tÃ³l-ig
szÅ±rÃ©s Ã©s a megjelenÃ­tÃ©s egysÃ©gesen helyi idÅ‘ben tÃ¶rtÃ©nik.
Ú
letrehozvaNr�   u    (kiÃ¡llÃ­tva: ú%Y-%m-%d %H:%Mr•   u
   VizsgÃ¡latu    â€” rp   r  )ÚidopontÚidopont_szovegr±   ÚcimÚ	reszletekr  Ú
dokumentum)u   VizsgÃ¡lati jegyzÅ‘kÃ¶nyvr=   r>   Ú
Dokumentumu   EgyÃ©b dokumentumrˆ   ©r)  r±   r+  r,  r  r-  õ   NaplÃ³u    â†’ r  ÚHibajegyzHibajegy nyitva (u   LezÃ¡rvau!   Hibajegy lezÃ¡rva / KarbantartÃ¡s)r)  r±   r+  r,  r-  r  c                 ó   • U S   $ )Nr)  r©   )rŠ  s    rM   rŸ   Ú(build_gep_teljes_naplo.<locals>.<lambda>8  s   €   9¢rO   T)ÚkeyÚreverse)/rÿ   r   r   r  r   r  r  rE  rì   ro   r5   rW  r   r  r   Úcombiner!  Útimer�   r  r!  rÐ  ru  r  Újegyzokonyv_pdf_pathr	   rE   Únotin_rž  rp  rZ  r  rS  rT  rU  ÚMaintenanceTicketÚnyitas_datumÚ	sulyossagÚhiba_leirasaÚbejelento_nevÚfenykep_pathrÓ   Úlezaras_datumÚjavitas_indoklasÚmunkalap_pathÚlezaro_userÚsort)rR   rw   Ú	esemenyekr"  r#  Úrogzitver)  r*  Ú#MAR_MASHONNAN_MEGJELENO_FAJLTIPUSOKÚfeltoltott_fajlokr¦  Únaplo_bejegyzesekr^  Ú
hibajegyekrä   s                  rM   Úbuild_gep_teljes_naplorK  ×  sü  € ð €Ià—(‘(œ6×,Ñ,Ó-×5Ñ5´jÄ×ARÑAR×AWÑAWÓ6XÓY×`Ñ`Ü×Ñ×$Ñ$¨¯©Ñ.óç	�cƒeð ô ˆô "¤'¨!¨\¸4Ó"@ÓAˆÞ˜Ÿ™›¨1¯7©7Ó2Ø&.°‘^ä×&Ò& q§w¡w´·±×0AÑ0AÓ0CÓDˆGØŸW™W×-Ñ-¨jÓ9ˆNÞØ O°H×4EÑ4EÐFVÓ4WÐ3XÐXYÐ"ZÑZ�Ø×ÑØØ,Ø!Ø×%Ñ%ØŸ™ÀÇÇ¨¨q¯|©|¨nÑ'=ÐSUÑVØ'(§v§v�A—F‘F—O’O°<Ø×0Ñ0ñ
÷ 	ñ ð< +zÐ'ØŸ™¤§¡Ó-×4Ñ4Ü�‰×Ñ #§&¡&Ñ(Ü�‰×Ñ×$Ñ$Ð%HÓIó÷ 
�cƒeð ó ˆØ×ÑÜ% a§m¡mÓ4Ø!Ø—;‘;×5Ð"5ØŸ™×,¨ØØŸ+™+ñ
ö 	ñ ð Ÿ™¤§¡Ó1×9Ñ9¼*ÄVÇ_Á_×EYÑEYÓ:ZÓ[×bÑbÜ�‰×"Ñ" c§f¡fÑ,óç	�cƒeð ó !ˆØ×ÑÜ% c§m¡mÓ4ØØ—>‘>ØCFÇ=Ç=ÐUX×UbÑUbÐfiÓUi˜CŸM™M˜?¨%°·±¨Ñ?Ðor×o|Ño|Ø),¯¯�C—H‘H×%Ò%°zØñ
ö 	ñ !ð —‘œ&×2Ñ2Ó3×:Ñ:¼6×;SÑ;S×;^Ñ;^Ðbe×bhÑbhÑ;hÓi×mÑmÓo€JÛˆØ×ÑÜ% a§n¡nÓ5ØØ& q§{¡{ m°1Ð5ØŸ™×.¨3Ø—O‘O×3 |ØŸ.™.ñ
ô 	ð �9‰9˜
Õ" q§§¡Ø×ÑÜ)¨!¯/©/Ó:Ø#Ø:Ø×/Ñ/×6°3ØŸo™oØŸ™×5¨ñö ñ ð& ‡N�NÑ-°t€NÑ<ØÐrO   z/gep-teljes-naplo/{machine_id}c           
      óè  • [        XP5      nUR                  [        R                  5      R	                  [        R                  R
                  U:H  [        R                  R                  U:H  5      R                  5       nU(       a  [        Xu5      (       d  / $ [        X#5      u  p‰[        Xt5      n
U(       a*  U
 Vs/ s H  o»S   R                  5       U:¼  d  M  UPM     n
nU	(       a*  U
 Vs/ s H  o»S   R                  5       U	::  d  M  UPM     n
nU
 Vs/ s HE  nUR                  S5      =(       d    US   R                  S5      US   US   US   US   US   S	.PMG     sn$ s  snf s  snf s  snf )
Nr)  r*  r(  r±   r+  r,  r  r-  r/  )r   rÿ   r   r  r  rì   r×   rY  r   r  rK  r   r   r�   )rq   rE  r  r  rw   rL   rÙ   rR   r  r  rE  rŠ  s               rM   Úgep_teljes_naplorM  <  sV  € ô 0°ÓFÐØ
�(‰(”6—>‘>Ó
"×
)Ñ
)Ü�‰×Ñ˜ZÑ'Ü�‰×!Ñ!Ð%7Ñ7ó÷ �eƒgð ö
 Ô(¨×;Ñ;Øˆ	ä.¨sÓ7Ñ€Iä& sÓ/€IÞÙ )ÓN¢	˜1¨y©\×->Ñ->Ó-@ÀIÑ-M—Q¡	ˆ	ÐNÞÙ )ÓM¢	˜1¨y©\×->Ñ->Ó-@ÀHÑ-L—Q¡	ˆ	ÐMñ ó
ò ˆAð —u‘uÐ-Ó.×Y°!°I±,×2GÑ2GÐHXÓ2YØ�w‘ZØ�U‘8Ø˜;™Ø�f‘IØ˜L™/ô	
ñ ñ
ð 
ùò	 OùâMùò
s   Â;E%ÃE%Ã,E*Ä
E*ÄAE/z(/gep-teljes-naplo-nyomtatas/{machine_id})Úresponse_classÚegyszeruÚmodc                 ó®  • [        Xp5      nUR                  [        R                  5      R	                  [        R                  R
                  U:H  [        R                  R                  U:H  5      R                  5       n	U	(       a  [        X—5      (       d
  [        SSS9$ US:H  n
US:H  n[        XE5      u  pÍ[        X–5      nU(       a*  U Vs/ s H  oÿS   R                  5       U:¼  d  M  UPM     nnU(       a*  U Vs/ s H  oÿS   R                  5       U::  d  M  UPM     nn/ nU H±  nSnUS   S	:X  aL  S
US   =(       d    S;   a:  US   R                  S
5      S   R                  S5      S   R                  5       S-   nUR                  UR!                  S5      =(       d    US   R#                  S5      US   US   US   U(       a  US   OSUS.5        M³     [$        R&                  " U SU	UU
U[        R(                  " 5       R#                  S5      U(       a  UR#                  S5      OS U(       a  UR#                  S5      OS S.S9$ s  snf s  snf )Nuf   <h1 style='text-align:center; margin-top:50px;'>Nincs jogosultsÃ¡god vagy a gÃ©p nem talÃ¡lhatÃ³!</h1>rP  )rJ  ÚbovitettrØ  r)  rˆ   r±   r0  zh |r,  rp   r   Ú:éÿÿÿÿz hr*  r(  r+  r  )r)  r±   r+  r,  r  r¾   znaplo-nyomtatas.htmlr�   )rR   rÊ  rR  Únev_lathatoÚ	nyomtatvaÚ	szuro_tolÚszuro_ig)rq   ÚnameÚcontext)r   rÿ   r   r  r  rì   r×   rY  r   r   r  rK  r   r
  r  r  r   r�   r3   ÚTemplateResponserò  )rq   rE  rP  rV   r  r  rw   rL   rÙ   rR   rR  rU  r  r  rE  rŠ  rÊ  Úuzemora_szovs                     rM   Úgep_teljes_naplo_nyomtatasr]  c  s2  € ô 0°ÓFÐØ
�(‰(”6—>‘>Ó
"×
)Ñ
)Ü�‰×Ñ˜ZÑ'Ü�‰×!Ñ!Ð%7Ñ7ó÷ �eƒgð ö
 Ô(¨×;Ñ;Üð  Eð  SVñ  Wð  	Wà�zÑ!€HØ˜&‘=€Kä.¨sÓ7Ñ€Iä& sÓ/€IÞÙ )ÓN¢	˜1¨y©\×->Ñ->Ó-@ÀIÑ-M—Q¡	ˆ	ÐNÞÙ )ÓM¢	˜1¨y©\×->Ñ->Ó-@ÀHÑ-L—Q¡	ˆ	ÐMð €EÛˆØˆØˆW‰:˜Ó! e°°+±×0DÀ"Ó&EØ˜[™>×/Ñ/°Ó6°qÑ9×?Ñ?ÀÓDÀRÑH×NÑNÓPÐSWÑWˆLØ�‰Ø—u‘uÐ-Ó.×Y°!°I±,×2GÑ2GÐHXÓ2YØ�w‘ZØ�U‘8Ø˜;™Þ!,�A�f’I°#Ø#ñ
ö 	ñ	 ô ×%Ò%ØØ#àØØ Ø&ÜŸš›×.Ñ.¨zÓ:Þ;D˜×+Ñ+¨JÔ7È$Þ9A˜×)Ñ)¨*Ô5Àtñ
ñð ùò' OùâMs   ÃIÃ+IÃ>IÄI)ur$  r]   rä  Úurllib.parser(  ra   r   r   Úfastapir   r   r   r   r	   r
   r   r   r   Úfastapi.responsesr   r   r   r   Ú
sqlalchemyr   Úsqlalchemy.ormr   r   r   Úsecurityr   Údatabaser   r   r   r   r   r   r   r   r   r   Úimage_utilsr    r!   Ú	msz_logicr"   r#   r$   r%   Úrouters.machinesr&   r'   r(   Úberles_utilsr)   r*   Úkozos_dokumentum_utilsr+   r,   r-   r.   r/   r0   r1   Únaplo_utilsr2   Útemplates_envr3   r4   r5   r6   ÚrouterrJ   rè  rK   rÎ  rë  ÚUZEMBEHELYEZESI_FAJLTIPUSré  rH   r  rN   rê  rT   rn   r   ÚUserrC  Úpostr  Úfloatr_  rd  rœ  rg  rm  rr  r|  r�  r‹  r“  r¨  r²  r½  rË  rÑ  r  r  r  r  r  r  r%  rK  rM  r]  r©   rO   rM   Ú<module>rq     sh  ðÛ 	Û 	Û Û Û ß #ç o× oÕ oß YÓ YÝ ß .ã Ý )Ý ÷÷ õ ÷
 -÷ó ÷ PÑ Oß >÷÷ ñ õ ß UÓ Uá	¡©°zÓ)BÓ!CÐ DÑ	E€ð  vÐ à.Ð ØÐ!4°lÐCÐ ð $/Ð0CÀ\ÐSlð  oDð  F]ð  #^Ð ðÐ ð QÐ Ø0Ð4MÐ3OÑOÐ ØÐ ð¨Sô ðm¸ð mÈô mð2U sð U°ô Uð$ ‡�ˆOÓð ØØØØÙ˜&“/Ù 'Ð(8Ó 9ñpØðpà
ðpð ðpð ð	pð
 ðpð ðpð 	ðpð —+‘+ôpó ðpðf ‡�ÐÓñ ˜3“iÙ˜#“YÙ˜&“/Ù 'Ð(8Ó 9ñ<RØð<Rà%ð<Rð ð<Rð ð	<Rð
 	ð<Rð —+‘+ô<Ró ð<RðF˜ð  gô ðP˜ð P¸ô Pò
ð2˜Cô 2ð˜7ô ð$�gð $ Cð $Àô $ð
�gô 
ð�wô ð( ‡�Ð2Ó3ð Ù˜&“/Ù 'Ð(8Ó 9ñ'Øð'àð'ð ð'ð 	ð	'ð
 —+‘+ô'ó 4ð'ð> ‡�ÐÓ ñ ˜3“iÙ˜“9Ù˜&“/Ù 'Ð(8Ó 9ñ#iØð#iàð#ið ð#ið 	ð	#ið
 —+‘+ô#ió !ð#iðL ‡�Ð)Ó*ñ ˜“9Ù! #›YÙ˜&“/Ù 'Ð(8Ó 9ñ+jØð+jàð+jð �c‘ð+jð 	ð	+jð
 —+‘+ô+jó +ð+jð\ ‡�Ð8Ó9ñ ˜&“/Ù 'Ð(8Ó 9ñ	-Øð-àð-ð 	ð-ð —+‘+ô	-ó :ð-ð& ‡�Ð&Ó'ñ ˜&“/Ù 'Ð(8Ó 9ñ	"Øð"àð"ð 	ð"ð —+‘+ô	"ó (ð"ðJ ‡�ˆ^Óñ ˜3“iÙ˜#“YÙ GÑ,Ù "Ñ%Ù 2Ñ&Ù˜C“yÙ˜&“/Ù 'Ð(8Ó 9ñW9ØðW9à%ðW9ð ðW9ð ð	W9ð
 ðW9ð ðW9ð ðW9ð ðW9ð 	ðW9ð —+‘+ôW9ó ðW9ðt ‡�Ð&Ó'ñ ˜&“/Ù 'Ð(8Ó 9ñ	3QØð3Qàð3Qð 	ð3Qð —+‘+ô	3Qó (ð3Qðl ‡�ÐCÓDñ
 ˜&“/Ù 'Ð(8Ó 9ñ#Øð#àð#ð ð#ð 	ð	#ð
 —+‘+ô#ó Eð#ð<˜cð  sô ð& ‡�Ð%Ó&ð ØÙ˜&“/Ù 'Ð(8Ó 9ñ)Øð)àð)ð 
ð)ð 	ð	)ð
 	ð)ð —+‘+ô)ó 'ð)ðX ‡�Ð+Ó,ð ØÙ˜&“/Ù 'Ð(8Ó 9ñ-Øð-àð-ð 
ð-ð 	ð	-ð
 	ð-ð —+‘+ô-ó -ð-ð`b Gô bðJ ‡�Ð,Ó-ð ØÙ˜&“/Ù 'Ð(8Ó 9ñ#Øð#àð#ð 
ð#ð 	ð	#ð
 	ð#ð —+‘+ô#ó .ð#ðL ‡�Ð6À|€ÐTð ØØØÙ˜&“/Ù 'Ð(8Ó 9ñ9Øð9àð9ð 
ð9ð 
ð	9ð
 
ð9ð 	ð9ð 	ð9ð —+‘+ô9ó Uñ9rO   