;ò
"ºÊAc @ sà d Z d k Z d k l Z d k l Z d k l Z d k l Z d k
l Z l Z d k
Z
d k Z d k Z d k Z d k Z d k Td e f d „ ƒ YZ e e ƒ d
„ Z e d „ Z d S( s= Classes for displaying, browsing and organizing the archive
N( s ClassSecurityInfo( s PageTemplateFile( s Folder( s
SimpleItem( s InitializeClasss package_home( s *s OSAS_storeOnlinec B s¨ t Z d Z d Z e ƒ Z h Z h Z d „ Z e i d d ƒ d „ Z
d d „ Z d „ Z d „ Z
d
„ Z d d „ Z d „ Z d d
„ Z d d „ Z d „ Z RS( sC Webfrontend für das Storagesystem
liefert Browserumgebung
s OSAS_StoreOnline__neuc C s
| | _ d S( s initialize a new instanceN( s ids self( s selfs id( ( sS /Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys __init__ s s Views
index_htmlc C s_ t | d ƒ o t | d ƒ ƒ Sn8 t t i i t t ƒ ƒ d d ƒ ƒ i | ƒ } | ƒ Sd S( sc main view either standard template zpt/storeOnline_index_html.zpt or storeOnline_index.html in trees storeOnline_index.htmls zpts storeOnline_index_html.zptN( s hasattrs selfs getattrs PageTemplateFiles oss paths joins package_homes globalss __of__s pt( s selfs pt( ( sS /Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys
index_html$ s
0s c C s¹ t i i t i i | i | ƒ ƒ } xY t i i t i i | d ƒ ƒ o | d j p
| d j o t i i | ƒ d } q' W| d j p
| d j o t Sn t i i | d ƒ Sd S( sñ finde index_meta fuer diesen eventuell virtuellen Pfad
@param path: optional, default ist "", Pfad auf das Object relativ zum rootFolderName
@return: None falls kein index.meta existiert sonst Pfad auf das index.meta
s
index.metas s /i N(
s oss paths normpaths joins selfs rootFolderNames realPaths existss splits None( s selfs paths realPath( ( sS /Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys
findIndexMeta- s $ >c
C s | i | ƒ } | o t Sn t i i | ƒ d } t i i t i i | i
| ƒ ƒ } t i i
i | ƒ } | i d ƒ }
x¹ |
D]± } | i d ƒ } | o t i | d i ƒ } n d } | i d ƒ } | o t i | d i ƒ } n d } t i i t i i | | | ƒ ƒ } | | j o | i ƒ Sq„ q„ W| i d ƒ } x¹ |
D]± } | i d ƒ } | o t i | d i ƒ } n d } | i d ƒ } | o t i | d i ƒ } n d } t i i t i i | | | ƒ ƒ } | | j o | i ƒ SqOqOWt Sd S( s½ fragm xml zum path
@param path: Pfad auf das Object relativ zum rootFolderName
@return: den Teil von Index.meta der Informationen zu path enthaelt, None wenn error.
i s dirs paths s names fileN( s selfs
findIndexMetas paths indexMetas Nones oss splits realPaths normpaths joins rootFolderNames xmls doms minidoms parses getElementsByTagNames dirss dirs pathess OSAS_helperss getTexts
childNodess pathXs namess names checkpaths toxmls files(
s selfs paths realPaths pathess names doms checkpaths filess namess indexMetas dirss pathXs dir( ( sS /Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys findEntryInIndexMeta; sH $ $
$
c C sù h } | i | ƒ } | o | Sn t i i | ƒ d } | i | d ƒ } | o | d t i j o | d } n t i
| ƒ } | i i
| ƒ o | i | d | t
i j o | i | d Sn t i i i | ƒ } g } | i d ƒ | i d ƒ } xÓ | D]Ë } | i d ƒ } | o t i | d i ƒ }
n d }
| i d ƒ }
|
o t i |
d i ƒ } n d } |
| j oL | i d j o
d } n d } t i i | |
| ƒ } | d f | | <qqW| t
i | f | i | <| Sd
S( sÖ Gebe alle path untergeordenten Objekte aus
@param path: optional, default ist "", Pfad auf das Object relativ zum rootFolderName
@return: Directory [pfad auf das Objekt]->(fileType,''), fileType ist hierbei OSAS_dir_archive falls Object ein directory und OSAS_file_archive falls das Object ein File ist,der zweite Eintrag des Tupels ist zur Zeit immer '', spaeter wird hier die Beschreibung gemaess Metadaten stehen, wie bei readObjectsFromPath.
i s i s dirs files paths names OSAS_dir_archives OSAS_file_archiveN(! s rets selfs
findIndexMetas paths indexMetas oss splits realPaths replaces seps stats statss _v_metaFiless has_keys ST_MTIMEs xmls doms minidoms parses dirss getElementsByTagNames dirs pathess OSAS_helperss getTexts
childNodess pathXs namess names tagNames fileTypes joins object( s selfs paths realPaths pathess statss names doms objects rets fileTypes namess indexMetas dirss pathXs dir( ( sS /Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys getSubDirsFromIndexMetar sB 2
c C s2 | i | ƒ } | o t i | | ƒ Sn d Sd S( sÄ metadaten zu path als html aus dem index.meta file zu path
@param path: optional, default ist "", Pfad auf das Object relativ zum rootFolderName
@return: metadata als html
s N( s selfs findEntryInIndexMetas paths xmlInfoss OSAS_helperss getMetaInfoFromXML( s selfs paths xmlInfos( ( sS /Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys getMetaInfoFromIndexMeta§ s
c
C sN t i i t i i | i | ƒ ƒ } | i } | i | i ƒ d j o h Sn t i i
| ƒ o t Sn t i | ƒ } | i i | ƒ o | i | d | t i j o | i | d Sn t i | ƒ } h } xV | D]N } t i i | | ƒ } t i | ƒ } | o | | i | ƒ f | | <qÚ qÚ W| t i | f | i | <| Sd S( sç Liest files aus dem path und speichert im cache _v_filesystem.
@param path : path relativ zum root folder des Storagesystems
@return: directory der Form [pfad zum Objekt] -> (fileType,metadatum als String)
i i N( s oss paths normpaths joins selfs rootFolderNames realPaths testmds metaDatas finds existss Nones stats statss
_v_fileSystems has_keys ST_MTIMEs listdirs dirs rets filenames objects OSAS_helperss checkOSASFileTypes fileTypes getDisplayFieldsAsStr(
s selfs paths realPaths statss objects rets filenames fileTypes dirs metaData( ( sS /Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys readObjectsFromPath³ s( $ 2 !c C s¯ g } xž | i | i d d g d d ƒD]{ } | | d i j oa | i t | d d d ƒ d ƒ } | d i
| } | d i } d | | f } | i | ƒ q( q( W| Sd S( s: teste ob fuer diesen Typ, handler definiert sind und gibt einen entsprechenden Link zurueck, der das Object mit diesem Handler ausfuehrt.
@param path: Pfad auf das Objekt
@param type: Typ des Objektes
@return: (string) html-Fragment, link der das Objekt mit diesem Handler anzeigt.
s
obj_metatypess OSAS_HandlerObject__neus
search_subi s
ignorePaths s# <a target="_blank" href="%s">%s</a>N( s rets selfs ZopeFinds aq_parents handlers types objectTypess paths replaces getattrs prefixs urls titles texts strings append( s selfs paths types strings urls texts rets handler( ( sS /Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys giveHandlersÚ s "