File:  [Repository] / externalVersionedFile / externalVersionedFile.pyc
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Mon Oct 25 10:00:25 2004 UTC (19 years, 8 months ago) by dwinter
Branches: dwinter, MAIN
CVS tags: first, HEAD
new

    1: ;
    2: yAc	@sdklZdklZdklZdklZdklZdk	l
    3: Z
    4: lZlZdk
lZdklZdklZd	klZd
    5: klZdkZdZd
efdYZe
    6: deZdddedZdefdYZe
    7: deddddddZddddddedZ ddddddedZ!defdYZ"dZ#eed Z$ee"eedS(!(s	copy_file(sExternalFile(sFolder(sFile(scookId(sDTMLFilesInitializeClassspackage_home(sPageTemplateFile(sgetSecurityManager(sPageTemplate(sZopePageTemplate(sClassSecurityInfoNcCst|d|dSdS(Ni(scmpsxsy(sxsy((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pyssortvssexternalVersionedFileFoldercBstZdZdZeZeiddeihdd<dd<hdd<dd	<hdd
    8: <dd<fZdZ	e
    9: d
ZdZe
   10: dZ
e
   11: dZddZdZdZdZdde
   12: dZRS(s#Folder with externalVersioned filessexternalVersionedFileFoldersAUTHENTICATED_USERsaddFileFormslabelsGenerate Index.htmlsactionsgenerateIndexHTMLsGenerate history_template.htmlsgenerateHistoryHTMLsChange Path to FolderschangePathFormcCs tdi|}|SdS(schange the path forms-Products/externalVersionedFile/zpt/changePathN(sPageTemplateFiles__of__sselfspt(sselfspt((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pyschangePathForm!scCs.||_|tj	o|i||SndS(schange the pathN(sbaseFolderPathsselfsRESPONSEsNonesmanage_main(sselfsbaseFolderPathsRESPONSE((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys
   13: changePath&s	
cCs tdi|}|SdS(s
download helps/Products/externalVersionedFile/zpt/helpDownloadN(sPageTemplateFiles__of__sselfspt(sselfspt((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pyshelpDownload.scCst|do`td}|id|tiitt	d}t|i}|i|dndS|tj	o|idndS(slege standard index.html ans
   14: index.htmlszpt/versionFileFolderMain.zpts	text/htmlsalready exists!smanage_mainN(shasattrsselfsZopePageTemplateszts
   15: _setObjectsosspathsjoinspackage_homesglobalssdefault_content_fnsopensreadstextspt_editsRESPONSEsNonesredirect(sselfsRESPONSEsdefault_content_fnstextszt((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysgenerateIndexHTML5s	
cCst|do`td}|id|tiitt	d}t|i}|i|dndS|tj	o|idndS(slege standard index.html anshistory_template.htmlszpt/versionHistory.zpts	text/htmlsalready exists!smanage_mainN(shasattrsselfsZopePageTemplateszts
   16: _setObjectsosspathsjoinspackage_homesglobalssdefault_content_fnsopensreadstextspt_editsRESPONSEsNonesredirect(sselfsRESPONSEsdefault_content_fnstextszt((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysgenerateHistoryHTMLJs	
stitlecCsd}d}d}|i|ddg}|djo|i|n=|djo|i|n|djo|i|n|Sd	S(
   17: sget all versioned filescCst|di|diSdS(Ni(scmpsxstitlesy(sxsy((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pyssortNameascCs1t|dii|diiSdS(Ni(scmpsxsgetLastVersionsbobobase_modification_timesy(sxsy((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pyssortDatedscCs1t|dii|diiSdS(Ni(scmpsxsgetLastVersions
   18: lastEditorsy(sxsy((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys
   19: sortAuthorgss
obj_metatypessexternalVersionedFilestitlesdatesauthorN(ssortNamessortDates
   20: sortAuthorsselfsZopeFindsexternalVersionedFiless	sortFieldssort(sselfs	sortFieldsexternalVersionedFilesssortNamessortDates
   21: sortAuthor((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysgetVersionedFiles^s			


cCs:|i|ddg}|o|ddSndSdS(szustzlicher headersobj_idssheader.htmliisN(sselfsZopeFindsext(sselfsext((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysheader_htmlws
   22: cCsR|i|ddg}|o|ddSntdi|}|SdS(smainsobj_idss
   23: index.htmliis8Products/externalVersionedFile/zpt/versionFileFolderMainN(sselfsZopeFindsextsPageTemplateFiles__of__spt(sselfsextspt((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys
   24: index_htmlsc	Cs8tdtddddddi|}|SdS(	s
   25: add a filesdtml/newFileAddsKindsExternalVersionedFileObjectskindsexternalVersionedFileObjectsversions1N(sDTMLFilesglobalss__of__sselfsout(sselfsout((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysaddFileForms-sc
   26: Cs|djo
|i}	n|}	|iid}t||	dd|i	|	}|	|_|}|i
|	|||d||i|iddS(s add a new filessvCscontent_typesURL1N(snewNamesfilesfilenamesidsselfsREQUESTsformsvCsmanage_addExternalVersionedFiles_getObsobstitlesfile2s%manage_addExternalVersionedFileObjectsauthorscontent_typesRESPONSEsredirect(
   27: sselfsvCsfilesauthorsnewNamescontent_typesRESPONSEsfile2sobsid((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysaddFiles

	(s__name__s
   28: __module__s__doc__s	meta_typesClassSecurityInfossecuritysdeclareProtectedsFoldersmanage_optionsschangePathFormsNones
   29: changePathshelpDownloadsgenerateIndexHTMLsgenerateHistoryHTMLsgetVersionedFilessheader_htmls
   30: index_htmlsaddFileFormsaddFile(((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysexternalVersionedFileFolders	L					
   31: 	sdtml/folderAddsic	Cst}t||_||_|i|||i|}t|d|t
   32: i}|o,|d|o
t
dn|in|tj	o|i||ddSndS(sAdd a new Folder object with id *id*.
   33: 
   34:     If the 'createPublic' and 'createUserF' parameters are set to any true
   35:     value, an 'index_html' and a 'UserFolder' objects are created respectively
   36:     in the new folder.
   37:     sbaseFolderPathsAdd User Folderss+You are not authorized to add User Folders.supdate_menuiN(sexternalVersionedFileFoldersobsstrsidstitlesselfs
   38: _setObjects_getObssetattrsbaseFolderPathsgetSecurityManagerscheckPermissionscreateUserFsUnauthorizedsmanage_addUserFoldersREQUESTsNonesmanage_main(	sselfsidsbaseFolderPathstitlescreatePublicscreateUserFsREQUESTsobscheckPermission((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys%manage_addExternalVersionedFileFolders			

sexternalVersionedFileObjectcBsltZdZdZededdddZeiddZd	Z	d
   39: Z
   40: dZdZRS(
sFile Object im FoldersexternalVersionedFileObjects
dtml/fileEditsKindsFileskindsfilesmanage_editFormcCs&d|_|iii|idS(sdownload and locksapplication/octet-streamN(sselfscontent_typesREQUESTsRESPONSEsredirectsabsolute_url(sself((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysdownloads	cCsx|iddjodSn|iidjod|iSn|id|i_d|_|iii|idS(sdownload and locksAUTHENTICATED_USERsAnonymous Usersplease login firstss0cannot be locked because is already locked by %ssapplication/octet-streamN(sselfsREQUESTs	aq_parentslockedByscontent_typesRESPONSEsredirectsabsolute_url(sself((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysdownloadLockeds	cCs
||_dS(sset versionN(s
versionNumbersself(sselfs
versionNumber((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pyssetVersionNumberscCs|iSdS(sget versionN(sselfs
versionNumber(sself((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysgetVersionNumberscCsnt|do|iSnP|i}|i}|tjp
   41: |tjotSn|ii	|ddSdS(slast Editorsauthoris	user_nameN(
   42: shasattrsselfsauthors_p_jarsjars_p_oidsoidsNonesdbshistory(sselfsoidsjar((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys
   43: lastEditors		(
s__name__s
   44: __module__s__doc__s	meta_typesDTMLFilesglobalssmanage_editForms_setNamesdownloadsdownloadLockedssetVersionNumbersgetVersionNumbers
   45: lastEditor(((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysexternalVersionedFileObjects
		
		sdtml/fileAddsKindsExternalVersionedFileObjectskindsversions1c	Cstii|i|}	d}|otdntii||	}
   46: |ot||
   47: n|i|t
||t||
   48: |i|it||i|_t|i|d||tj	o|di|idndS(s
   49: 
   50:     Factory method to actually create an instance of ExternalFile.
   51:     ExternalFile.  This method assumes all parameters are correct (it
   52:     does no error checking).  It is called from CreationDialog.py once
   53:     all of the confirmation and error checking steps have been taken.
   54:     
   55:     You should call this method directly if you are creating an
   56:     instance of ExternalFile programmatically and have 'vetted' all of
   57:     your parameters for correctness.
   58: 
   59:     ss!Required fields must not be blanksauthorsRESPONSEs/manage_mainN(sosspathsjoinsselfsbaseFolderPathsidstarget_filepathsbasedirs	Exceptionsfully_resolved_target_filepathsfiles	copy_files
   60: _setObjectsexternalVersionedFileObjectstitlesstrsvCs_getObsreindex_objectsversionCommentssetattrsauthorsREQUESTsNonesredirectsabsolute_url(sselfsidsvCsauthorsfilestitlespreconditionscontent_typesREQUESTstarget_filepathsfully_resolved_target_filepathsbasedir((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys%manage_addExternalVersionedFileObjects

   61: 
c		Cst|}t|}t|}t|}t|||\}}|i}|i	|t
   62: ||d||t||i|_
t|i|d||o|i|i|n|o||i|_n|tj	o|di|idndS(sVAdd a new File object.
   63: 
   64:     Creates a new File object 'id' with the contents of 'file'ssauthorsRESPONSEs/manage_mainN(sstrsidstitlescontent_typespreconditionscookIdsfilesselfsthiss
   65: _setObjectsexternalVersionedFileObjectsvCs_getObsversionCommentssetattrsauthors
manage_uploadsREQUESTsNonesredirectsabsolute_url(	sselfsidsvCsauthorsfilestitlespreconditionscontent_typesREQUEST((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys)manage_addExternalVersionedFileObject_olds "
sexternalVersionedFilecBstZdZdZdZdZdZeZdZ	dZ
   66: dZdZei
d	d
   67: dZdZei
d	d
   68: d
Zei
d	ddZddddddedZei
d	ddZdZRS(sVersioniertes FilecCs tdi|}|SdS(s	showdiffss-Products/externalVersionedFile/zpt/selectDiffN(sPageTemplateFiles__of__sselfspt(sselfspt((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys
showDiffsFormBscCs0||iid<tdi|}|SdS(sshowsfileLists,Products/externalVersionedFile/zpt/showDiffsN(sfileListsselfsREQUESTsSESSIONsPageTemplateFiles__of__spt(sselfsfileListspt((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys	showDiffsGsc
Csdkl}dk}	t||d}|	idd|}|id}t||d}|	idd|}|id}|||}g}d}d}x%|D]}
   69: dGH|
   70: dd	!d
   71: jo'|d7}d}|iddgq|
   72: dd	!djo
   73: d}qy|	id
d|
   74: }
   75: |	idd|
   76: }
   77: |
   78: ddjod|
   79: d}
   80: n|
   81: ddjod|
   82: d}
   83: n|
   84: ddjod|
   85: d}
   86: n|||c|
   87: d7<WqqXqW|SdS(sgenerate diffs(scontext_diffNis
s
   88: iishiis**ss--s>s&gt;s<s&lt;s!s$<span style="color:brown;">%s</span>s+s"<span style="color:red;">%s</span>s-s$<span style="color:green;">%s</span>s<br>(sdifflibscontext_diffsresgetattrsselfsfileListsv1ssubssplitsv1ssv2sv2ssxxslistscounterstogglesxsappend(
sselfsfileListsv2sstogglesv1sv1sscounterslistsv2sresxsxxscontext_diff((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysformatDiffsMsF
	
   89: 
   90: cCs(||_||_||_||_dS(sinitN(sidsselfstitleslockedBysauthor(sselfsidstitleslockedBysauthor((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys__init__{s
   91: 			sexternalVersionedFilecCsd}t}xj|i|D]Y}t|ddo?t|di|jo!t|di}|d}quqqW|SdS(sLast Versioniis
versionNumberN(	stmpsNoneslastVersionsselfsZopeFindsversionshasattrsints
versionNumber(sselfstmpsversionslastVersion((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysgetLastVersionscCs?|i}d|i|i|i|i|ifSdS(s	main views6File: %s Version:%i modified:%s size:%s modified by:%sN(sselfsgetLastVersionslastVersionstitles
versionNumbersbobobase_modification_timesgetSizes
   92: lastEditor(sselfslastVersion((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys
   93: index_htmlscCsud}x`|i|D]O}t|ddo5t|di|jot|di}qeqqW|dSdS(Niis
versionNumber(stmpsselfsZopeFindsversionshasattrsints
versionNumber(sselfstmpsversion((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys
   94: getVersionssAUTHENTICATED_USERsunlockcCsd|i|iddg}|o"t||ddiSntdi|}|SdS(shistorysobj_idsshistory_template.htmliis1Products/externalVersionedFile/zpt/versionHistoryN(	sselfsZopeFinds	aq_parentsextsgetattrsgetIdsPageTemplateFiles__of__spt(sselfsextspt((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pyshistorys"cCskg}xM|i|D]<}t|ddo"|i|di|dfqqW|it|SdS(sget all versionsis
versionNumberN(	sretsselfsZopeFindsversionshasattrsappends
versionNumberssortssortv(sselfsversionsret((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysgetVersionss&
cCsct|it|idgjo!d|_|i|idnd|i|idfSdS(sunlocksAUTHENTICATED_USERssURL2s!Sorry, not locked by you! (%s,%s)N(sstrsselfslockedBysREQUESTsRESPONSEsredirect(sselfsRESPONSE((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysunlocks
   95: &	s"addExternalVersionedFileObjectFormc	Cst|iddgjodSn|i|idjp
|idjo>tdtdddd	d
   96: |ii|}|SndSdS(
sadd a new versionsAUTHENTICATED_USERsAnonymous Usersplease login firstssdtml/fileAddsKindsExternalVersionedFileObjectskindsexternalVersionedFileObjectsversions%Sorry file is locked by somebody elseN(	sstrsselfsREQUESTslockedBysDTMLFilesglobalss
   97: getVersions__of__sout(sselfsout((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys"addExternalVersionedFileObjectForms'3ssnoc	Cs|id}|id}|djo|id|_n|	djo|	d|_nd|i	d|i}t|||||d|i	d|i|||i|d|gdGH|i|d|gdd	it|i	}|
   98: o|
   99: i|id
  100: ndS(saddsvCsauthorsyesissV%is_sobj_idsisURL2N(sselfsREQUESTsvCsauthors
  101: changeNamesfilesfilenamestitlesnewNames
  102: getVersionsids%manage_addExternalVersionedFileObjectspreconditionscontent_typesZopeFindssetVersionNumbersintsobjssRESPONSEsredirect(sselfsidsvCsauthorsfilestitlespreconditionscontent_types
  103: changeNamesnewNamesRESPONSEsobjs((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys%manage_addExternalVersionedFileObjects


45sdownloadLockedcCsOd|i_|iii|idd|id|iidS(sdownload and locksapplication/octet-streamsURL1s/N(sselfsgetLastVersionscontent_typesREQUESTsRESPONSEsredirectsgetId(sself((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysdownloadscCs|iddjodSn|idjod|iSn|id|_d|i_|iii|idd|id|iid	S(
  104: sdownload and locksAUTHENTICATED_USERsAnonymous Usersplease login firstss0cannot be locked because is already locked by %ssapplication/octet-streamsURL1s/N(sselfsREQUESTslockedBysgetLastVersionscontent_typesRESPONSEsredirectsgetId(sself((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysdownloadLockeds(s__name__s
  105: __module__s__doc__s
showDiffsForms	showDiffssformatDiffss__init__sClassSecurityInfossecuritys	meta_typesgetLastVersions
  106: index_htmls
  107: getVersionsdeclareProtectedshistorysgetVersionssunlocks"addExternalVersionedFileObjectFormsNones%manage_addExternalVersionedFileObjectsdownloadsdownloadLocked(((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysexternalVersionedFile=s*			.						
  108: 						cCs tdi|}|SdS(s"interface for adding the OSAS_roots?Products/externalVersionedFile/zpt/addExternalVersionedFile.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys#manage_addExternalVersionedFileFormscCsGt||||}|i|||t	j	o|i
  109: dndS(sadd the OSAS_rootsmanage_mainN(sexternalVersionedFilesidstitleslockedBysauthorsnewObjsselfs
  110: _setObjectsRESPONSEsNonesredirect(sselfsidstitleslockedBysauthorsRESPONSEsnewObj((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pysmanage_addExternalVersionedFiles
  111: 
(%sProducts.ExternalFile.FileUtilss	copy_files"Products.ExternalFile.ExternalFilesExternalFiles
  112: OFS.FoldersFolders	OFS.ImagesFilescookIdsGlobalssDTMLFilesInitializeClassspackage_homes'Products.PageTemplates.PageTemplateFilesPageTemplateFiles
AccessControlsgetSecurityManagers#Products.PageTemplates.PageTemplatesPageTemplates'Products.PageTemplates.ZopePageTemplatesZopePageTemplatesClassSecurityInfosos.pathsosssortvsexternalVersionedFileFoldersglobalss)manage_addExternalVersionedFileFolderFormsNones%manage_addExternalVersionedFileFoldersexternalVersionedFileObjects)manage_addExternalVersionedFileObjectForms%manage_addExternalVersionedFileObjects)manage_addExternalVersionedFileObject_oldsexternalVersionedFiles#manage_addExternalVersionedFileFormsmanage_addExternalVersionedFile(s)manage_addExternalVersionedFileObjectFormsoss%manage_addExternalVersionedFileFolders)manage_addExternalVersionedFileObject_oldsZopePageTemplatesFoldersPageTemplates)manage_addExternalVersionedFileFolderFormsPageTemplateFilesmanage_addExternalVersionedFilesExternalFiles#manage_addExternalVersionedFileFormscookIdssortvs	copy_filesClassSecurityInfosDTMLFilesInitializeClasssexternalVersionedFileFoldersgetSecurityManagers%manage_addExternalVersionedFileObjectsFilesexternalVersionedFilesexternalVersionedFileObjectspackage_home((sf/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/externalVersionedFile/externalVersionedFile.pys?s0









		6$!!		
  113: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>