§
    ¦”j‚  ã                   ó  — d dl Z d dlZd dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZ d dlmZ d d	lmZ d d
lmZmZ d dlmZ d dlmZ d dlmZmZ  ej        e¦  «        Zd„ Z 	 	 	 	 	 	 	 	 dd„Z!d„ Z"	 	 	 	 	 	 	 	 	 	 	 	 	 	 dd„Z#dS )é    N)Úescape)Ú
pdfencrypt)ÚSpacer)ÚFrame)ÚPDFSignature)Ú
WaterMarks)ÚpisaContext)ÚDEFAULT_CSS)Ú
cleanFilesÚpisaTempFile)Ú
pisaParser)ÚgetBox)Ú
PmlBaseDocÚPmlPageTemplatec           	      óÜ  — t          |j        ¬¦  «        }|                     d|j        z  ¦  «         |j        D ]5\  }}}}|dk    r(|                     d||t          |¦  «        fz  ¦  «         Œ6|                     d|j        z  ¦  «         |j        D ]5\  }}}}|dk    r(|                     d||t          |¦  «        fz  ¦  «         Œ6t          |                     ¦   «         | d¬	¦  «        S )
N)ÚcapacityzJ<p style='background-color:red;'><strong>%d error(s) occurred:</strong><p>Úerrorz<pre>%s in line %d: %s</pre>z.<p><strong>%d warning(s) occurred:</strong><p>Úwarningz<p>%s in line %d: %s</p>F)Úraise_exception)	r   r   ÚwriteÚerrÚlogÚhtml_escapeÚwarnÚpisaDocumentÚgetvalue)ÚdestÚcÚoutÚmodeÚlineÚmsgÚ_s          úa/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/xhtml2pdf/document.pyÚpisaErrorDocumentr%   #   s  € Ý
 ¤
Ð
+Ñ
+Ô
+€CØ‡I‚IØTØ
Œ%ñ	ñô ð ð  œeð Wð WÑˆˆd�C˜Ø�7Š?ˆ?Ø�IŠIÐ4¸¸dÅKÐPSÑDTÔDTÐ7UÑUÑVÔVÐVøà‡I‚IÐ>ÀÄÑGÑHÔHÐHØœeð Sð SÑˆˆd�C˜Ø�9ÒÐØ�IŠIÐ0°D¸$ÅÈCÑ@PÔ@PÐ3QÑQÑRÔRÐRøå˜Ÿš™œ¨¸eÐDÑDÔDÐDó    Ú Fc	                 ó4  — |st          ||¬¦  «        }||_        |€t          }t          | |||||¦  «         |j        st          dd¦  «        g|_        |j        r|j                             |j        ¦  «         |j        D ]\  }
}||j	        vrd |
_
        Œ|S )N)Údebugé   )r	   ÚpathCallbackr
   r   Ústoryr   Úindexing_storyÚappendÚ
anchorFragÚ
anchorNameÚlink)ÚsrcÚpathÚlink_callbackr)   Údefault_cssÚxhtmlÚencodingÚcontextÚ
xml_outputÚ_kwargsÚfragÚanchors               r$   Ú	pisaStoryr=   5   sÁ   € ð ð -Ý˜d¨%Ð0Ñ0Ô0ˆØ,ˆÔð ÐÝ!ˆõ ˆs�G˜[¨%°¸:ÑFÔFÐFð Œ=ð 'Ý  1™œ˜ˆŒàÔð 5ØŒ×Ò˜WÔ3Ñ4Ô4Ð4ð  Ô*ð ð ‰ˆˆfØ˜Ô+Ð+Ð+ØˆDŒIøØ€Nr&   c                 ó`   — | €d S t          | t          ¦  «        rt          j        | ¦  «        S | S )N)Ú
isinstanceÚstrr   ÚStandardEncryption)Údatas    r$   Úget_encrypt_instancerC   [   s4   € Ø€|Øˆtå�$�ÑÔð 3ÝÔ,¨TÑ2Ô2Ð2à€Kr&   Té � c                 ó°  — t                                d| |||||¦  «         t          |||¬¦  «        }|�|j                             |¦  «         ||_        t          | ||||||||	¬¦	  «	        }t          j        ¦   «         }t          ||j
        |j        d                              ¦   «         |j        d                              ¦   «         d„ |j        d                              ¦   «                              d¦  «        D ¦   «         |j        d	                              ¦   «         d
t          |¦  «        d¬¦	  «	        }d|j        v r|j        d         }|j        d= nHt          d|j
        ¦  «        \  }}}}t!          dt#          ||||dd
d
d
d
¬¦	  «	        g|j
        ¬¦  «        }|                     |gt'          |j                             ¦   «         ¦  «        ¢¦  «         |j        r|                     |j        ¦  «         n|                     |j        ¦  «         t          j        ¦   «         }t1          j        |||¦  «        \  }}|s|}|r-t          j        ¦   «         }t5          j        |||¦  «        }|r|}|€t          j        ¦   «         }||_        |                     ¦   «         }|j                             |¦  «         t?          ¦   «          |r|S |S )NznpisaDocument options:
  src = %r
  dest = %r
  path = %r
  link_callback = %r
  xhtml = %r
  context_meta = %r)r)   r   )r8   r9   ÚauthorÚsubjectc                 ó:   — g | ]}|¯|                      ¦   «         ‘ŒS © )Ústrip)Ú.0Úxs     r$   ú
<listcomp>z pisaDocument.<locals>.<listcomp>Ÿ   s&   € ÐVÐVÐV ÐTUÐV�!—'’'‘)”)ÐVÐVÐVr&   Úkeywordsú,Útitler   r*   )ÚpagesizerF   rG   rN   rP   ÚshowBoundaryÚencryptÚallowSplittingÚbodyz1cm 1cm -1cm -1cm)ÚidÚleftPaddingÚrightPaddingÚbottomPaddingÚ
topPadding)rV   ÚframesrQ   ) r   r)   r	   ÚmetaÚupdater+   r=   ÚioÚBytesIOr   ÚpageSizerJ   ÚsplitrC   ÚtemplateListr   r   r   ÚaddPageTemplatesÚlistÚvaluesÚ
multiBuildr,   Úbuildr   Úprocess_docr   Úsignr   r   r   r   )r2   r   Ú
dest_bytesr3   r4   r)   r5   r6   r7   r9   r   r   Úcontext_metarS   Ú	signaturer:   r8   r   ÚdocrU   rL   ÚyÚwÚhÚoutputÚhas_bgÚ
signoutputÚdo_okrB   s                                r$   r   r   e   s  € õ$ ‡I‚Ið	1àØØØØØñ	ô 	ð 	õ ˜$ e°hÐ?Ñ?Ô?€GàÐØŒ×Ò˜LÑ)Ô)Ð)à(€GÔõ ØØØØØØØØØð
ñ 
ô 
€Gõ Œ*‰,Œ,€Cå
ØØÔ!ØŒ|˜HÔ%×+Ò+Ñ-Ô-Ø”˜YÔ'×-Ò-Ñ/Ô/ØVÐV W¤\°*Ô%=×%CÒ%CÑ%EÔ%E×%KÒ%KÈCÑ%PÔ%PÐVÑVÔVØŒl˜7Ô#×)Ò)Ñ+Ô+ØÝ$ WÑ-Ô-Øð
ñ 
ô 
€Cð �Ô%Ð%Ð%ØÔ# FÔ+ˆØÔ  Ð(Ð(åÐ/°Ô1AÑBÔB‰
ˆˆ1ˆa�ÝØåØØØØØØ !Ø!"Ø"#Ø ð
ñ 
ô 
ðð Ô%ð
ñ 
ô 
ˆð$ ×Ò˜$ÐE¥ gÔ&:×&AÒ&AÑ&CÔ&CÑ!DÔ!DÐEÑFÔFÐFð Ôð !Ø�Š�w”}Ñ%Ô%Ð%Ð%à�	Š	�'”-Ñ Ô Ð õ ŒZ‰\Œ\€FÝÔ+¨G°S¸&ÑAÔA�N€FˆFàð ØˆØð  Ý”Z‘\”\ˆ
ÝÔ! &¨*°iÑ@Ô@ˆØð 	 ØˆFð €|åŒz‰|Œ|ˆØ€G„Là�?Š?ÑÔ€DØ„L×Ò�tÑÔÐÝ�L„L€Làð Øˆà€Nr&   )r'   Nr   NFNNN)NFr'   Nr   NFNNTrD   NNN)$r^   ÚloggingÚhtmlr   r   Úreportlab.libr   Úreportlab.platypus.flowablesr   Úreportlab.platypus.framesr   Úxhtml2pdf.builders.signsr   Úxhtml2pdf.builders.watermarksr   Úxhtml2pdf.contextr	   Úxhtml2pdf.defaultr
   Úxhtml2pdf.filesr   r   Úxhtml2pdf.parserr   Úxhtml2pdf.utilr   Úxhtml2pdf.xhtml2pdf_reportlabr   r   Ú	getLoggerÚ__name__r   r%   r=   rC   r   rI   r&   r$   ú<module>r„      s¯  ðð 
€	€	€	Ø €€€Ø &Ð &Ð &Ð &Ð &Ð &à $Ð $Ð $Ð $Ð $Ð $Ø /Ð /Ð /Ð /Ð /Ð /Ø +Ð +Ð +Ð +Ð +Ð +à 1Ð 1Ð 1Ð 1Ð 1Ð 1Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø )Ð )Ð )Ð )Ð )Ð )Ø )Ð )Ð )Ð )Ð )Ð )Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø !Ð !Ð !Ð !Ð !Ð !Ø EÐ EÐ EÐ EÐ EÐ EÐ EÐ Eà€gÔ˜Ñ!Ô!€ðEð Eð Eð( 
ØØ
ØØ
ØØØð#ð #ð #ð #ðLð ð ð 
ØØ	ØØ
ØØ
ØØØØØØØðð ð ð ð ð r&   