m ,Ec@sdZddd!ZdkZdkZdkZdkZdkZdkZdkZdkl Z dkl Z dkl Z dk l Z d klZd klZd klZd klZd klZdklZdklZdklZdklZdklZdkl Z dk!l"Z"dk#l$Z$dk%l&Z&dk'Z'e dZ(y dk)Z)WndZ*n Xe)i*Z*dfdYZ+de+ei,ei-fdYZ.e e.dfdYZ/deifd YZ0e e0d!e+ei,ei-fd"YZ1e e1e2a3e2a4d#e+ei,ei-fd$YZ5e e5deefd%YZ6d&e.efd'YZ7dS((sSystem management componentss$Revision: 1.94 $i iN(s getLogger(sInitializeClass(sDTMLFile(s ObjectManager(sFolder(s CacheManager(sDavLockManager(sDateTime(s SimpleItem(sgetConfiguration(s MessageDialog(s ProductFolder(s version_txt(sStringIO(sgetSecurityManager(sRedirect(sPageTemplateFile(sescapetApplicationManagercCsdS(Ni((((t5/data/zmath/zope/lib/python/App/ApplicationManager.pyt)stFakecBstZdZRS(NcCsdS(Ni((tself((Rtlocked_in_version-s(t__name__t __module__R(((RR,stDatabaseManagercBs tZdZedeZZeiddZdZ Z dZ dZ hdd<dd<d d(((RR'[s      tVersionManagercBsqtZdZedeZZeiddZdZ Z dZ dZ hdd<dd<d d d-Z?d.Z@d/ZAe$d0ZBRS(3sSystem managementtManageriR sdtml/cpContentsR cCs't|dpt|_n|iS(Nt_v_version_txt(RURt version_txtR(R((RR scCstiS(N(RIR%(R((Rt sys_version&scCstiS(N(RItplatform(R((Rt sys_platform'sRRRBtDavLockstProductssProduct ManagementRER tContentsR RRsControl-Panel_Contents.stxt Control_Panels Control Panelsp_/ControlPanel_iconcCst|_dS(N(t ProductFolderRR(R((RR&MsicCsdS(Ni((Rtop((Rt_canCopy`scCsdS(N((R((Rt_initcscCst|ddS(s$Return to the main management screens/manageN(tRedirecttURL2(RR((Rt manage_appfscCs tti|i}t|d}||d}t|d}||d}t|d}||d}|o%d||djodpdfpd}|o%d||djodpdfpd}|o d |pd}d |}d ||||fS( NiQii<s%d day%sitsts %d hour%ss%d mins%d secs %s %s %s %s(tintRkRt process_startRtdthR2(RRRR2R((Rt process_timejs22 cCstS(N(t get_ident(R((Rtthread_get_identxscCs|iiiS(N(RR4R!tgetName(R((Rtdb_namezscCs_|iii}t|tdjo|Sn|djod|dSnd|dS(NRf 1048576.0s%.1fMs%.1fKf1024.0(RR4R!tgetSizeRRO(RR((Rtdb_size}s  tZMANAGEDcCs\ydtii}Wn d}nXtid|tiddt|dS(sShut down the applications"%s"s unknown usersRestart requested by %sis Zope is restarting N( tgetSecurityManagertgetUsert getUserNametusertLOGtinfotLifetimetshutdowntescapetURL1(RRR((Rtmanage_restarts  cCsOydtii}Wn d}nXtid|tiddS(sShut down the applications"%s"s unknown usersShutdown requested by %sis` Zope is shutting down N(RRRRRRRR(RR((Rtmanage_shutdowns  cCs`ti|d}|ii}|i|}|dj o|di |ddn|S(sPack the databaseiQtRESPONSERs/manage_workspaceN( RktdaysRPRR4R!tpacktREQUESTR<tredirect(RRRR!RP((Rt manage_packs cCsfS(N((R((Rt revert_pointsscCstii}tii}tii}t}||id}ti |}|i g} x|D]} ||| }||pqend}x5dD]-}|||} || o | }PqqW|dj o<t|d} | i} | i| i| iqeqeW| S(NRs VERSION.TXTs VERSION.txts version.txttr(s VERSION.TXTs VERSION.txts version.txt(tosR{tjoint path_jointisdirtexistsR)tcfgt softwarehomet product_dirtlistdirt product_namesR.Rt product_namet package_dirR<RRRTtopentfiletreadlinetdatatcloseR=tstrip(RRRRRRRRRRRRRTRR((Rt version_lists4           cCstg}y|ii}WntdnXxA|iD]3}|i|oq9n|ihd|<q9W|S(NsY Sorry, Version management is only supported if you use ZODB 3. R( RRR4R!t ValueErrortversionsRTt versionEmptyR=(RRR!RT((Rt version_infos  cCs[|ii}x|D]}|i|qW|dj o|di|ddndS(sCommit some versionsRRs /manage_mainN( RR4R!RRTt commitVersionRR<R(RRRR!RT((Rtmanage_saveVersionss cCs[|ii}x|D]}|i|qW|dj o|di|ddndS(sDiscard some versionsRRs /manage_mainN( RR4R!RRTt abortVersionRR<R(RRRR!RT((Rtmanage_discardVersionss cCs tiS(N(R)R(R((RtgetSOFTWARE_HOMEscCs tiS(N(R)tzopehome(R((Rt getZOPE_HOMEscCs tiS(N(R)t instancehome(R((RtgetINSTANCE_HOMEscCs tiS(N(R)t clienthome(R((RtgetCLIENT_HOMEscCsdkl}g}xl|iD]^\}}t|doBtt|dd}|i }|i t|d|fq q W|S(N(s socket_maptportt __class__tunknownsPort: %s( tasyncoret socket_maptlRStkRTRUtstrR8RORR=(RRRRRRTRO((Rt getServerss   %cCstd|i}|ii|joGt|i}|ihdd<d|ii<t ||_nt i ||S(s this is a patch for pre-2.4 Zope installations. Such installations don't have an entry for the WebDAV LockManager introduced in 2.4. cCs|iddS(NR(txtgetR<(R((RR sRRRN( RfRt_objectst meta_typesRRRztlstR=ttupletFoldert objectIdstspec(RRRR((RRs%(R(sOFSPsControl-Panel_Contents.stx(CRRRt __roles__R?R'R RARBRDREtDavLockManagerRRRRR RRRRRRtUndot UndoSupportRRRRRRtgetpidt process_idRRkRR<tmanage_addObjecttmanage_delObjectstmanage_addPropertytmanage_editPropertiestmanage_delPropertiesR&RRRRRRRtenvironthas_keytmanage_restartableRRRRRRRRRRRRRR(((RRsb         { .                     R1cBs2tZdZeiiZeiiZeiiZRS(s$Database management DBTab-style (RRRRRtim_funcRR(((RR1s   (8Rt __version__RIRRkRR~Rtloggingt getLoggertInitializeClassRtOFS.ObjectManagert ObjectManagert OFS.FolderRt CacheManagerRtDateTime.DateTimeR\tOFSt SimpleItemt App.configR)t App.Dialogst MessageDialogtProductRRt cStringIORnt AccessControlRt zExceptionsRt'Products.PageTemplates.PageTemplateFileR@tcgiRRRtthreadRRtItemRRR R'RAR<R[R]RDRR1(&RRR\RRRR1RRRRR@RDRRR)R'RRkRRRIRRRR RARR~R RnRRRRRRR((Rt? sT ?                       "  0 " "g