私はPlone4.1とcollective.externaleditorを使用しています。新しいユーザーが作成されるたびに、そのユーザーの個人設定ext_editorがTrueに設定されるようにしたいと思います。
ユーザー作成イベントのサブスクライバーを作成しましたが、そのプロパティを変更できません。
configure.zcml:
...
<subscriber
for="Products.PluggableAuthService.interfaces.events.IPrincipalCreatedEvent"
handler=".events.newUser"
/>
events.py:
from zope.app.component.hooks import getSite
from Products.CMFCore.utils import getToolByName
def newUser(user):
'''Sets external editor property to True for new users.'''
mtool = getToolByName(getSite(), 'portal_membership')
# what should i put here?
user.principal.setProperties({'ext_editor': True})
newUserはその作業を行っていません。user.principalのタイプはPloneuserです。setMemberPropertiesメソッドがないので、どうしたらよいかわかりません。
collective.externaleditorは、コントロールパネルにもプロパティ'ext_editor'を追加するので、プログラムで変更できます。
新しく作成されたユーザーに対してext_editorをTrueに設定するにはどうすればよいですか?
ありがとう。