File:  [Repository] / OSAS / OSA_system / Attic / OSAS_show.pyc
Revision 1.5: download - view: text, annotated - select for diffs - revision graph
Sat Oct 11 10:54:13 2003 UTC (20 years, 8 months ago) by dwinter
Branches: MAIN
CVS tags: HEAD
new
n

-
?csdkZdklZdklZdklZdklZ
defdYZ	8dZ
=edZEd	efd
YZ
dZedZd
ZdkTdkZdkZdkZdkZdklZdklZdklZdklZdklZdkl Z dkZdk!Zdk"Z"dk#Z$dklZdklZdk%Z%de%_&dddddgZ'deeefdYZ(deeefdYZ)deeefd YZ*d!eeefd"YZ+Kd#Z,Qd$Z-Wd%Z.ed&d'Z/md(Z0{d)Z1d*Z2d+Z3d,eeefd-YZ4d.eeefd/YZ5d0eeefd1YZ6d2Z7"d3Z8)d4Z9-d5Z:5d6Z;=d7Z<Bd8Z=Gd9Z>Od:Z?Zd;Z@d<ZAd=ZBd>ZCd?ZDd@ZEdAZFdBeeefdCYZGdDeeefdEYZH=dFZIBdGZJFdHZKJdIZLMdJZMQdKZNcdLklOZOl Z edMZPdS(NN(sFolder(s
SimpleItem(sPageTemplateFile(sPageTemplatesOSAS_ShowOnlinecs
tZdZdZdZdZddZdZ"dZ&dZ	*d	Z
-d
Z0dZ3dZ
RS(
s
OnlineBrowsercs
||_dS(sinitialize a new instanceN(sidsself(sselfsid((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__ssOSAS_ShowOnlinecs,tdi|}|SdS(s	main views&Products/OSA_system/OSAS_ViewFiles.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
index_htmlsics#t|d}|SdS(sload filesystemiN(sfilesystem2sstartsk(sselfsstartsreloadsk((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetfilesystem2scs t|} |SdS(sget the filetreeN(sbrowsesstartsk(sselfsstartsk((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pystreescs!"#$t|id|SdS(s&generates navigation bar for viewfilessURLN(spath_to_link_viewsselfsREQUESTspath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyspath_to_link_view"scs&'(t|SdS(scheck if digilibN(s
isdigilib2spath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
isdigilib2&scs*+t|SdS(N(s
changeNamesname(sselfsname((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
changeName*scs-.t|SdS(N(shasMetafilespath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyshasMetafile-scs01t|SdS(N(sgetMetafilespath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetMetafile0scsK345|i|i||6|iii|idd|SdS(s%Oeffnen bzw. schlieen der SubfolderssURL1s?path=N(sselfstreespathstogglesfilesREQUESTsRESPONSEsredirect(sselfspathsfile((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pystoggle_view3s(s__name__s
__module__s__doc__s__init__s	meta_types
index_htmlsgetfilesystem2streespath_to_link_views
isdigilib2s
changeNameshasMetafilesgetMetafilestoggle_view(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysOSAS_ShowOnline
s	cs,89:tdi|};|SdS(s"interface for adding the OSAS_roots*Products/OSA_system/AddOSAS_ShowOnline.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysmanage_AddOSAS_ShowOnlineForm8scsP=>?t|}@|i||A|tj	oB|idndS(sadd the OSAS_rootsmanage_mainN(sOSAS_ShowOnlinesidsnewObjsselfs
_setObjectsRESPONSEsNonesredirect(sselfsidsRESPONSEsnewObj((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysmanage_AddOSAS_ShowOnline=s
sOSAS_StoreOnlinecsEtZdZFGdZKdZNdZSdZZddZ`dZedZ	id	Z
md
ZpdZsdZ
vd
Z{dZdZdZdZdZdZdZdZdZRS(s!Webfrontend fr das StoragesystemcsGHI||_dS(sinitialize a new instanceN(sidsself(sselfsid((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__GssOSAS_StoreOnlinecs,NOPtdi|}Q|SdS(s	main views'Products/OSA_system/OSAS_StoreFiles.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
index_htmlNscs<STUtii|doVt|SnXgSdS(sZeige Contextes/index.metaN(sosspathsexistssreadContexts(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysreadContextsSsics#Z[]t|d}^|SdS(sload filesystemiN(sfilesystem2sstartsk(sselfsstartsreloadsk((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetfilesystem2Zscs `abt|}c|SdS(sget the filetreeN(sbrowsesstartsk(sselfsstartsk((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pystree`scs!efgt|id|SdS(s&generates navigation bar for viewfilessURLN(spath_to_link_storesselfsREQUESTspath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyspath_to_link_storeescsijkt|SdS(scheck if digilibN(s
isdigilib2spath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
isdigilib2iscsmnt|SdS(N(s
changeNamesname(sselfsname((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
changeNamemscspqt|SdS(N(shasMetafilespath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyshasMetafilepscsstt|SdS(N(sgetMetafilespath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetMetafilesscsKvwx|i|i||y|iii|idd|SdS(s%Oeffnen bzw. schlieen der SubfolderssURL1s?path=N(sselfstreespathstogglesfilesREQUESTsRESPONSEsredirect(sselfspathsfile((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pystoggle_viewvscs{|}t||SdS(sTest ob Eintrag ein Folder istN(sisFoldersselfspath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysisFolder{scst||SdS(sTest ob Eintrag ein Folder istN(sisScannedDocumentsselfspath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysisScannedDocumentscst||SdS(sTest ob Eintrag ein Folder istN(s
isFullTextspathsfolder_name(sselfspathsfolder_name((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
isFullTextscs,tdi|}|SdS(sadd a new paths&Products/OSA_system/OSAS_addFolder.zptN(sPageTemplateFiles__of__sselfspt(sselfspathspt((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
addFolderFormscstdtSdS(Ns%d.%m.%Y(sstrftimes	localtime(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysdatescs)ti||||||SdS(s=add the folder to the filesystem and write the metadata filesN(s	addFoldersselfspathsfolder_namesdescriptionsarchive_creation_datescreator(sselfspathsfolder_namesdescriptionsarchive_creation_datescreator((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys	addFolderscsy/tiii|d}|i}Wnd}nX||ii	d<||ii	d<t
di|}|SdS(sEditiere das Index Metafiles/index.metass	indexmetaspathsProducts/OSA_system/editindexN(
sxmlsdomsminidomsparsespathstoxmls	indexmetasselfsREQUESTsSESSIONsPageTemplateFiles__of__snewtemplate(sselfspathsdomsnewtemplates	indexmeta((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys	EditIndexs
cs|iido|id}n'|idi|_|id}t|iiddd}|i	||ii
i|idd|iidSdS(	s%Sichern der Aenderungen in Index.metas
fileuploads	indexmetaspaths/index.metaswsURL1s?path=N(sselfsREQUESTshas_keysnewtextsfilenames	file_namesfilesSESSIONs	indexmetas
writelinessresponsesredirect(sselfsnewtexts	indexmeta((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
EditIndex2s cs,tdi|}|SdS(snothings(Products/OSA_system/OSAS_addmetadata.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysadd_metafiles(s__name__s
__module__s__doc__s__init__s	meta_types
index_htmlsreadContextssgetfilesystem2streespath_to_link_stores
isdigilib2s
changeNameshasMetafilesgetMetafilestoggle_viewsisFoldersisScannedDocuments
isFullTexts
addFolderFormsdates	addFolders	EditIndexs
EditIndex2sadd_metafile(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysOSAS_StoreOnlineEs,	cs,tdi|}|SdS(s"interface for adding the OSAS_roots+Products/OSA_system/AddOSAS_StoreOnline.zptN(sPageTemplateFiles__of__sselfspt(sselfspt((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysmanage_AddOSAS_StoreOnlineFormscsPt|}|i|||tj	o|idndS(sadd the OSAS_rootsmanage_mainN(sOSAS_StoreOnlinesidsnewObjsselfs
_setObjectsRESPONSEsNonesredirect(sselfsidsRESPONSEsnewObj((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysmanage_AddOSAS_StoreOnlines
cstiii|d}|id}g}xe|D]Z}t	|iddi
}t	|iddi
}|i
||fqGW|SdS(sReadContext from index.metas/index.metascontextslinkisnameN(sxmlsdomsminidomsparsespathsgetElementsByTagNamesnodessretsnodesgetTexts
childNodesslinksnamesappend(spathsnodeslinksdomsnodessretsname((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysreadContextss	
	(s*(sClassSecurityInfo(sRoleManager(sImplicit(s
Persistent(sstrptime(sstrftimes/var/tmp/archivers.HSResources
lost+foundsNetwork Trash FoldersTheFindByContentFoldersTheVolumeSettingsFoldersfsentrycstZdZdZdZdZdZdZeZ	dZ
e	iddZe	iddZ
e	iddZe	id
d	Ze	id
dZe	idd
ZRS(sFile entry classscsptiitid|id}||_||_d|_	tii
||_dS(sinitialize classs(.*)\nisN(sosspathsabspathsressearchsextpathsgroupsselfsallsusersgetmtimesmtime(sselfsextpath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__s*sgetPathcs|iSdS(sAusgabe von pathN(sselfspath(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetPathssgetUsercs|iSdS(sAusgabe von userN(sselfsuser(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetUserssgetDatecs&	
tdti|iSdS(sAusgabe von Dates
%Y%m%d%H%MN(sstrftimestimesgmtimesselfsmtime(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetDatescs!
|i|iSdS(s)Ausgabe einer eindeutigen Sortierbaren IDN(sselfsgetDatesgetPath(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetID
ssgetTimecs|iSdS(sAusgabe von pathN(sselfstime(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetTimessgetAllcs|iSdS(sAusgabe von pathN(sselfsall(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetAlls(s__name__s
__module__s__doc__spathsusersmonthsdatestimesClassSecurityInfossecuritys__init__s
declarePublicsgetPathsgetUsersgetDatesgetIDsgetTimesgetAll(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysfsentrys(						s
filesystemcsmtZdZhZhZeZ dZ'dZ8ddZ	?ei
d@dZCei
dDdZGei
d	Hd
Z
Lei
dMdZRd
Z`dZ~ei
ddZei
ddZei
ddZei
ddZei
ddZRS(sstore filesystemcs= !"tid|dd}#|i}%|SdS(sload filessystemsfind s -name '*' srN(sosspopensstartsfs	readlinesslines(sselfsstartslinessf((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetfs scs'()x|i|D)]}+tid|},|tjo-|id}.|id}/|ii|o40|i|}1|i|2||i|<n4|g|i|<5|dj|djBo6d|i|<nnqWdS(sanalyse filesystems(.*/)(.*)\niis
index.metasmetas1N(sselfsgetfssstartslinesressearchsgsNonesgroupspathsfilesnodeshas_keyselementssappendshasindex(sselfsstartselementssfilesgspathsline((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysloadfs's	icsC89|djo,:h|_;h|_<|i|ndS(Ni(sreloadsselfsnodeshasindexsloadfssstart(sselfsstartsreload((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__8ssgetNodecs@A|iSdS(N(sselfsnode(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetNode@ssgetKeyscsDE|iiSdS(N(sselfsnodeskeys(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetKeysDss	clearnodecsHIh|_JdSdS(Ni(sselfsnode(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys	clearnodeHsshasIndexcsMO|ii|SdS(N(sselfshasindexshas_keyspath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyshasIndexMscsRSTh}Ux|iDU]}V|ii|oWt|i|djoXt|i|djd|i|j@oY|i|||<nJZt|i|djd|i|j@o[n]|i|||<nnqW^|SdS(s'return only files with archive materialiismetaN(sjsselfsnodeskshasindexshas_keyslen(sselfsjsk((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
onlyIndex_oldRs	
	.. cs`abydt|dd}f|i}hyitiii|}jt	|i
ddidjokldSnHnt	|i
ddi}p|djorsdSnuvdSWnwxydSnXWnz{|dSnXd	S(
s'parse indexmeta and return digilib paths/index.metasrscontent-typeisfoldersarchive-storage-datesiN(
sfilespathsfsreadslinessxmlsdomsminidomsparseStringsgetTextsgetElementsByTagNames
childNodessarchive_storage_date(sselfspathsdomsfslinessarchive_storage_date((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysarchive_the_path`s*&s	onlyIndexcs_h}x?|iD]1}|i|o|i|||<nqW|SdS(sFreturn only files with archive material (archive-storage-date not set)N(sjsselfsnodesksarchive_the_path(sselfsjsk((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys	onlyIndexs	
	sgetImageDirscs|id}g}x|D]}t|iddi}ti	d|d|}|tjo4y|i
|idWn
nXn|i
|q(W|SdS(Nsdirsnameis(.*)/mpiwg/online/(.*)s/i(sdomsgetElementsByTagNamesdirssdirbacksdirsgetTexts
childNodesstempsressearchspathstemp2sNonesappendsgroup(sselfsdomspathsdirsstempsdirbackstemp2sdir((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetImageDirss	
	sdigilibcs?|ii|do|i|SndSdS(s0check if folder is a container for digilib filess/sNON(sselfshasindexshas_keyspathsparseIndexMeta(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysdigilibss	isdigilibcsE|ii|dot|i|SndSdS(s?return number of possible image directories usefull for digilibs/iN(sselfshasindexshas_keyspathslensparseIndexMeta(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys	isdigilibssparseIndexMetacstid|dd}|i}yxtiii	|}t
|iddi}|djp
|djo|i||}n|SWngSnXdS(	s'parse indexmeta and return digilib pathscat s/index.metasrscontent-typeisscanned-documentsscanned documentN(sosspopensksfsreadslinessxmlsdomsminidomsparseStringsgetTextsgetElementsByTagNames
childNodesscontent_typesselfsgetImageDirssdirs(sselfsksdirsscontent_typesdomsfslines((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysparseIndexMetas(s__name__s
__module__s__doc__snodeshasindexsClassSecurityInfossecuritysgetfssloadfss__init__s
declarePublicsgetNodesgetKeyss	clearnodeshasIndexs
onlyIndex_oldsarchive_the_paths	onlyIndexsgetImageDirssdigilibs	isdigilibsparseIndexMeta(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
filesystems6		
sfilesystem2cstZdZhZhZeZdZdZddZ	ei
ddZei
ddZei
d	d
Z
ei
ddZRS(
sstore filesystemcs=tid|dd}|i}|SdS(sload filessystemsfind s -name '*' srN(sosspopensstartsfs	readlinesslines(sselfsstartslinessf((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetfsscsx
|i|D]}tid|}|tjoy(|id}|id}Wn
nX|ii|o4|i|}|i|||i|<n|g|i|<|dj|djBod|i|<nnqWdS(sanalyse filesystems(.*/)(.*)\niis
index.metasmetas1N(sselfsgetfssstartslinesressearchsgsNonesgroupspathsfilesnodeshas_keyselementssappendshasindex(sselfsstartselementssfilesgspathsline((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysloadfss"	ics
dS(snothingN((sselfsstartsreload((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__ssgetImageDirscs|id}g}x|D]}t|iddi}ti	d|d|}|tjo4y|i
|idWn
nXn|i
|q(W|SdS(Nsdirsnameis(.*)/mpiwg/online/(.*)s/i(sdomsgetElementsByTagNamesdirssdirbacksdirsgetTexts
childNodesstempsressearchspathstemp2sNonesappendsgroup(sselfsdomspathsdirsstempsdirbackstemp2sdir((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetImageDirss	
	sdigilibcs?tii|do|i|SndSdS(s0check if folder is a container for digilib filess/index.metasNON(sosspathsexistssselfsparseIndexMeta(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysdigilibss	isdigilibcsBtii|dot|i|SndSdS(Ns/index.metai(sosspathsexistsslensselfsparseIndexMeta(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys	isdigilibssparseIndexMetacstid|dd}|i}yk	tiii	|}
t
|iddi}|djo|i||}n|SWngSnXdS(s'parse indexmeta and return digilib pathscat s/index.metasrscontent-typeisscanned-documentN(sosspopensksfsreadslinessxmlsdomsminidomsparseStringsgetTextsgetElementsByTagNames
childNodesscontent_typesselfsgetImageDirssdirs(sselfsksdirsscontent_typesdomsfslines((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysparseIndexMetas(s__name__s
__module__s__doc__snodeshasindexsClassSecurityInfossecuritysgetfssloadfss__init__s
declarePublicsgetImageDirssdigilibs	isdigilibsparseIndexMeta(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysfilesystem2s		sbrowsecstZeZhZhZdZ dZ$eid%dZ	,eid-dZ
0eid1dZ?eid	@d
ZRS(NcsSg}x6|D]+}|tjo|i|nqW|SdS(N(sretsdirsitems	exclusionsappend(sselfsdirsitemsret((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysfilterExcludeds	
	cs5 !h|_"|iti||i|<dS(N(sselfstreesfilterExcludedsdircacheslistdirs	startpath(sselfs	startpath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__ ssgetTreecs_%&|ii|o'|i|Sn1)|iti||i|<*|i|SdS(N(sselfstreeshas_keyspathsfilterExcludedsdircacheslistdir(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetTree%s"sisDirectorycs.-.tiitii|d|SdS(Ns/(sosspathsisdirsabspathsfile(sselfspathsfile((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysisDirectory-sstogglecs}12|d|}4|ii|o?5|i|djo6d|i|<n9d|i|<n<d|i|<dS(Ns/iii(stmppathsfilespathsselfs
toggledictshas_key(sselfstmppathsfilespath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pystoggle1ssisTogglecsG@A|d|}C|ii|oE|i|SnHdSdS(Ns/i(stmppathsfilespathsselfs
toggledictshas_key(sselfstmppathsfilespath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysisToggle@s(
s__name__s
__module__sClassSecurityInfossecuritystrees
toggledictsfilterExcludeds__init__s
declarePublicsgetTreesisDirectorystogglesisToggle(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysbrowses			cs=KLMtid|dd}N|i}O|SdS(sreturn filesystemsfind s
 -name '*'srN(sosspopensstartsfs	readlinesslines(sstartslinessf((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetfsKscs<QRt|}Sx|DS]}T|GHqWUdSdS(Ni(sgetfssstartslinessline(sstartslineslines((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysshowallQs

	csWXYd}Zg}[t|}\x|D\]{}]yb^tiitii	t
id|ido'_|i
t|`|d}nWn
abnXq1Wc|SdS(s&retrun list of entries of a filesystemis(.*)\niN(sisfssgetfssstartslinesslinesosspathsexistssabspathsressearchsgroupsappendsfsentry(sstartsfssislineslines((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysentriesWs		
	7ics#efht|d}i|SdS(sload filesystemiN(s
filesystemsstartsk(sstartsreloadsk((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
getfilesystemescsmnog}ph}qx:|Dq]/}r|i|is|||i<q"Wt|iu|ivg}wx%|Dw]}x|i||qWy|SdS(ssorts lists of fileentriesN(
slssdictsfssksappendsgetIDssortsreversesretsj(sfssdictslssksjsret((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyssort_by_datems		
	

	
	cs){|}d}tii|}d}|tii|gg}xxt|djo`|d}|djoPn|i	|tii|gtii|}qQWxO|djo>|d||dd||dd}|d}qW|SdS(	s&generates navigation bar for showfilessiiis<a href=showfiles?path=s>s</a>/N(
sstringsosspathsdirnamestmppathsisbasenamespathesslensappend(spathstmppathspathessstringsi((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyspath_to_link{s"		
"-cs1d}tii|}d}|tii|gg}xxt|djo`|d}|djoPn|i	|tii|gtii|}qQWxW|djoF|d|d||dd||dd}|d}qW|Sd	S(
s&generates navigation bar for viewfilessiiis<a href=s?path=s>s</a>/N(sstringsosspathsdirnamestmppathsisbasenamespathesslensappendsURL(sURLspathsispathessstringstmppath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyspath_to_link_views"		
"5cs1d}tii|}d}|tii|gg}xxt|djo`|d}|djoPn|i	|tii|gtii|}qQWxW|djoF|d|d||dd||dd}|d}qW|Sd	S(
s&generates navigation bar for viewfilessiiis<a href=s?path=s>s</a>/N(sstringsosspathsdirnamestmppathsisbasenamespathesslensappendsURL(sURLspathsispathessstringstmppath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyspath_to_link_stores"		
"5sErrorcsHtZgZeZdZeiddZRS(Ncs|d|_dS(Ni(s	initerrorsselfserror(sselfs	initerror((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__ssgetErrorcs|iSdS(N(sselfserror(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetErrors(s__name__s
__module__serrorsClassSecurityInfossecuritys__init__s
declarePublicsgetError(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysErrors
		s	metacheckcsTtZgZeZdZdZeiddZRS(Ncsd}t|djox"|D]}||d}q0Wtid|}|iddjo
d}n0|iddjo
d	}n
d
}||gSndd
gSdS(sparse for errorsis<br>s	(.*):(.*)isABORTserrorsDONEsoksrunningN(	sretstrslensstrslinesressearchschecksgroupserror(sselfsstrserrorslinesretstrscheck((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysparsearchives	
	

	csg|_t|tjoKtid|d}|iit	||i
|ign_xX|D]M}tid|d}|iit	||i
|igq}WdS(sarchive the documents in paths#/usr/local/mpiwg/archive/metacheck srN(
sselfslinesstypespaths
StringTypesosspopensfsappendsErrorsparsearchives	readliness
singlepath(sselfspaths
singlepathsf((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__s2
	smessagescs|iSdS(N(sselfslines(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysmessagess(	s__name__s
__module__slinessClassSecurityInfossecuritysparsearchives__init__s
declarePublicsmessages(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys	metachecks		sarchivecsTtZgZeZdZdZeiddZRS(Ncsd}t|djox"|D]}||d}q0Wtid|}|iddjo
d}n0|iddjo
d	}n
d
}||gSndd
gSdS(sparse for errorsis<br>s	(.*):(.*)isABORTserrorsDONEsoksrunningN(	sretstrslensstrslinesressearchschecksgroupserror(sselfsstrserrorslinesretstrscheck((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysparsearchives	
	

	cs	g|_
h|_||d<t|tjoFti|i|<t	i
d|d|i|dd}nZxS|D]H}ti|i|<t	i
d|d|i|dd}qWdS(sarchive the documents in pathsarchivers"/usr/local/mpiwg/archive/archiver s > s &srN(
sselfsliness	filenamesssessionstypespaths
StringTypestempfilesmktempsosspopensfs
singlepath(sselfspathssessions
singlepathsf((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__s
0
	smessagescs{g|_xX|iiD]D}|iit||it|i|di	gq"W|iSdS(Nsr(
sselfsliness	filenamesskeysspathsappendsErrorsparsearchivesopens	readlines(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysmessagess
	B(	s__name__s
__module__slinessClassSecurityInfossecuritysparsearchives__init__s
declarePublicsmessages(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysarchives		cs t|SdS(N(sevalsstr(sstr((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysevalextscsC"#|ii}$||d|<%||d|<'d|SdS(Nserror%ispath%iserror?number=%i(scontextsREQUESTsSESSIONssessionsretsispath(sretspathscontextsissession((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
storeerror"scs!)*|ii}+||SdS(N(scontextsREQUESTsSESSIONssessionsstr(sstrscontextssession((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgeterror)scsS-/d}0t|d}1x$|iD1]}2||}q.W3|SdS(Nssr(sretsopenspathsfs	readlinessg(spathsgsretsf((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysreadfile-s		csR56t|d}7|i|8|i9|id}:|SdS(Nswsarchive2(	sopenspathsfswritestxtsclosesselfs
aq_acquiresrval(sselfspathstxtsREQUESTsrvalsf((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys	writefile5s

cs1=>?|id|iid<@t|SdS(s(check the metadata the documents in pathspathN(sselfsREQUESTsSESSIONs	metacheckspath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysmetachecker=scs8BCDt||ii}E|iiidSdS(sarchive the documents in pathsarchive4N(sarchivespathsselfsREQUESTsSESSIONstmpsRESPONSEsredirect(sselfspathstmp((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysarchiverBscsXGId}Jx;|DJ]0}K|i|ijoL||i}nqWM|SdS(Ns(srcsnodelistsnodesnodeTypes	TEXT_NODEsdata(snodelistsnodesrc((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetTextGs	
	cs~OPd}Rx]|DR]R}T|i|ijo6UV|dt|idt|id}nqWX|dSdS(Ns<table border='0'>s<tr><td valign='right'>s:</td><td> s
</td></tr>s</table>(	srcsnodelistsnodesnodeTypesELEMENT_NODEsstrsnodeNamesgetTexts
childNodes(snodelistsnodesrc((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetBibOs	
	7cs_Z[\g}]tii|do_dSn'atid|dd}b|i}cti	i
i|}dt|i
ddi}et|i
ddi}ft|i
ddi}gt|i
d	di}
hy#it|i
d
di}Wnjkd}nXl|djomd
|d}n7n|djood|d}nqd
|d}s|d|d|d}t|d|
d}uyv|i
ddi
dd}	w|	iido#x|d|	idid}nz|d}{|t|	i}Wn
}~nX|SdS(sget index.metas/index.metasNO_METADATAscat srsnameiscreatorsarchive-creation-datesdescriptionscontent-typessscanned documents<h3>Document: s</h3>sfolders<h3>Folder: s<p><i>created by: s at: s</i></p>s<h4>Description</h4><p>s</p>smetasbibstypes
<h4>Info (s)</h4>s
<h4>Info</h4>N(shtmlsosspathsexistsspopensfsreadslinessxmlsdomsminidomsparseStringsgetTextsgetElementsByTagNames
childNodessnamescreators
creation_datesdescriptionstypesbibs
attributesshas_keysvaluesgetBib(spathsfsnamescreatorstypesdomsliness
creation_dateshtmlsbibsdescription((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetMetafileZs>	#
##
cs!tii|dSdS(sget index.metas/index.metaN(sosspathsexists(spath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyshasMetafilesc	sygti|}ddddddddd	g	}d
}xE|D]:}tii|}|d|jodSnqUWyt	i
iitii
|dd
}x|idD]q}t|iddidjoEt|idditii
|djodSnnqWdSWndSnXWndSnXdS(s9check if folder is candidate for digilib without metadatas.gifs.jpgs.jpegs.pngs.tiffs.tifs.JPGs.TIFFs.TIFsiis/index.metasdirscontent-typesimagessnameN(sosslistdirspathsdirs
imagesuffixessretsassplitextssuffixsxmlsdomsminidomsparsessplitsgetElementsByTagNamesnodesgetTexts
childNodes(spathsasnodessuffixsdomsrets
imagesuffixessdir((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
isdigilib2s,$	
	,	&6csytiii|d}xu|idD]a}t|iddidjo5t|iddi|jodSnnq;WdSWndSnXdS(	s(check if foldername in path is full texts/index.metasdirscontent-typeisfulltextsnameiN(
sxmlsdomsminidomsparsespathsgetElementsByTagNamesnodesgetTexts
childNodessfolder_name(spathsfolder_namesnodesdom((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
isFullTexts	&&csytiii|d}x|idD]x}y_t|iddidjo5t|iddi|jodSnnWn
nXq;WdSWndSnXdS(	s(check if foldername in path is full texts/index.metasdirscontent-typeispresentationsnameiN(
sxmlsdomsminidomsparsespathsgetElementsByTagNamesdirnodesgetTexts
childNodessfolder_name(spathsfolder_namesdomsdirnode((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysisPresentations	&&cs{y]tid|}|tjo$dtid|idSn|idSWndSnXdS(Ns(.*)/mpiwg/online/(.*)s
digifiles/s%(.*)/mpiwg/production/docuserver/(.*)isNO(sressearchspathstemp2sNonesgroup(spathstemp2((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
changeNames$csPd|_|ididd|ididddSdS(NisOFSPsneusHELLOsok(sselfsismanage_addProductsmanage_addDTMLMethodsgetattrsmanage_edit(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pystestsslscstZdZdZdZdZdZdZeZ	dZ
e	iddZe	iddZ
e	iddZe	id	d
ZRS(sFile entry classscsDti|_||d<tid|idddS(Nsoutfiles	ls -R / >s &sr(stempfilesmktempsselfsoutfilesstartsosspopen(sselfsstart((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__s
sreadcs|iiSdS(N(sselfsfsread(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysreadssretselfcs|SdS(N(sself(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysretselfssallcs>d}x!|iD]}||}qW|SdS(Ns(sretsselfsfsg(sselfsgsret((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysalls
	
	sprintOutfilecsEx"tii|ioq	Wt|iiSdS(N(sosspathsexistssselfsoutfilesopens	readlines(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysprintOutfiles(s__name__s
__module__s__doc__spathsusersmonthsdatestimesClassSecurityInfossecuritys__init__s
declarePublicsreadsretselfsallsprintOutfile(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pyslss 					soverviewcstZgZ	hZ
eZdZdZdZ0ei	d1dZ
9ei	d:dZRS(NcsT
ti|}x5|D]*}|d||i|i||<qWdS(Ns/(sosslistdirspathsdirsfilesselfs	resourcessgetResource(sselfspathsfilesdir((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys__init__s
	cst|d|d}xT|iD]C}|dd!djo&|dd!djo|Snnq-Wd	SdS(
Ns/sriisINFOiisresourceserror(sfilespathsfilenamesfs	readlinessline(sselfspathsfilenamesfsline((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetResources	csd}!t|djo"x"|D"]}#||d}q0W$tid|}%|iddjo
&d}n0'|iddjo
(d	}n
*d
},||gSn.dd
gSdS(sparse for errorsis<br>s	(.*):(.*)isABORTserrorsDONEsoksrunningN(	sretstrslensstrslinesressearchschecksgroupserror(sselfsstrserrorslinesretstrscheck((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysparsearchives	
	

	smessagescs12g|_3xa|iiD3]M}4|i|}6|iit||it	|di
gq"W7|iSdS(Nsr(sselfsliness	resourcesskeyssnamespathsappendsErrorsparsearchivesopens	readlines(sselfspathsname((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysmessages1s	;s
printResourcecs:;|iSdS(N(sselfs	resources(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys
printResource:s(s__name__s
__module__sdirs	resourcessClassSecurityInfossecuritys__init__sgetResourcesparsearchives
declarePublicsmessagess
printResource(((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysoverviews			
cs=?t|SdS(N(soverviewspath(spath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetoverview=scs2BCt|ii}D|iiidSdS(Nsnext(slssselfsREQUESTsSESSIONstmpsRESPONSEsredirect(sselfstmp((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysls_testBscs!FG||iid<HdSdS(Ns	somethingi(s	somethingsselfsREQUESTsSESSION(sselfs	something((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys	storeFileFscsJK|iidSdS(Ns	something(sselfsREQUESTsSESSION(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysgetFileJscsMNOt||SdS(shreturns TRUE, wenn path ein Folder ist in den weitere Objekte Folder oder Dokumente gelegt werden drfenN(sisScannedDocumentsselfspath(sselfspath((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysisFolderMscsQRSyTt|dd}U|i}WyjXtiii|}Yt	|i
ddi}Z|djp
|djo[dSn]dSWn^_dSnXWn`adSnXdS(	sFreturns TRUE, wenn path der Stammordner eines gescannten Documents ists/index.metasrscontent-typeisscanned-documentsscanned documentiN(
sfilespathsfsreadslinessxmlsdomsminidomsparseStringsgetTextsgetElementsByTagNames
childNodesscontent_type(sselfspathscontent_typesdomsfslines((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysisScannedDocumentQs(s	localtimesstrftimecseftdtSdS(Ns%d.%m.%Y(sstrftimes	localtime(sself((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pysdatees(Qs	addFolders
OFS.FoldersFoldersOFS.SimpleItems
SimpleItems'Products.PageTemplates.PageTemplateFilesPageTemplateFiles#Products.PageTemplates.PageTemplatesPageTemplatesOSAS_ShowOnlinesmanage_AddOSAS_ShowOnlineFormsNonesmanage_AddOSAS_ShowOnlinesOSAS_StoreOnlinesmanage_AddOSAS_StoreOnlineFormsmanage_AddOSAS_StoreOnlinesreadContextsstypessurllibsosssyssres
AccessControlsClassSecurityInfosAccessControl.RolesRoleManagersAcquisitionsImplicitsGlobalss
Persistentstimesstrptimesstrftimesos.pathsdircachesxml.dom.minidomsxmlstempfilestempdirs	exclusionsfsentrys
filesystemsfilesystem2sbrowsesgetfssshowallsentriess
getfilesystemssort_by_datespath_to_linkspath_to_link_viewspath_to_link_storesErrors	metachecksarchivesevalexts
storeerrorsgeterrorsreadfiles	writefilesmetacheckersarchiversgetTextsgetBibsgetMetafileshasMetafiles
isdigilib2s
isFullTextsisPresentations
changeNamestestslssoverviewsgetoverviewsls_tests	storeFilesgetFilesisFoldersisScannedDocuments	localtimesdate(DshasMetafilestempfilesOSAS_ShowOnlinesoverviewsshowalls
getfilesystemslssRoleManagersgetoverviewsmanage_AddOSAS_StoreOnlineFormsisScannedDocumentsFoldersPageTemplatesarchivesxmls	addFolders	exclusionspath_to_link_viewsbrowsesstrptimesmanage_AddOSAS_StoreOnlinesurllibssort_by_datesevalextsgetfssgetTextsarchiversmanage_AddOSAS_ShowOnlinestimestests	storeFiles
isdigilib2sImplicitsPageTemplateFilesisFolders	metachecksOSAS_StoreOnlines
storeerrorsreadfilespath_to_linksClassSecurityInfos
Persistentsfsentryssyss
SimpleItems	writefilesgeterrorsfilesystem2sErrorsdatesres
isFullTextsgetMetafilesls_tests	localtimesmanage_AddOSAS_ShowOnlineFormsgetBibsdircachespath_to_link_stores
changeNamesisPresentations
filesystemsreadContextssgetFilesentriessmetacheckersossstrftime((sA/usr/local/mpiwg/Zope/lib/python/Products/OSA_system/OSAS_show.pys?s.p

/U8(.*"#6

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