Tweak form handling for sending a new message, for more customization

This commit is contained in:
Lance Edgar 2017-02-13 17:37:16 -06:00
parent 70e5915e51
commit 051b52bd4b
4 changed files with 46 additions and 22 deletions

View file

@ -132,11 +132,14 @@ class MasterView(View):
# let save_create_form() return alternate object if necessary
obj = self.save_create_form(form) or form.fieldset.model
self.after_create(obj)
self.request.session.flash("{} has been created: {}".format(
self.get_model_title(), self.get_instance_title(obj)))
self.flash_after_create(obj)
return self.redirect_after_create(obj)
return self.render_to_response('create', {'form': form})
def flash_after_create(self, obj):
self.request.session.flash("{} has been created: {}".format(
self.get_model_title(), self.get_instance_title(obj)))
def save_create_form(self, form):
self.before_create(form)
form.save()

View file

@ -209,6 +209,7 @@ class MessagesView(MasterView):
if self.creating:
form.id = 'new-message'
form.cancel_url = self.request.get_referrer(default=self.request.route_url('messages.inbox'))
form.create_label = "Send Message"
return form
def configure_fieldset(self, fs):
@ -288,6 +289,10 @@ class MessagesView(MasterView):
message = form.fieldset.model
message.sender = self.request.user
def flash_after_create(self, obj):
self.request.session.flash("Message has been sent: {}".format(
self.get_instance_title(obj)))
def filter_reply_recipient(self, user):
return user.active