Add some portal messages

This commit is contained in:
Frédéric Péters 2011-07-31 15:39:19 +02:00
parent 691239023c
commit c332940ef7
1 changed files with 14 additions and 0 deletions

View File

@ -85,6 +85,15 @@ class Participate(BrowserView):
new_id = '%s-%s' % (new_id, counter)
break
for attr in ('name', 'address', 'zipcode', 'locality', 'phone',
'email', 'answer1', 'answer2'):
if not self.request.form.get(attr, '').strip():
self.context.plone_utils.addPortalMessage(
_(u'You must fill all fields to participate.'),
type='warning')
self.request.response.redirect('./')
return
type_info = portal_types.getTypeInfo('tabellio.contest.participant')
type_info._constructInstance(self.context, new_id)
object = self.context[new_id]
@ -105,6 +114,11 @@ class PickWinner(BrowserView):
if potential_winners:
winner = random.SystemRandom().choice(potential_winners)
winner.winner = True
self.context.plone_utils.addPortalMessage(
_(u'A winner has been picked.'))
else:
self.context.plone_utils.addPortalMessage(
_(u'No winner could be found.'), type='error')
self.request.response.redirect('./participants')