Advertisement
Guest User

manage_addProduct

a guest
Jan 7th, 2013
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.00 KB | None | 0 0
  1. ###
  2. ### Devistan.py
  3. ###
  4. from bahmanm.devistan.interfaces import IDevistan
  5. from zope.interface import implements
  6. from OFS.Folder import Folder
  7. from Products.PageTemplates.PageTemplateFile import PageTemplateFile
  8. from Acquisition import Implicit
  9. from Globals import Persistent, InitializeClass
  10. from AccessControl.Role import RoleManager
  11. from OFS.ObjectManager import ObjectManager
  12. from OFS.PropertyManager import PropertyManager
  13. from OFS.FindSupport import FindSupport
  14.  
  15.  
  16. class Devistan(Implicit, Persistent, RoleManager, Folder):
  17.     """Devistan product implementation.
  18.    """
  19.     implements(IDevistan)
  20.     meta_type = 'Devistan Site'
  21.     _properties = ({'id': 'title', 'type': 'string', 'mode': 'wd'},)
  22.     manage_options = (
  23.         ObjectManager.manage_options +
  24.         ({'label': 'View', 'action': ''}, ) +
  25.         PropertyManager.manage_options +
  26.         RoleManager.manage_options +
  27.         Folder.manage_options +
  28.         FindSupport.manage_options
  29.         )
  30.     index_html = PageTemplateFile(
  31.         '../template/devistan/index.pt', globals())
  32.  
  33.     def __init__(self, id=None):
  34.         if id is not None:
  35.             self.id = str(id)
  36.  
  37. InitializeClass(Devistan)
  38.  
  39.  
  40. manage_addDevistanForm = PageTemplateFile(
  41.     '../template/devistan/manage_addDevistanForm.pt', globals())
  42.  
  43.  
  44. def manage_addDevistan(self, id, title='', REQUEST=None):
  45.     """Adds a new Devistan instance.
  46.    """
  47.     obj = Devistan(id)
  48.     obj.title = title
  49.     self._setObject(id, obj)
  50.     if REQUEST is not None:
  51.         return self.manage_main(self, REQUEST, update_menu=1)
  52.     return "<p>Devistan instance successfully installed: <tt>%s</tt>" % id
  53.  
  54.  
  55. def initialize(self):
  56.     self.registerClass(
  57.         Devistan,
  58.         constructors=(manage_addDevistanForm,
  59.                       manage_addDevistan))
  60.  
  61.  
  62. ###
  63. ### bin/instance debug
  64. ###
  65. #>>> app.manage_addProduct['Devistan'].manage_addDevistan
  66. #Traceback (most recent call last):
  67. #  File "<stdin>", line 1, in <module>
  68. #AttributeError: manage_addDevistan
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement