diff --git a/CHANGES.txt b/CHANGES.txt index 75bb182..2b64f00 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,6 +1,14 @@ Changelog ========= +1.0 (2011-01-24) +---------------- + +- Check if the current user has configured an e-mail address for the email + notification option. This fixes http://dev.plone.org/plone/ticket/11428. + [timo] + + 1.0RC2 (2011-01-24) ------------------- diff --git a/plone/app/discussion/browser/comments.py b/plone/app/discussion/browser/comments.py index 0c2a9e4..f7fd9c3 100644 --- a/plone/app/discussion/browser/comments.py +++ b/plone/app/discussion/browser/comments.py @@ -106,10 +106,17 @@ class CommentForm(extensible.ExtensibleForm, form.Form): registry = queryUtility(IRegistry) settings = registry.forInterface(IDiscussionSettings, check=False) - portal_membership = getToolByName(self.context, 'portal_membership') + mtool = getToolByName(self.context, 'portal_membership') + member = mtool.getAuthenticatedMember() + member_email = member.getProperty('email') - if not settings.user_notification_enabled or portal_membership.isAnonymousUser(): - self.widgets['user_notification'].mode = interfaces.HIDDEN_MODE + # Hide the user_notification checkbox if user notification is disabled + # or the user is not logged in. Also check if the user has a valid email + # address + if member_email == '' or \ + not settings.user_notification_enabled or \ + mtool.isAnonymousUser(): + self.widgets['user_notification'].mode = interfaces.HIDDEN_MODE def updateActions(self): super(CommentForm, self).updateActions() diff --git a/setup.py b/setup.py index 1c8979a..71fd25a 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,7 @@ import sys from setuptools import setup, find_packages -version = '1.0RC2' +version = '1.0dev' install_requires = [ 'setuptools',