mò (á¸Ec@sUdZddd!ZdkZdkZdklZdklZdklZdklZd k l Z d k l Z d k l Z d k lZd k lZdklZdklZdklZdklZdklZdklZdkZdefd„ƒYZeideƒƒZdd„Z deeeefd„ƒYZ!ee!ƒdS(sVersion objects$Revision: 1.55 $i iþÿÿÿN(s RoleManager(s MessageDialog(s Persistent(sInitializeClass(sClassSecurityInfo(schange_versions(sjoin_leave_versions(ssave_discard_version_changes(sview_management_screens(sImplicit(sItem(sHTML(sBeforeDeleteException(sescapetVersionExceptioncBstZRS(N(t__name__t __module__(((t4/data/zmath/zope/lib/python/Products/OFSP/Version.pyR$ssdtml/versionAddcCspt|ƒ}t|ƒ}|iƒ}|i|t|||ƒƒ|dj o|di |i ƒdƒndS(t tRESPONSEs /manage_mainN( tstrtidttitletselftthist _setObjecttVersiontREQUESTtNonetredirectt absolute_url(R RRR ((Rtmanage_addVersion(s    R cBstZdZdZeƒZeieƒhdd<dd<dd)Return a list of icon URLs to be displayed by an ObjectManagertpathsmisc_/OFSP/version.giftaltRs#misc_/PageTemplates/exclamation.gifsDeprecated objects=Version objects are deprecated and should not be used anyore.N(R t meta_type(R ((Rtom_iconsdst manage_editcCs1||_|otddddddƒSndS(RRsSuccess!tmessagesYour changes have been savedRRN(RR R t MessageDialog(R RR ((RR+ms   tentercCs|iti|id|dpdƒ|idƒoA|dd djo,td|dd d d t |i ƒƒSn|i |dd ƒS( sBegin working in a versionR't BASEPATH1t/tSERVER_SOFTWAREi t MicrosoftRtURL1s /manage_mainR,sOIf cookies are enabled by your browser, then you should have joined version %s.N( Rt setCookieR"tVersionNameNameR R$R thas_keyR-tescapeRR(R R R((RR.vs%tleavecCs|itidddd|dpdƒ|idƒoA|dd d jo,td |d d d dt|i ƒƒSn|i |d d ƒS(s%Temporarily stop working in a versionsNo longer activetexpiressMon, 25-Jan-1999 23:59:59 GMTR'R/R0R1i R2RR3s /manage_mainR,sMIf cookies are enabled by your browser, then you should have left version %s.N( RR4R"R5R R6R-R7R RR(R R R((RR8ˆs%t leave_anothercCs|i||ƒS(s3Leave a version that may not be the current versionN(R R8R R(R R R((RR:›stsavecCs´y|iiƒ}Wnti|ii|ƒnSX|i}|ii ƒ}||jo d}nt i ƒi |ƒ|i||ƒ|dj o|di|ddƒndS(sMake version changes permanentRRR3s /manage_mainN(R R R!R"R#R$tcommittremarktst getVersiontdt transactiontgettnotet commitVersionR RR(R R=R R@R!R>((RR; s   tdiscardcCs‚y|iiƒ}Wnti|iiƒn$Xtiƒi |ƒ|i |iƒ|dj o|di|ddƒndS(s'Discard changes made during the versionRR3s /manage_mainN(R R R!R"R#R$tabortRARBRCR=t abortVersionR RR(R R=R R!((RRE²s cCsFy|iiƒ}Wnti|iiƒSnX|i|iƒ SdS(N(R R R!R"R#R$R%R&(R R!((RR%Às icCsdS(Ni((R top((Rt_canCopyËscCs d|_dS(NR(R R$(R titem((Rtmanage_afterCloneÎscCs*|ipdi|iƒƒ|_ndS(NR0(R R$tjointgetPhysicalPath(R RJt container((Rtmanage_afterAddÑs cCs’|iƒo(td||j odpdƒ‚ny |i}WnnCX|i}|iti dƒ|jotd|||fƒ‚ndS(Ns.Attempt to %sdelete a non-empty version.
s indirectly Rs_An attempt was made to delete a version, %s, or an object containing %s while working in the version %s. This would lead to a "version paradox". The object containing the deleted object would be locked and it would be impossible to clear the lock by saving or discarding the version, because the version would no longer be accessable.

( R R%RRJR R$tvRBR"R5(R RJRNR RP((Rtmanage_beforeDeleteÖs (  (RsVersion_Join-Leave.stx(RsVersion_Save-Discard.stx(RsVersion_Properties.stx(&RRt__doc__R)tClassSecurityInfotsecuritytdeclareObjectProtectedtview_management_screenst RoleManagertmanage_optionstItemtdeclareProtectedR$Rt index_htmlRtjoin_leave_versionsR"tDTMLFiletglobalsRtsave_discard_version_changesRRRR*tchange_versionsR+R.R8R:R;RER%RIRKRORQ(((RR 1sD   n           ("RRt __version__R"ttimetAccessControl.RoleRWR-t PersistenttInitializeClasst AccessControlRStAccessControl.PermissionsR`R\R_RVt AcquisitiontImplicittOFS.SimpleItemRYtHTMLt App.DialogstOFS.ObjectManagertBeforeDeleteExceptiontcgiR7RARR]R^tmanage_addVersionFormRRR (R`RWRR7RpRRkR_RaRiRVR RnRSRdReRYR-RAR"RbR\((Rt? s.                  »