Changeset 801

Show
Ignore:
Timestamp:
02/23/07 07:45:41
Author:
crchemist
Message:

Added compatibility with plone-2.1

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • qPloneEditorGroup/trunk/Extensions/Install.py

    r800 r801  
    33from Products.CMFCore import CMFCorePermissions  
    44from Products.CMFCore.utils import getToolByName 
     5from StringIO import StringIO 
    56 
    67 
    78def install(self): 
    89    """ install product """ 
     10    out = StringIO() 
    911    portal = getToolByName(self,'portal_url').getPortalObject() 
    1012    self._addRole('Editor') 
    1113    acl = self.acl_users 
    12     acl.changeOrCreateGroups(['Editors'],['Editor']) 
    13     wt = portal.portal_workflow 
     14    acl.changeOrCreateGroups(roles = ['Editor'], new_groups=['Editors']) 
     15    out.write('Added Editors group and Editor role\n') 
     16 
     17    wt = getToolByName(portal, 'portal_workflow') 
    1418    fflow = wt.folder_workflow 
    1519    pflow = wt.plone_workflow 
    16     for state in fflow.states: 
    17         for p in fflow.getManagedPermissions: 
     20 
     21    for name, state in fflow.states.items(): 
     22        for p in state.getManagedPermissions(): 
    1823            info = state.getPermissionInfo(p) 
    19             state.setPermision(p, info['acquired'], tuple(info['roles'])+'Editor') 
    20     for state in pflow.states: 
    21         for p in fflow.getManagedPermissions: 
     24            state.setPermission(p, info['acquired'], tuple(info['roles'])+('Editor',)) 
     25 
     26    for name, state in pflow.states.items(): 
     27        for p in state.getManagedPermissions(): 
    2228            info = state.getPermissionInfo(p) 
    23             state.setPermision(p, info['acquired'], tuple(info['roles'])+'Editor') 
     29            state.setPermission(p, info['acquired'], tuple(info['roles'])+('Editor',)) 
     30 
     31    return out.getvalue() 
  • qPloneEditorGroup/trunk/__init__.py

    r800 r801  
    1 from Products.CMFPlone.interfaces import IPloneSiteRoot 
    2  
    3  
    4 from Products.GenericSetup import EXTENSION 
    5 from Products.GenericSetup import profile_registry 
     1try: 
     2    from Products.CMFPlone.interfaces import IPloneSiteRoot 
     3    from Products.GenericSetup import EXTENSION 
     4    from Products.GenericSetup import profile_registry 
     5    has_profiles = True 
     6except ImportError: 
     7    has_profiles = False 
    68 
    79def initialize(context): 
     10    if has_profiles: 
     11        profile_desc = "Installs Editor role & group." 
     12        profile_registry.registerProfile('default', 
     13                                         'EditorProfile', 
     14                                         profile_desc, 
     15                                         'profiles/default', 
     16                                         'EditorProfile', 
     17                                         EXTENSION, 
     18                                         for_=IPloneSiteRoot) 
     19    else: 
     20        pass 
    821 
    9     profile_desc = "Installs Editor role & group." 
    10     profile_registry.registerProfile('default', 
    11                                      'EditorProfile', 
    12                                      profile_desc, 
    13                                      'profiles/default', 
    14                                      'EditorProfile', 
    15                                      EXTENSION, 
    16                                      for_=IPloneSiteRoot, 
    17                                      ) 
    18