[ Index ] |
|
Code source de Kupu-1.3.5 |
1 ############################################################################## 2 # 3 # Copyright (c) 2003-2005 Kupu Contributors. All rights reserved. 4 # 5 # This software is distributed under the terms of the Kupu 6 # License. See LICENSE.txt for license text. For a list of Kupu 7 # Contributors see CREDITS.txt. 8 # 9 ############################################################################## 10 """Zope2 integration module 11 12 This is a solution for plain Zope2 integration using the 13 FileSystemSite product. FileSystemSite can be found at 14 http://www.zope.org/Members/k_vertigo/Products/FileSystemSite 15 Note that FileSystemSite 1.3 is required. 16 17 $Id: __init__.py 9879 2005-03-18 12:04:00Z yuppie $ 18 """ 19 20 import Globals 21 from Products.PageTemplates.PageTemplateFile import PageTemplateFile 22 23 from Products.FileSystemSite.DirectoryView import DirectoryView 24 from Products.FileSystemSite.DirectoryView import DirectoryViewSurrogate 25 from Products.FileSystemSite.DirectoryView import DirectoryRegistry 26 from Products.FileSystemSite.DirectoryView import registerFileExtension 27 from Products.FileSystemSite.DirectoryView import manage_listAvailableDirectories 28 from Products.FileSystemSite.FSFile import FSFile 29 30 def initialize(context): 31 context.registerClass( 32 KupuEditorSurrogate, 33 constructors=(('manage_addKupuEditorForm', manage_addKupuEditorForm), 34 manage_addKupuEditor 35 ), 36 icon='kupu_icon.gif' 37 ) 38 39 #_dirreg = DirectoryRegistry() 40 from Products.FileSystemSite.DirectoryView import _dirreg 41 _dirreg.registerDirectory('../common', globals()) 42 43 # for library drawers 44 registerFileExtension('xsl', FSFile) 45 registerFileExtension('xml', FSFile) 46 47 class KupuEditor(DirectoryView): 48 meta_type = 'kupu editor' 49 50 def __of__(self, parent): 51 info = _dirreg.getDirectoryInfo(self._dirpath) 52 if info is not None: 53 info = info.getContents(_dirreg) 54 if info is None: 55 data = {} 56 objects = () 57 else: 58 data, objects = info 59 s = KupuEditorSurrogate(self, data, objects) 60 res = s.__of__(parent) 61 return res 62 63 Globals.InitializeClass(KupuEditor) 64 65 class KupuEditorSurrogate(DirectoryViewSurrogate): 66 meta_type = "kupu editor" 67 68 Globals.InitializeClass(KupuEditorSurrogate) 69 70 manage_addKupuEditorForm = PageTemplateFile('addKupuEditor.pt', globals()) 71 72 def createKupuEditor(parent, filepath, id=None): 73 """Adds either a DirectoryView or a derivative object. 74 """ 75 info = _dirreg.getDirectoryInfo(filepath) 76 if info is None: 77 raise ValueError('Not a registered directory: %s' % filepath) 78 if not id: 79 id = path.split(filepath)[-1] 80 else: 81 id = str(id) 82 ob = KupuEditor(id, filepath) 83 parent._setObject(id, ob) 84 85 def manage_addKupuEditor(self, filepath="Products/kupu/common", 86 id=None, REQUEST=None): 87 """Adds either an kupu editor object 88 """ 89 createKupuEditor(self, filepath, id) 90 if REQUEST is not None: 91 return self.manage_main(self, REQUEST)
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
Généré le : Sun Feb 25 15:30:41 2007 | par Balluche grâce à PHPXref 0.7 |