from retrieval import Retrieval import sys import Globals, OFS, webdav class ZRetrieval(OFS.Folder.Folder): id = 'retrieval' name = 'ZRetrieval' icon = 'misc_/zretrieval/icon.gif' meta_type = 'ZRetrieval' _properties = ( {'id' : 'title', 'type' : 'string', 'mode' : 'w'}, {'id' : 'root', 'type' : 'string', 'mode' : 'w'}, ) all_meta_types={'name': 'Database', 'action': 'manage_addZRetrievalDatabase'}, manage_options = ( OFS.Folder.Folder.manage_options[0], OFS.Folder.Folder.manage_options[2], OFS.Folder.Folder.manage_options[3], OFS.Folder.Folder.manage_options[4], OFS.Folder.Folder.manage_options[5], OFS.Folder.Folder.manage_options[6], OFS.Folder.Folder.manage_options[7], ) manage_addZRetrievalDatabase = Globals.DTMLFile('manage/add_database', globals()) def manage_add_database(self, id, title, REQUEST=None): """Add a new ZRetrievalDatabase instance""" handle = ZRetrievalDatabase(REQUEST.name) handle.id = id handle.title = title handle.name = REQUEST.name handle.root = REQUEST.root self = self.this() self._setObject(id, handle) if REQUEST is not None: REQUEST['RESPONSE'].redirect(self.absolute_url()+'/manage_main') return def __init__(self, root): OFS.Folder.Folder.__init__(self) self._v_system = Retrieval(root) return def init(self): self._v_system = Retrieval(self.root) return def open(self, name, format): if not hasattr(self, '_v_system'): self.init() return self._v_system.open(name, format) def find(self, db, query, first, last): return db.find(query, first, last) manage_addZRetrieval = Globals.DTMLFile('manage/add', globals()) def manage_add(self, id, title, REQUEST=None): """Add a new ZRetrieval instance""" handle = ZRetrieval(REQUEST.root) handle.id = id handle.title = title handle.root = REQUEST.root self = self.this() self._setObject(id, handle) if REQUEST is not None: REQUEST['RESPONSE'].redirect(self.absolute_url()+'/manage_main') return class ZRetrievalDatabase(OFS.SimpleItem.SimpleItem, OFS.PropertyManager.PropertyManager): id = 'database' name = 'ZRetrievalDatabase' icon = 'misc_/zretrieval/icon.gif' meta_type = 'ZRetrievalDatabase' _properties = ( {'id' : 'title', 'type' : 'string', 'mode' : 'w'}, {'id' : 'name', 'type' : 'string', 'mode' : 'w'}, {'id' : 'root', 'type' : 'string', 'mode' : 'w'}, ) manage_options = ( { 'label' : 'Properties', 'icon' : '', 'action' : 'manage_propertiesForm', 'target' : '_self', }, OFS.SimpleItem.SimpleItem.manage_options[1], OFS.SimpleItem.SimpleItem.manage_options[2], OFS.SimpleItem.SimpleItem.manage_options[0], )