Commit 7aafcc19 authored by Amos Latteier's avatar Amos Latteier

Added automatic constructor permission creation to the ZClass wizard.

parent 05a3989d
...@@ -259,7 +259,8 @@ class ZClassPermissionsSheet(OFS.PropertySheets.PropertySheet, ...@@ -259,7 +259,8 @@ class ZClassPermissionsSheet(OFS.PropertySheets.PropertySheet,
self.setClassAttr('__ac_permissions__', tuple(r)) self.setClassAttr('__ac_permissions__', tuple(r))
return self.manage(self, REQUEST, if REQUEST is not None:
return self.manage(self, REQUEST,
manage_tabs_message="Permissions updated") manage_tabs_message="Permissions updated")
...@@ -151,13 +151,24 @@ def manage_addZClass(self, id, title='', baseclasses=[], ...@@ -151,13 +151,24 @@ def manage_addZClass(self, id, title='', baseclasses=[],
id+' constructor', id+' constructor',
addDefault % {'id': id}, addDefault % {'id': id},
) )
self.manage_addPermission(
id+'_add_permission',
id+' constructor permission',
'Add %ss' % meta_type
)
self.manage_addPrincipiaFactory( self.manage_addPrincipiaFactory(
id+'_factory', id+'_factory',
id+' factory', id+' factory',
meta_type, meta_type,
id+'_addForm', id+'_addForm',
'Add %ss' % meta_type
) )
getattr(self,id).propertysheets.permissions.manage_edit(
selected=['Add %ss' % id])
getattr(self,id).manage_setPermissionMapping(
permission_names=['Create class instances'],
class_permissions=['Add %ss' % meta_type]
)
if REQUEST is not None: if REQUEST is not None:
return self.manage_main(self,REQUEST, update_menu=1) return self.manage_main(self,REQUEST, update_menu=1)
......
...@@ -51,7 +51,7 @@ ...@@ -51,7 +51,7 @@
<TD ALIGN="LEFT" VALIGN="TOP" COLSPAN="2"> <TD ALIGN="LEFT" VALIGN="TOP" COLSPAN="2">
<INPUT TYPE="CHECKBOX" NAME="CreateAFactory:int" VALUE="1" <INPUT TYPE="CHECKBOX" NAME="CreateAFactory:int" VALUE="1"
<!--#if CreateAFactory-->CHECKED<!--#/if-->> <!--#if CreateAFactory-->CHECKED<!--#/if-->>
<STRONG>Create Factory and add methods.</STRONG> <STRONG>Create constructor objects.</STRONG>
</TD> </TD>
</TR> </TR>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment