Annotation of OSA_system2/OSAS_browser.pyc, revision 1.4

1.4     ! dwinter     1: ;ò
        !             2: "ºÊAc@sÃdZd&k&Z&dklZ&dklZ&dklZ&dkl    Z  &dk
        !             3: lZlZ&d&k
Z
d&kZd&kZd&kZd&kZdkTde f&d   „ƒYZeeƒ&&d
        !             4: „Zed„&Zd&S(s= Classes for displaying, browsing and organizing the archive
1.1       dwinter     5: N(&sClassSecurityInfo(&sPageTemplateFile(&sFolder(&s
1.4     ! dwinter     6: SimpleItem(sInitializeClassspackage_home(&s&*sOSAS_storeOnlinecBs¨tZ&dZd&ZeƒZhZhZd„Zei  ddƒ&d„Z
        !             7: dd„&Zd„Zd    „Z
d
        !             8: „Zdd„&Zd„Zdd
„&Zdd„&Zd„ZRS(sCWebfrontend für das Storagesystem
1.1       dwinter     9:     liefert Browserumgebung 
1.4     ! dwinter    10:     sOSAS_StoreOnline__neucCs
|&|_d&S(sinitialize a new instanceN(sidsself(sselfsid((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys__init__s&&sViews
        !            11: index_htmlc&Cs_t|d&ƒo&t|d&ƒƒSn8&ttiittƒƒ&ddƒƒ&i   |ƒ&}&|&ƒSdS(scmain view either standard template zpt/storeOnline_index_html.zpt or storeOnline_index.html in treesstoreOnline_index.htmlszptsstoreOnline_index_html.zptN(shasattrsselfsgetattrsPageTemplateFilesosspathsjoinspackage_homesglobalss__of__spt(sselfspt((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys
        !            12: index_html$s
        !            13: &&&0&scCs¹ti&iti&i|i|&ƒƒ&}xYti&iti&i|d&ƒƒ&o&|djp
        !            14: &|djo&ti&i|ƒ&d}q'&W|djp
        !            15: &|djo&t   Sn&ti&i|d&ƒSdS(sñfinde index_meta fuer diesen eventuell virtuellen Pfad
1.2       dwinter    16:         @param path: optional, default ist "", Pfad auf das Object relativ zum rootFolderName
                     17:         @return: None falls kein index.meta existiert sonst Pfad auf das index.meta
                     18:         s
                     19: index.metass&/iN(
1.4     ! dwinter    20: sosspathsnormpathsjoinsselfsrootFolderNamesrealPathsexistsssplitsNone(sselfspathsrealPath((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys
findIndexMeta-s&$>&&&c
Cs|i&|&ƒ&}   |  o&tSn&&tii|    ƒ&d&}tiitii |i
        !            21: |&ƒƒ&}&tii
i| ƒ&}|idƒ&}
        !            22: x¹|
        !            23: D]±}|idƒ&}|o&ti|d&iƒ&}n&d}|idƒ&}|o&ti|d&iƒ&}n&d}tiitii   |||ƒƒ&}||&jo&|iƒSq„&q„W|idƒ&}x¹|
        !            24: D]±}|idƒ&}|o&ti|d&iƒ&}n&d}|idƒ&}|o&ti|d&iƒ&}n&d}tiitii   |||ƒƒ&}||&jo&|iƒSqO&&qO&WtSdS(s½fragm xml zum path
1.2       dwinter    25:         @param path: Pfad auf das Object relativ zum rootFolderName
1.3       dwinter    26:         @return: den Teil von Index.meta der Informationen zu path enthaelt, None wenn error.
                     27:         isdirspathssnamesfileN(sselfs
findIndexMetaspaths   indexMetasNonesosssplitsrealPathsnormpathsjoinsrootFolderNamesxmlsdomsminidomsparsesgetElementsByTagNamesdirssdirspathessOSAS_helperssgetTexts
1.4     ! dwinter    28: childNodesspathXsnamessnames    checkpathstoxmlsfiles(
sselfspathsrealPathspathessnamesdoms   checkpathsfilessnamess   indexMetasdirsspathXsdir((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pysfindEntryInIndexMeta;sH&&&&$&&&&&&&$&
&&&&&&&$&
cCsù&h}|i|&ƒ&}|o&|Sn&&tii|ƒ&d&}|&i|dƒ}&|&o&|&d&ti    jo&|&d}&n&&ti
        !            29: |ƒ&}|ii
|ƒ&o&|i|d&|t
        !            30: ijo&|i|dSn&&tiii|ƒ&}g}|idƒ&|idƒ&}xÓ|D]Ë}|idƒ&}|o&ti|d&iƒ&}
n&d}
|idƒ&}
        !            31: |
        !            32: o&ti|
        !            33: d&iƒ&}n&d}|
|&joL&|idjo
        !            34: &d} n&d  }  tii||
|ƒ}|  df||<q&&q&W|t
        !            35: i|f|i|<|Sd
1.2       dwinter    36: S(sÖ&Gebe alle path untergeordenten Objekte aus
                     37:         @param path: optional, default ist "", Pfad auf das Object relativ zum rootFolderName
                     38:         @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.
1.3       dwinter    39:         isi&sdirsfilespathsnamesOSAS_dir_archivesOSAS_file_archiveN(!sretsselfs
findIndexMetaspaths   indexMetasosssplitsrealPathsreplacessepsstatsstatss_v_metaFilesshas_keysST_MTIMEsxmlsdomsminidomsparsesdirssgetElementsByTagNamesdirspathessOSAS_helperssgetTexts
1.4     ! dwinter    40: childNodesspathXsnamessnamestagNamesfileTypesjoinsobject(sselfspathsrealPathspathessstatssnamesdomsobjectsretsfileTypesnamess   indexMetasdirsspathXsdir((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pysgetSubDirsFromIndexMetarsB&&&&&&&&2&&&&&&&
&&
        !            41: &&cCs2|i&|&ƒ&}|o&ti|&|ƒSn&d&SdS(sÄmetadaten zu path als html aus dem index.meta file zu path
1.2       dwinter    42:         @param path: optional, default ist "", Pfad auf das Object relativ zum rootFolderName
                     43:         @return: metadata als html
1.4     ! dwinter    44:         sN(sselfsfindEntryInIndexMetaspathsxmlInfossOSAS_helperssgetMetaInfoFromXML(sselfspathsxmlInfos((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pysgetMetaInfoFromIndexMeta§s
        !            45: &&&c
        !            46: CsN&ti&iti&i|i|&ƒƒ&}|i}    |i   |iƒ&d&jo&hSn&&ti&i
        !            47: |ƒ&o&tSn&&ti|ƒ&}|ii|ƒ&o&|i|d&|tijo&|i|dSn&&ti|ƒ&}h}xV|D]N}ti&i||ƒ}ti|ƒ&}|o&||  i|ƒ&f||<qÚ&qÚW|ti|f|i|<|SdS(sçLiest files aus dem path und speichert im cache _v_filesystem.
1.1       dwinter    48: 
                     49:         @param path : path relativ zum root folder des Storagesystems
1.2       dwinter    50:         @return: directory der Form [pfad zum Objekt] -> (fileType,metadatum als String)
1.3       dwinter    51:         ii&N(sosspathsnormpathsjoinsselfsrootFolderNamesrealPathstestmdsmetaDatasfindsexistssNonesstatsstatss
_v_fileSystemshas_keysST_MTIMEslistdirsdirsretsfilenamesobjectsOSAS_helpersscheckOSASFileTypesfileTypesgetDisplayFieldsAsStr(
1.4     ! dwinter    52: sselfspathsrealPathsstatssobjectsretsfilenamesfileTypesdirsmetaData((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pysreadObjectsFromPath³s($&    &2&&&&!cCs¯g}xž|i|id&dg&ddƒ&D]{}||dijoa&|&it    |dddƒdƒ}&|di
        !            53: |&}|di}d||f}|i|ƒ&&q(&q(W|SdS(    s:&teste ob fuer diesen Typ, handler definiert sind und gibt einen entsprechenden Link zurueck, der das Object mit diesem Handler ausfuehrt.
1.2       dwinter    54:         @param path: Pfad auf das Objekt
                     55:         @param type: Typ des Objektes
                     56:         @return: (string) html-Fragment, link der das Objekt mit diesem Handler anzeigt.
1.4     ! dwinter    57:         s
obj_metatypessOSAS_HandlerObject__neus
1.1       dwinter    58: search_subi&s
1.4     ! dwinter    59: ignorePathss#<a target="_blank" href="%s">%s</a>N(sretsselfsZopeFinds    aq_parentshandlerstypesobjectTypesspathsreplacesgetattrsprefixsurlstitlestextsstringsappend(sselfspathstypesstringsurlstextsretshandler((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pysgiveHandlersÚs&"&&"&&
&&&cCs¡&|i&|&ƒ&}|o
        !            60: &h}n&&|i|&ƒ&}x7|iƒD])}   |i|    ƒ&o&||   ||  <q=&q=Wd&„}
        !            61: g}|iƒ}|i|
        !            62: ƒ&&x&|D]ü}|i|||dƒ}||ddjoB&d|tii|ƒ&df}|i||||dfƒ&&q™&||ddjoB&d|tii|ƒ&df}|i||||dfƒ&&q™&|itii|ƒ&d|||dfƒ&&q™W|SdS(  sCerzeuge liest die Objekte aus die im Pfad gespeichert sind
1.2       dwinter    63:         @param path: optional mit default='', Pfad relativ zu rootFolderName
                     64:         @return: List von Tripeln, (link_html,array of handlers,metainformationen) hierbei ist
                     65:         - (string) link_html ein html-Fragement, falls das Objekt vom Typ OSAS_dir ist, ist dies ein Link auf dieses Verzeichnis, sonst der Dateiname
                     66:         - (string) handler sind die Ergebnisse von giveHandlers fuer dieses Objekt
                     67:         - (string) metainformationen die Metainformationen zum Objekt als Ergebnis von readObjectsFromPath
1.4     ! dwinter    68:         cCst|iƒ|&iƒƒSdS(&N(scmps&xslowers&y(s&xs&y((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pyssortLowÿs&isOSAS_dirs<a href="?path=%s">%s</a>i&sOSAS_dir_archives<a href="?path=%s">%s (A)</a>N(sselfsreadObjectsFromPathspathsobjectssgetSubDirsFromIndexMetasimskeysskeyshas_keyssortLowsretsobjectSortedssortsobjectsgiveHandlersshandlersosssplitsstringsappend(sselfspathsstringsobjectSortedshandlersobjectsretsobjectssimskeyssortLow((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pysgenerateTreeìs0&&&
        !            69: &&
&    &
&&& "&& "2cCsj&ti&iti&i|i|&ƒƒ&}|iƒ}d&}ti&i
        !            70: |ƒ&}d}|ti&i
|ƒ&gg&}xft|ƒ&djoQ&|d}|djo&Pn&&|i|ti&i
|ƒ&gƒ&&ti&i
        !            71: |ƒ&}ql&Wx|djo&||di|iƒ&djo&|d||dd}n3&|d|d||dd ||dd}|d}qÕ&W|Sd
        !            72: S(s&generates navigation bar for viewfilessii&is<a>s</a>/s<a href=s?path=s&>N(sosspathsnormpathsjoinsselfsrootFolderNamespathTmpsabsolute_urlsURLsstringsdirnamestmppaths&isbasenamespathesslensappendsfind(sselfspathTmpspathessstringsURLs&istmppathspath((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pyspath_to_link&s*&$&&&
        !            73: &
&
&!&2&cCsti&||&ƒ}|Sd&S(sLese Metafile einN(sOSAS_helperssgetMetaFilesselfspathstmp(sselfspathstmp((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pysgetMetaFile5&s&&(s__name__s
1.3       dwinter    74: __module__s__doc__s meta_typesClassSecurityInfossecuritys
_v_fileSystems_v_metaFiless__init__sdeclareProtecteds
1.4     ! dwinter    75: index_htmls
findIndexMetasfindEntryInIndexMetasgetSubDirsFromIndexMetasgetMetaInfoFromIndexMetasreadObjectsFromPathsgiveHandlerssgenerateTreespath_to_linksgetMetaFile(((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pysOSAS_storeOnlines"&    &   &       7   5   ' ,c&Cs;tt&iittƒƒ&d&dƒƒ&i|ƒ&}&|&ƒSdS(s"interface for adding the OSAS_rootszptsaddStoreOnline.zptN( sPageTemplateFilesosspathsjoinspackage_homesglobalss__of__sselfspt(sselfspt((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pysmanage_addOSAS_storeOnlineForm>&s&&0&cCs>t|&ƒ&}|i|&|ƒ&|tj o&|id&ƒ&&n&&dS(sadd the OSAS_rootsmanage_mainN(sOSAS_storeOnlinesidsnewObjsselfs
        !            76: _setObjectsRESPONSEsNonesredirect(sselfsidsRESPONSEsnewObj((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pysmanage_addOSAS_storeOnlineC&s
        !            77: &&&&
&(s__doc__sOSAS_helperss
AccessControlsClassSecurityInfos'Products.PageTemplates.PageTemplateFilesPageTemplateFiles
1.1       dwinter    78: OFS.FoldersFoldersOFS.SimpleItems
1.3       dwinter    79: SimpleItemsGlobalssInitializeClassspackage_homeszLOGsossos.pathsstatsxml.dom.minidomsxmlstypessOSAS_storeOnlinesmanage_addOSAS_storeOnlineFormsNonesmanage_addOSAS_storeOnline(sxmlsstatsOSAS_storeOnlinesClassSecurityInfosInitializeClasssOSAS_helperss
1.4     ! dwinter    80: SimpleItemsmanage_addOSAS_storeOnlinesmanage_addOSAS_storeOnlineFormsPageTemplateFileszLOGsFoldersosspackage_home((sS/Users/dwinter/install/CVSZOPE/Zope/lib/python/Products/OSA_system2/OSAS_browser.pys&?s"    &
&
&
&
&& &   &   &   &   &ÿ+
        !            81:   

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