Feedback about submission tailor

Hello,

I’m testing the 4.4 and form submission handled by tailor. It’s great to see user submission handled by core team using tailor :+1:

After some tests, I have small feedback / feature request about it to make it even more flexible :

  • Add an option to make record entry not editable.
    When you collect product comment, or user feedback, it’s OK to be able to edit it on backend. But when you collect contact form, it make non sense to be able to edit the form submission. An option like preventEdit: true would be a great addition
  • Allow to contact a list of email address directly
    notifyGroup is great, but for a contact form, it’s a quite common use case to send the result of the form to an email address that is not an admin of the website, so being able to directly list one or several email address on the blueprint definition would add some flexibility
  • Add an option to not be able to add new submission from the backend
    Again, when submission is a product feedback or comment, it can be usefull to be able to directly add it from backend. But when it’s a contact form, it make non sense. So an option to disable the add button would be great
  • Remove validation workflow. Same here, very usefull when it’s for user feedback, make non sense for a contact form
  • Add submitted data (or ID of the created record) in a session because it’s a quite often use case to redirect the user to another page after submission, with the need to display some just submitted informations.

Thank you

2 Likes

Well, we’ve researched this blueprint type and I can say it is really-really powerful now. With the tags it has become extremly easy to setup the multi-step forms.

I will leave a note here regarding the last feature mentioned here:

Add submitted data (or ID of the created record) in a session

You can use the event and store anything you want in session, there is no need to keep this in core of OctoberCMS.

More then that. We are thinking to replace our contact forms with this blueprint type as this seems even easier then keeping a small custom-made plugin.

We figured that using the event listen we can generate a uuid and keep it in a field that is not shown in form. No matter how many steps there are in this form, we then redirect to dedicated thank you page with this uuid as a url param. In this thank_you_page we can use:

[section formdata]
handle = "XXX\YourSubmitionHandler"
identifier = "uuid_field"
value = "{{ :uuid_url_param }}"

This page can now say: Thank you {{ formdata.name }}!
And fire any other logic you need.

@daftspunk the only issue here is the index creation in the DB for the fields used as keys to the record. And in reality, we are often writing the small migrations to alter database tailor tables to create indexes. Maybe we should have a build in options for that?

1 Like