HEX
Server: Apache
System: Linux srv1.prosuiteplus.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: prosuiteplus (1001)
PHP: 8.3.20
Disabled: NONE
Upload Files
File: //usr/lib64/libreoffice/program/pythonscript.pyo
�
Ʌ`c@s4ddlZddlZddlZddlZddlZddlZddlZddlZddlm	Z	ye
Wnek
r�eZ
nXddWd��YZ
dZdZe
je
_ejje�dkr�e
je
_n'ejje�dkre
je
_nejjed	�d
kZeZd�Zd�Zd
�Zd�Zde
fd��YZee��Zejd�ddl m!Z!ddl"m#Z#ddl$m%Z%ddl"m&Z&ddl'm(Z(ddl)m*Z*m+Z+m,Z,m-Z-ddl.m/Z/ddl0m1Z1m2Z2ddl$m3Z3ddl4m5Z5m6Z6ddl m7Z8ddl9m:Z:ddl;m<Z<ddl=m>Z>m?Z?m@Z@mAZAdd lBmCZCdd!lDmEZEmFZFmGZGdd"lHmIZId#ZJd$ZKd%ZLejM�ZNd&eJZOd'ZPd(�ZQd)�ZRd*dXd+��YZSd,dYd-��YZTd.�ZUd/�ZVd0�ZWd1ejXfd2��YZYd3dZd4��YZZd5�Z[d6ejXeCe1e:e<fd7��YZ\d8ejXeCfd9��YZ]d:ejXeCfd;��YZ^d<e5ejXfd=��YZ_d>�Z`d?�Zad@d[dA��YZbdBejXe/fdC��YZcdDejXe,fdE��YZddFejXe+fdG��YZedH�ZfdI�ZgdJ�ZhdK�ZidL�ZjdMejXeCfdN��YZkdOejXe?fdP��YZldQ�ZmdRejXeCe>e3fdS��YZneNjoeneOdTdUeJf�ejdV�dS(\i����N(tRETAINtLogLevelcBseZdZdZdZRS(iii(t__name__t
__module__tNONEtERRORtDEBUG(((s./usr/lib64/libreoffice/program/pythonscript.pyR$stPYSCRIPT_LOG_LEVELtPYSCRIPT_LOG_STDOUTRRt1t0cCs|jtj��S(N(tencodetsystgetfilesystemencoding(tuni((s./usr/lib64/libreoffice/program/pythonscript.pytencfile:scCsDtj�\}}}t|�dt|�dtj|�}|S(Ns: s
(Rtexc_infotstrtunot!_uno_extract_printable_stacktrace(texcTypetexcInstancetexcTracebacktret((s./usr/lib64/libreoffice/program/pythonscript.pytlastException2String=scCs:d}|tjkrd}n|tjkr6d}n|S(Ns NONERR(RRR(tlevelR((s./usr/lib64/libreoffice/program/pythonscript.pytlogLevel2StringCs		cCs�tj}ts�ybtj�jjd�}|jd�}t|�dkrptj	|d�}t
|d�}nWq�dt�dGHq�Xn|S(Ns"com.sun.star.util.PathSubstitutiontuseris/Scripts/python/log.txttas3Exception during creation of pythonscript logfile: s
, delegating log to stdout
(Rtstdoutt
LOG_STDOUTRtgetComponentContexttServiceManagertcreateInstancetgetSubstituteVariableValuetlentfileUrlToSystemPathtopenR(Rt	pathSubsttuserInstallationt
systemPath((s./usr/lib64/libreoffice/program/pythonscript.pytgetLogTargetKs		tLoggercBs>eZd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs
||_dS(N(ttarget(tselfR+((s./usr/lib64/libreoffice/program/pythonscript.pyt__init__ZscCs|j|jkS(N(tuseR(R,((s./usr/lib64/libreoffice/program/pythonscript.pytisDebugLevel]scCs&|j�r"|j|j|�ndS(N(R/tlogR(R,tmsg((s./usr/lib64/libreoffice/program/pythonscript.pytdebug`scCs|j|jkS(N(R.R(R,((s./usr/lib64/libreoffice/program/pythonscript.pytisErrorLeveldscCs&|j�r"|j|j|�ndS(N(R3R0R(R,R1((s./usr/lib64/libreoffice/program/pythonscript.pyterrorgscCsq|j|krmyA|jjtj�dt|�d|d�|jj�Wqmdt�dGHqmXndS(Ns [s] s
s Error during writing to stdout: (R.R+twritettimetasctimeRtflushR(R,RR1((s./usr/lib64/libreoffice/program/pythonscript.pyR0ks	(RRR-R/R2R3R4R0(((s./usr/lib64/libreoffice/program/pythonscript.pyR*Ys					spythonscript loading(tRuntimeException(tIllegalArgumentException(tNoSuchElementException(tXServiceInfo(tIOException(tCommandAbortedExceptiontXCommandEnvironmenttXProgressHandlertCommand(tXInteractionHandler(tXPropertySettProperty(tXNameContainer(tXDocumentHandlertInputSource(t	Exception(tXInvocation(tXActionListener(tXScriptProvidertXScripttXScriptContexttScriptFrameworkErrorException(tXBrowseNode(tSCRIPTt	CONTAINERtROOT(tXModifyListenertPythontXSCRIPTCONTEXTtg_exportedScriptss/org.libreoffice.pyuno.LanguageScriptProviderForicCsUtjd�}x<trM|jdt�\}}||}|tkrPqqW|jS(Nt(RtByteSequencetTruet	readBytestNonet
BLOCK_SIZEtvalue(tinputStreamtcodetreadtout((s./usr/lib64/libreoffice/program/pythonscript.pytreadTextFromStream�s	
cCs&tj�dkr|dS|dSdS(NtWindowss.initrc(tplatformtsystem(R((s./usr/lib64/libreoffice/program/pythonscript.pyt	toIniName�stMyUriHelpercBs>eZd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs�idd6dd6dtd�dd6d	d
6|_|jjd|�|_|jd�rs|d
|_d|_nt|j|�|_||_t	j
d|jd|j�dS(NsFvnd.sun.star.expand:$BRAND_BASE_DIR/$BRAND_SHARE_SUBDIR/Scripts/pythontshares;vnd.sun.star.expand:$UNO_SHARED_PACKAGES_CACHE/uno_packagessshare:uno_packagess%vnd.sun.star.expand:${$BRAND_INI_DIR/t	bootstraps'::UserInstallation}/user/Scripts/pythonRs9vnd.sun.star.expand:$UNO_USER_PACKAGES_CACHE/uno_packagessuser:uno_packagess$com.sun.star.uri.UriReferenceFactorysvnd.sun.star.tdocs/Scripts/pythontdocuments#initialized urihelper with baseUri=s,m_scriptUriLocation=(Rgts_UriMapR tcreateInstanceWithContexttm_uriRefFact
startswitht	m_baseUritm_scriptUriLocationt	expandUriR0R2(R,tctxtlocation((s./usr/lib64/libreoffice/program/pythonscript.pyR-�s


	cCs|jS(N(Rp(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetRootStorageURI�scCs
|j|�S(N(tscriptURI2StorageUri(R,t	scriptURI((s./usr/lib64/libreoffice/program/pythonscript.pyt
getStorageURI�scCs
|j|�S(N(tstorageURI2ScriptUri(R,t
storageURI((s./usr/lib64/libreoffice/program/pythonscript.pytgetScriptURI�scCs�|j|j�sGd|d|jd}tj|�t|��nd|t|j�djdd�dtd	|j}tjd
|d|�|S(Nspythonscript: storage uri 's' not in base uri 't'svnd.sun.star.script:it/t|s
?language=s
&location=sconverting storageURI=s to scriptURI=(	RoRpR0R2R9R#treplacetLANGUAGENAMERq(R,RztmessageR((s./usr/lib64/libreoffice/program/pythonscript.pyRy�s
:cCsZy�|jd}|jj|�}|jj|�}|j�jdd�}|jdd�}|jd�}|dkr�|d|!}||d}n|}|jj|�}	|	s�d	|d
}
tj|
�t|
��n|	j	�sd|d
}
tj|
�t|
��n|jj
||	tt�}|j
�}|j|�s�d|d
|jd
}
tj|
�t|
��n|}
|dkr�|
d|}
ntjd|d|
�|
SWn�tk
r}tjd|d|j�td|j�d��nKtk
rU}tjd|dt|��tdt|�d��nXdS(NR}t%s%25R~t$i����iis$pythonscript: invalid relative uri 'R|s*pythonscript: an absolute uri is invalid 'spythonscript: storage uri 's' not in base uri 'sconverting scriptURI=s to storageURI=s"error during converting scriptURI=s: s#pythonscript:scriptURI2StorageUri: (RpRntparsetgetNameRtfindR0R2R9thasRelativePathtmakeAbsoluteRYRtgetUriReferenceRotUnoExceptionR4tMessaget
getMessageR[RHR(R,RwtsBaseUritxBaseUritxStorageUritsStorageUrit
funcNameStarttsFileUrit	sFuncNametxFileUriR�t
xAbsScriptUrit
sAbsScriptUriRte((s./usr/lib64/libreoffice/program/pythonscript.pyRv�sJ




(RRR-RuRxR{RyRv(((s./usr/lib64/libreoffice/program/pythonscript.pyRh�s					tModuleEntrycBseZd�ZRS(cCs||_||_dS(N(tlastReadtmodule(R,R�R�((s./usr/lib64/libreoffice/program/pythonscript.pyR-
s	(RRR-(((s./usr/lib64/libreoffice/program/pythonscript.pyR�scCs||j|jkp{|j|jkp{|j|jkp{|j|jkp{|j|jkp{|j|jkp{|j|jkS(N(tYeartMonthtDaytHourstMinutestSecondstNanoSeconds(toldDatetnewDate((s./usr/lib64/libreoffice/program/pythonscript.pyt
hasChangedscCs2|jd�r|d}n|jdd�}|S(Ns
s
RW(tendswithR(R_((s./usr/lib64/libreoffice/program/pythonscript.pytensureSourceStates
cCs&|jd�r"tj|d�}tjtjd|�dtjt|�tj	�kr�|t
jkr�tjtjd|d�t
jj|�ntj|d�}tjtjd|�dtjt|�tj	�kr"|t
jkr"tjtjd|d�t
jj|�q"ndS(Nsfile:s/pythonpath.zipschecking for existence of isadding s to sys.paths/pythonpath(
Rot	unohelperR$R0RRtostaccessRtF_OKRtpathtappend(turlR�((s./usr/lib64/libreoffice/program/pythonscript.pytcheckForPythonPathBesideScript!s00t
ScriptContextcBs5eZd�Zd�Zd�Zd�Zd�ZRS(cCs||_||_||_dS(N(Rstdoctinv(R,RsR�R�((s./usr/lib64/libreoffice/program/pythonscript.pyR-1s		cCs |jr|jS|j�j�S(N(R�t
getDesktoptgetCurrentComponent(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetDocument7s	cCs|jjjd|j�S(Nscom.sun.star.frame.Desktop(RsR Rm(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR�<scCs|jS(N(Rs(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR@scCs|jS(N(R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetInvocationContextCs(RRR-R�R�RR�(((s./usr/lib64/libreoffice/program/pythonscript.pyR�0s
				tProviderContextcBskeZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�ZRS(cCsC||_||_||_||_i|_d|_d|_dS(N(tstorageTypetsfat	uriHelpert
scriptContexttmodulesR[trootUrltmapPackageName2Path(R,R�R�R�R�((s./usr/lib64/libreoffice/program/pythonscript.pyR-fs						cCs;|j|jdd�jddd�}|d|jd�!S(NRWiR}i(RR�R�(R,R�trest((s./usr/lib64/libreoffice/program/pythonscript.pytgetTransientPartFromUrlos'cCsQ|j|jdd�jddd�}|jd�d}|||jd|�!S(NRWiR}(RR�R�(R,R�R�tstart((s./usr/lib64/libreoffice/program/pythonscript.pytgetPackageNameFromUrlss'cCsO|jj�}x9|D]1}||djkr|jj|d�PqqWdS(Nii(R�titemstpathstpop(R,R�R�ti((s./usr/lib64/libreoffice/program/pythonscript.pytremovePackageByUrlys

cCs�|j|�}|j|�}tjd|d|d|dd|j�||jkr�|j|}|j|f|_nt|f|�}||j|<dS(NsaddPackageByUrl : s, t(t)s
, rootUrl=(R�R�R0R2R�R�R�tPackage(R,R�tpackageNamet
transientParttpackage((s./usr/lib64/libreoffice/program/pythonscript.pytaddPackageByUrl�s0
cCs7|jj�}x!|D]}||jkrtSqWtS(N(R�tvaluesR�RYtFalse(R,R�R�R�((s./usr/lib64/libreoffice/program/pythonscript.pytisUrlInPackage�s

cCs||_||_dS(N(R�R�(R,R�R�((s./usr/lib64/libreoffice/program/pythonscript.pytsetPackageAttributes�s	cCsp|}|jrSt|j�d}|d|!||jd|�dt|�!}ntjd|d|�|S(NiiR}sgetPersistentUrlFromStorageUrl s -> (R�R#R�R0R2(R,R�Rtpos((s./usr/lib64/libreoffice/program/pythonscript.pytgetPersistentUrlFromStorageUrl�s	1cCs�|}|jrxt|j�d}|||jd|d�!}|j|}|d|!|jd||t|�!}ntjd|d|�|S(NiR}isgetStorageUrlFromPersistentUrl s -> (R�R#R�R�ttransientPathElementR0R2(R,R�RR�R�R�((s./usr/lib64/libreoffice/program/pythonscript.pytgetStorageUrlFromPersistentUrl�s	
,c
Csdt|jj|��}t|d|jd�!�t|�}ytj|�}Wn*tj	�ovtj
dt���nXg}|dkr�|Sg}x�tj
|�D]�}t|tj�r�|j|j�q�t|tj�r�xr|jD]d}y
|j}Wntk
rd}nX|dkr�x$|jjD]}	|j|	j�q7W|Sq�Wq�q�W|S(NiR}s6pythonscript: getFuncsByUrl: exception while parsing: RWRV(RbR�topenFileReadR�trfindR�tastR�R0R/R2RR[titer_child_nodest
isinstancetFunctionDefR�tnametAssignttargetstidtAttributeErrorR]telts(
R,R�tsrcR_tallFuncsRVtnodeR+t
identifierR]((s./usr/lib64/libreoffice/program/pythonscript.pyt
getFuncsByUrl�s6 

cBs�|jj|�}e}|jj|�}|rce|j|�rZejd|d�qce	}n|r�ejd|d�e
|jj|��}e|d|j
d�!�e|�}e|ejd��}|j|jje<d}|jd�r e|eej|��d	�}ne||d	�}||jjfdU||j_||j|<ejd
|de|j��n|jS(Nsfile s has changed, reloadings	opening >t<iR}tooo_script_frameworksfile:texecsmapped s to (R�tgetRYR�tgetDateTimeModifiedR�R�R0R2R�RbR�R�R�R�R�timpt
new_moduleR�R�t__dict__tGLOBAL_SCRIPTCONTEXT_NAMER[RotcompileRRR$t__file__R(R,R�tentrytloadR�R�R_((s./usr/lib64/libreoffice/program/pythonscript.pytgetModuleByUrl�s.	$
%(
RRR-R�R�R�R�R�R�R�R�R�R�(((s./usr/lib64/libreoffice/program/pythonscript.pyR�es												
	.cCs(t}t|tt��r$t}n|S(N(R�R�ttypetisScriptRY(t	candidateR((s./usr/lib64/libreoffice/program/pythonscript.pyR��s	tScriptBrowseNodecBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�ZRS(cCs(||_||_||_||_dS(N(tfileNametfuncNametprovCtxturi(R,R�R�R�R�((s./usr/lib64/libreoffice/program/pythonscript.pyR-s			cCs|jS(N(R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR�scCsdS(N(((R,((s./usr/lib64/libreoffice/program/pythonscript.pyt
getChildNodesscCstS(N(R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyt
hasChildNodesscCstS(N(RP(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetTypescCs�d}y�|dkrG|jjj|jj|jd|j��}n.|dkrutru|jjj	|j�}nt
jd|dt|��Wnt
j
dt���nX|S(NtURIR�tEditables-ScriptBrowseNode.getPropertyValue called for s, returning s(ScriptBrowseNode.getPropertyValue error (R[R�R�R{R�R�R�tENABLE_EDIT_DIALOGR�t
isReadOnlyR0R2RR4R(R,R�R((s./usr/lib64/libreoffice/program/pythonscript.pytgetPropertyValues&#cCs#tjd|dt|��dS(Ns)ScriptBrowseNode.setPropertyValue called t=(R0R2R(R,R�R]((s./usr/lib64/libreoffice/program/pythonscript.pytsetPropertyValue#scCstjd�dS(Ns+ScriptBrowseNode.getPropertySetInfo called (R0R2R[(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetPropertySetInfo%s
cCsdS(N(R[(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetIntrospection)sc	Cs
|dkrd}|jjj�}|jj||�}|jdd�|_t|jjj	|j
��}t|�}|jjd�j
|�|jjd�jd�|jjd�j|�|jjd�jd	�|jjd�j|�|jj�ndS(
NRscom.sun.star.awt.DialogProvidersvnd.sun.star.script:s5ScriptBindingLibrary.MacroEditor?location=applicationtEditorTextFieldt	RunButtontRunt
SaveButtontSave(R�R�RR RmtcreateDialogteditorRbR�R�R�R�t
getControltsetTexttsetActionCommandtaddActionListenertexecuteR[(	R,R�tparamst
outparamindext	outparamstservicenameRstdlgprovR_((s./usr/lib64/libreoffice/program/pythonscript.pytinvoke,s"	
c	Bs�yl|jdkr�|jjd�j�}e|�}ejd�}|jj|j	e
<||j	fdU|j	jed�}|s�|j	j�}nx�|D]}e|�r�|�Pq�q�Wn�|jdkrkej|jjd�j�jej���}|jd}|jjj|j|�|jjj|j�}|j|�|j�|jjj|�nWneje��nXdS(NRR	R�R
s.orig(t
ActionCommandRRtgetTextR�R�R�R�R�R�R�R�tCALLABLE_CONTAINER_NAMER[R�R�RRXRRtgetdefaultencodingR�R�tmovet
openFileWritet
writeBytestclosetkillR0R4R(	R,teventR_tmodR�R�ttoWritetcopyUrlRa((s./usr/lib64/libreoffice/program/pythonscript.pytactionPerformedDs4



cCsdS(N(R[(R,R�R]((s./usr/lib64/libreoffice/program/pythonscript.pytsetValuegscCsdS(N(R[(R,R�((s./usr/lib64/libreoffice/program/pythonscript.pytgetValuejscCstS(N(R�(R,R�((s./usr/lib64/libreoffice/program/pythonscript.pyt	hasMethodmscCstS(N(R�(R,R�((s./usr/lib64/libreoffice/program/pythonscript.pythasPropertyps(RRR-R�R�R�R�RRRRRR(R)R*R+R,(((s./usr/lib64/libreoffice/program/pythonscript.pyR�s											#			tFileBrowseNodecBs5eZd�Zd�Zd�Zd�Zd�ZRS(cCs(||_||_||_d|_dS(N(R�R�R�R[t	funcnames(R,R�R�R�((s./usr/lib64/libreoffice/program/pythonscript.pyR-vs			cCs|jS(N(R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR�|scCs�d}y�|jj|j�|_g}x6|jD]+}|jt|j|j|j|��q1Wt|�}tj	dt
t|��d|j�Wn/t�}tj
d|jd|��nX|S(Ns
returning s ScriptChildNodes on sError while evaluating t:((R�R�R�R.R�R�R�ttupleR0R2RR#RR4(R,RtscriptNodeListR�ttext((s./usr/lib64/libreoffice/program/pythonscript.pyR�s ,	cCs)yt|j��dkSWntSXdS(Ni(R#R�R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��scCstS(N(RQ(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��s(RRR-R�R�R�R�(((s./usr/lib64/libreoffice/program/pythonscript.pyR-us
				t
DirBrowseNodecBs>eZd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs||_||_||_dS(N(R�R�R�(R,R�R�R�((s./usr/lib64/libreoffice/program/pythonscript.pyR-�s		cCs|jS(N(R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��sc	Cssy tjd|j�|jjj|jt�}g}x�|D]�}|jd�r�tjd|�|jt	|j|||j
d�dt|�d!��q?|jjj|�r?|jd�r?tjd|�|jt
|j||j
d�dt|�!|��q?q?Wt|�SWnLtk
rn}t�}tjd	t|�d
|j�tj|�dSXdS(Ns'DirBrowseNode.getChildNodes called for s.pysadding filenode R}iis/pythonpathsadding DirBrowseNode sDirBrowseNode error: s while evaluating ((R0R2R�R�R�tgetFolderContentsRYR�R�R-R�R#tisFolderR3R0RHRR4R(R,tcontentstbrowseNodeListR�R�R2((s./usr/lib64/libreoffice/program/pythonscript.pyR��s$
7%=	"
cCstS(N(RY(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��scCstS(N(RQ(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��scCs/tjd|d�td||d��dS(NsDirBrowseNode getScript s invokeds*DirBrowseNode couldn't instantiate script i(R0R2R:(R,R�((s./usr/lib64/libreoffice/program/pythonscript.pyt	getScript�s(RRR-R�R�R�R�R8(((s./usr/lib64/libreoffice/program/pythonscript.pyR3�s					tManifestHandlercBsPeZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	RS(cCs
||_dS(N(R�(R,R�((s./usr/lib64/libreoffice/program/pythonscript.pyR-�scCs
g|_dS(N(turlList(R,((s./usr/lib64/libreoffice/program/pythonscript.pyt
startDocument�scCsdS(N((R,((s./usr/lib64/libreoffice/program/pythonscript.pytendDocument�scCsO|dkrK|jd�dkrK|jj|jd|jd��qKndS(Nsmanifest:file-entrysmanifest:media-types)application/vnd.sun.star.framework-scriptR}smanifest:full-path(tgetValueByNameR:R�R�(R,R�tattlist((s./usr/lib64/libreoffice/program/pythonscript.pytstartElement�s	cCsdS(N((R,R�((s./usr/lib64/libreoffice/program/pythonscript.pyt
endElement�scCsdS(N((R,tchars((s./usr/lib64/libreoffice/program/pythonscript.pyt
characters�scCsdS(N((R,RA((s./usr/lib64/libreoffice/program/pythonscript.pytignoreableWhitespace�scCsdS(N((R,tlocator((s./usr/lib64/libreoffice/program/pythonscript.pytsetDocumentLocator�s(
RRR-R;R<R?R@RBRCRE(((s./usr/lib64/libreoffice/program/pythonscript.pyR9�s							cCspt}|j|t�}xQ|D]I}|j|�rFt||�}n|jd�r^t}n|rPqqW|S(Ns.py(R�R4RYR5tisPyFileInPathR�(R�R�RR6R�((s./usr/lib64/libreoffice/program/pythonscript.pyRF�s
	c	Cs�d}y�|d}|j|�}tj�jjd�}t|�}|j|�|jt|d||��x9t	|j
�D](}t||�s|j
j|�qqWt	|j
�}Wn3t
k
r�t�}tjd|d|�nX|S(Ns/META-INF/manifest.xmlscom.sun.star.xml.sax.ParserRWsgetPathsFromPackage s Exception: ((R�RRR R!R9tsetDocumentHandlertparseStreamRGR0R:RFtremoveR�RR0R2(	R�R�RtfileUrlR^tparserthandlerR�R2((s./usr/lib64/libreoffice/program/pythonscript.pytgetPathsFromPackage�s"


	R�cBseZd�ZRS(cCs||_||_dS(N(R�R�(R,R�R�((s./usr/lib64/libreoffice/program/pythonscript.pyR-s	(RRR-(((s./usr/lib64/libreoffice/program/pythonscript.pyR�stDummyInteractionHandlercBseZd�Zd�ZRS(cCsdS(N((R,((s./usr/lib64/libreoffice/program/pythonscript.pyR-scCstjdt|��dS(Ns-pythonscript: DummyInteractionHandler.handle (R0R2R(R,R$((s./usr/lib64/libreoffice/program/pythonscript.pythandle
s(RRR-RO(((s./usr/lib64/libreoffice/program/pythonscript.pyRNs	tDummyProgressHandlercBs,eZd�Zd�Zd�Zd�ZRS(cCsdS(N((R,((s./usr/lib64/libreoffice/program/pythonscript.pyR-scCstjdt|��dS(Ns(pythonscript: DummyProgressHandler.push (R0R2R(R,tstatus((s./usr/lib64/libreoffice/program/pythonscript.pytpushscCstjdt|��dS(Ns*pythonscript: DummyProgressHandler.update (R0R2R(R,RQ((s./usr/lib64/libreoffice/program/pythonscript.pytupdatescCstjdt|��dS(Ns(pythonscript: DummyProgressHandler.push (R0R2R(R,R$((s./usr/lib64/libreoffice/program/pythonscript.pyR�s(RRR-RRRSR�(((s./usr/lib64/libreoffice/program/pythonscript.pyRP
s			tCommandEnvironmentcBs#eZd�Zd�Zd�ZRS(cCst�|_t�|_dS(N(RPtprogressHandlerRNtinteractionHandler(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR-scCs|jS(N(RV(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetInteractionHandlerscCs|jS(N(RU(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetProgressHandlers(RRR-RWRX(((s./usr/lib64/libreoffice/program/pythonscript.pyRTs		cCs�d}d}|j�jd||�}|j|�}|j|�}t�}d|_d|_t�}d|_d|_t	j
d|f�|_t�}	y+|j
|d|	�}
|
jd	d�}Wn0tk
r�}tj�o�tjd
|�nX|S(
s%Get document model from document url.tLocaltOffices'com.sun.star.ucb.UniversalContentBrokert
DocumentModeli����tgetPropertyValuess[]com.sun.star.beans.PropertyiisgetModelFromDocUrl: %sN(RYRZ(R[tgetServiceManagert%createInstanceWithArgumentsAndContexttcreateContentIdentifiertqueryContentRDtNametHandleRARtAnytArgumentRTRt	getObjectRHR0R3R4(RsR�R�targstucbR�tcontenttptctenvRR�((s./usr/lib64/libreoffice/program/pythonscript.pytgetModelFromDocUrl*s(							!cCs4|}|dkrd}n|dkr0d}n|S(Nsshare:uno_packagestsharedsuser:uno_packagesR((R�R((s./usr/lib64/libreoffice/program/pythonscript.pytmapStorageType2PackageContextCs		c
Cs:i}tj�jd�}|jt|��}tjd�|j|j�t	��}tjdt
t|��d�x�|D]�}tjd|jd|j
jd�t|j�}t|j�}t||�}	t|	�dkr�tj�otjd|d	t
|	��t|	|�|t|�<q�q�W|S(
Ns</singletons/com.sun.star.deployment.thePackageManagerFactorys>pythonscript: getPackageName2PathMap start getDeployedPackagess>pythonscript: getPackageName2PathMap end getDeployedPackages (R�sinspecting package R�isadding Package t (RRR=tgetPackageManagerRnR0R2tgetDeployedPackagestcreateAbortChannelRTRR#Rat
IdentifiertValuetpenultimateElementtURLRrRMR3R4R�tlastElement(
R�R�RtpackageManagerFactorytpackageManagertpackagesR�R�tjR�((s./usr/lib64/libreoffice/program/pythonscript.pytgetPackageName2PathMapKs$	
!
&+ cCs7|jd�}|jdd|d�}||d|!S(NR}ii(trindex(taStrt	lastSlashtpenultimateSlash((s./usr/lib64/libreoffice/program/pythonscript.pyRubscCs||jd�dt|�!S(NR}i(R�R#(R~((s./usr/lib64/libreoffice/program/pythonscript.pyRwgstPackageBrowseNodecBs>eZd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs||_||_||_dS(N(R�R�R�(R,R�R�R�((s./usr/lib64/libreoffice/program/pythonscript.pyR-ks		cCs|jS(N(R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR�pscCs�|jjj�}g}x�|D]�}t|dj�dkrl|jt|j|d|djd��qxC|djD]4}|jt|j|ddt|�|��qzWqWt|�S(Niit.(	R�R�R�R#R�R�R3RwR0(R,R�R7R�R{((s./usr/lib64/libreoffice/program/pythonscript.pyR�ss
(0cCst|jj�dkS(Ni(R#R�R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��scCstS(N(RQ(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��scCs/tjd|d�td||d��dS(NsDirBrowseNode getScript s invokeds.PackageBrowseNode couldn't instantiate script i(R0R2R:(R,R�((s./usr/lib64/libreoffice/program/pythonscript.pyR8�s(RRR-R�R�R�R�R8(((s./usr/lib64/libreoffice/program/pythonscript.pyR�js			
		tPythonScriptcBseZd�Zd�ZRS(cCs||_||_dS(N(tfuncR%(R,R�R%((s./usr/lib64/libreoffice/program/pythonscript.pyR-�s	cCs,tjdt|��y|j|�}Wn�tk
r�}t�}dt|jj�d|jjd|d}tj|�|j	d|d|_	�nht
k
r}t�}dt|jj�d|jjd|d}tj|�t||��nXtjdt|��|ddfS(	NsPythonScript.invoke sError during invoking function s in module s (R�sPythonScript.invoke ret = (((R0R2RR�R�RRR%R�R�RHR9(R,RfRatoutindexRR�R2tcomplete((s./usr/lib64/libreoffice/program/pythonscript.pyR�s 	0
	0
(RRR-R(((s./usr/lib64/libreoffice/program/pythonscript.pyR��s	cCsm|jd�rE|jddd�}tj�jd�j|�}n|jd�ritjd|�}n|S(Nsvnd.sun.star.expand:RWis./singletons/com.sun.star.util.theMacroExpandersfile:(RoRRRt	getByNametexpandMacrost
absolutize(R�((s./usr/lib64/libreoffice/program/pythonscript.pyRr�stPythonScriptProvidercBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d	�Z
d
�Zd�Zd�Z
d
�Zd�Zd�Zd�Zd�ZRS(cGs�tj�rfd}x=|D]5}t|�dkr>|d}n|t|�}qWtjd|�nd}d}d}t|dt�r�|d}|jd�r/t	||�}q/nv|d}y@|j
}|j�jd|�j
|�}|j�j�}Wn)tk
r.}	t�}
tj|
�nX|jd�}yt||�}tjdt|��t|j��}
tj|d	|
�d
}|jj||�}|s�tjd|�td||��nt|||ttj�||��|_|rCt||�}|jj||
�t |jt!|
�|_"nt#|jt!|
�|_"Wn3tk
r�}	t�}
tjd|
�|	�nXdS(
NRWit,s"Entering PythonScriptProvider.ctorsvnd.sun.star.tdocs;com.sun.star.frame.TransientDocumentsDocumentContentFactorys
:uno_packagessgot urlHelper s transformed to s!com.sun.star.ucb.SimpleFileAccesss*PythonScriptProvider couldn't instantiate s<PythonScriptProvider could not be instantiated because of : ($R0R/R#RR2R[R�tunicodeRoRltScriptContainerR]RmtcreateDocumentContentt
getIdentifiertgetContentIdentifierRHRR4R�RhRrRuR R9R�R�RRR�R|R�R�R�t
dirBrowseNodeR3(R,RsRftmystrR�R�R�R�RhR�R2t	isPackaget	urlHelperR�t
ucbServiceR�R�((s./usr/lib64/libreoffice/program/pythonscript.pyR-�s^



		'	cCs
|jj�S(N(R�R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��scCs
|jj�S(N(R�R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��scCs
|jj�S(N(R�R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��scCs
|jj�S(N(R�R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR��scCs/tjd|d�td||d��dS(NsDirBrowseNode getScript s invokeds*DirBrowseNode couldn't instantiate script i(R0R2R:(R,R�((s./usr/lib64/libreoffice/program/pythonscript.pyR8scCsy�tjd|d�|jj|jjj|��}tjd|�|d|jd�!}||jd�dt|�!}|jj|�}tjdt	|��|j
|}tjdt	|��t||�SWn5t�}tj
|�t|||td��nXdS(	Ns
getScript s invokedsgetScript: storageUri = iR�is	 got mod s	got func (R0R2R�R�R�RxR�R#R�RR�R�RR4RNR�(R,t	scriptUrit
storageUritfileUriR�R%R�R2((s./usr/lib64/libreoffice/program/pythonscript.pyR8s 	 
	
cCs
tjt�S(N(tg_ImplementationHelpertgetSupportedServicest
g_implName(R,((s./usr/lib64/libreoffice/program/pythonscript.pyR�scCstjt|�S(N(R�tsupportsServiceR�(R,tServiceName((s./usr/lib64/libreoffice/program/pythonscript.pyR� scCstS(N(R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetImplementationName#scCstjdt|��dS(NsgetByName called(R0R2RR[(R,R�((s./usr/lib64/libreoffice/program/pythonscript.pyR�&scCstjd�dS(NsgetElementNames called((R0R2(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetElementNames+s
cCs�y\tjdt|��t|�}|jj|�}tjd|dt|��|SWn"t�}tjd|�tSXdS(NshasByName called s
hasByName RosError in hasByName:(R0R2RRrR�R�RR�(R,R�R�RR2((s./usr/lib64/libreoffice/program/pythonscript.pyt	hasByName/s	cCs�tjdt|��t|�}|jj|�rH|jj|�n.tjdt|�d�t|d|��tjdt|�d�dS(NsremoveByName calledsremoveByName unknown uri s
, ignoringsis not in packages successful(R0R2RRrR�R�R�R;(R,R�R�((s./usr/lib64/libreoffice/program/pythonscript.pytremoveByName;scCs�tjdt|�dt|��t|�}t|jj|�rY|jj|�n1tjdt|�d�t|d|d��tjdt|�d�dS(NsinsertByName called Ros!insertByName: no python files in s
, ignorings does not contain .py filesis successful(	R0R2RRrRFR�R�R�R:(R,R�R]R�((s./usr/lib64/libreoffice/program/pythonscript.pytinsertByNameEs%cCsmtjdt|�dt|��t|�}|j|�|j||�tjdt|�d�dS(NsreplaceByName called RosreplaceByName calleds successful(R0R2RRrR�R�(R,R�R]R�((s./usr/lib64/libreoffice/program/pythonscript.pyt
replaceByNamePs
%
cCstjd�tjd�S(NsgetElementType calledtvoid(R0R2Rt
getTypeByName(R,((s./usr/lib64/libreoffice/program/pythonscript.pytgetElementTypeWs
cCstjd�tS(NshasElements got called(R0R2R�(R,((s./usr/lib64/libreoffice/program/pythonscript.pythasElements[s
(RRR-R�R�R�R�R8R�R�R�R�R�R�R�R�R�R�R�(((s./usr/lib64/libreoffice/program/pythonscript.pyR��s$	<													
			s3com.sun.star.script.provider.LanguageScriptProviders.com.sun.star.script.provider.ScriptProviderFors!pythonscript finished intializing((((((pRR�RR�R�R6R�Ret0com.sun.star.uri.RelativeUriExcessParentSegmentsRR�t	NameErrorRRtPYSCRIPT_LOG_ENVtPYSCRIPT_LOG_STDOUT_ENVRR.tenvironR�RRRR�RRRRR)R*R0R2tcom.sun.star.unoR9tcom.sun.star.langR:tcom.sun.star.containerR;R<tcom.sun.star.ioR=tcom.sun.star.ucbR>R?R@RAtcom.sun.star.taskRBtcom.sun.star.beansRCRDREtcom.sun.star.xml.saxRFRGRHR�tcom.sun.star.scriptRItcom.sun.star.awtRJtcom.sun.star.script.providerRKRLRMRNtcom.sun.star.script.browseROt*com.sun.star.script.browse.BrowseNodeTypesRPRQRRtcom.sun.star.utilRSR�R�RtImplementationHelperR�R�R\RbRgRhR�R�R�R�tBaseR�R�R�R�R-R3R9RFRMR�RNRPRTRlRnR|RuRwR�R�RrR�taddImplementation(((s./usr/lib64/libreoffice/program/pythonscript.pyt<module>s�

				 
""
	
	
\				5�	%t'(							# 	
"�