Out of the discussion at Dublin, we would like to formalise approval of all of the Phase 2 issues. We have informally discussed this approach and it was approved so this is just to document the approval separately so it's not lost in a sea of comments.
Proposal roadmap: Phase 2
Bring in features from contact_storage and finalise those missed in D8.0.
- #306662: Add redirect option to site-wide contact forms
- #2750613: Add option to store messages from contact forms
- #2750617: Add views integration and listing page for contact module Message entity.
- #2750621: Add bulk delete action plugin for contact module Message entity
- #2750629: Add view builder for contact module's Message entity
- #2750627: Add Edit and Delete forms for contact module Message entity
- #2750633: Add view builder for contact module's ContactForm entity
- #2689265: Allow changing the 'Send message' contact form string and optionally hiding the preview button
- #2750649: Add option to disable form submissions for contact forms
Required sign-off before proceeding this
Owner | Status | Description |
---|---|---|
Product manager @Dries or @webchick |
Pending | |
Release manager @catch and/or @xjm |
Pending |
Comments
Comment #2
naveenvalechaThanks @pameela
Updating issue summary with the sign off table. I have added the signoff needed by a framework manager as the issue was tagged with Needs release manager review Feel free to update the issue summary if its not needed.
// Naveen
Comment #3
naveenvalechaComment #4
webchickIn order to provide sign-off here from a product management POV, I need a bit more context as to what these features mean in terms of end-user facing functionality. What are the problems currently? What will the list of features get us at the end? Why do we think that's the right stuff to work on, and in the right order?
Comment #5
pameeela CreditAttribution: pameeela commentedMy understanding is it's porting the basics of contact storage into core, in order to lay the groundwork for future features.
@jibran, @larowlan, @berdir can provide more context.
Comment #6
jibranI think we covered all that during our call on
Fri 3 Jun 2016
orThu 2 Jun 2016
for @xjm and @webchick. These are all those issues we specifically discussed on the call with @webchick and @xjm. We just want to get the formal approval on that.If you still need further information then we can setup another call.
Comment #7
jibranChanging a status to get a reply.
Comment #8
askibinski CreditAttribution: askibinski at iO commentedJust wondering if the problem of scaling was discussed in the process.
It was mentioned by larowlan here about a year ago:
and:
Can't find discussion about this in the issue queues but it does seem to be one of the reasons people are choosing yamlform instead of contact + contact_storage.
Comment #9
fenstrat@askibinski Many forms/fields is indeed an issue for contact & contact_storage, however I believe that would fall into the 20% usecase for webform (FYI yamlform looks set to rename to webform).
Comment #10
Gábor Hojtsyis it possible to inform others or should @webchick and @xjm be the ones who are informed on calls only? You can imagine people will look at this, its a public posting and wonder what are the problems being solved, etc. That @webchick and @xjm have been told on a phone call sounds good, but not very informative unfortunately :/
Comment #11
yoroy CreditAttribution: yoroy at Roy Scholten commentedIn light of Webform being alive and kicking for D8, I wonder if that changes the desire/need for this. What do people think?
Comment #12
andypostAs maintainer of contact I still sure parts of contact storage should be updated in core at least, for example storage itself which is used in core tests
Webform showed incredible growth and some parts could be moved to core for sure!
-
WebformElement
- could be a foundation of "elements-NG" for core cos a lot code duplication- WebformHandler - could be integration to core contact for submission where by default we have only "EMail" no storage
Comment #13
jrockowitz CreditAttribution: jrockowitz as a volunteer and at The Big Blue House commentedThe WebformElement plugin acts as a wrapper around Core's Element plugin so that form and render elements can be integrated into Webform module. In many ways, the WebformElement plugin contains similar/duplicate code from FieldType and FieldWidget plugins.
The big difference between Drupal's Field API and Webform's Element API is Field API is focused on flexibility at the presentation layer while Webform's Element/Handler APIs are focused on flexibility at the data collection/form layer. I feel that Drupal's adoption of a front-end framework for the admin UI is going to significantly change Drupal's Form API. There are some nuances addressed by the WebformElement plugin that could help Form API. For example, the WebformElement plugin defines all of a form element's default and translatable properties. It also provides methods to determine if an element returns multiple and/or composite values.
WebformHandlers are very similar to the Rules module's Action plugins. The only benefit that WebformHandlers has over Rules is a simpler UI/UX. I think exploring bringing the Rules module into Core could solve how the Contact module manages and sends an email. Core would benefit from having a universal and customizable mechanism to send notifications. For example, many aspects of the user registration emails are hard-coded when they should/could be fully configurable via the Rules modules. It would be pretty awesome to be able to confirm user registrations via a Slack channel.
In summary, elements-NG is going to require a lot of thought and planning especially if Core is going to be leveraging a front-end framework like React. BTW, Drupal could learn a lot from Form.io's approach to building and distributing forms to multiple channels.
If Drupal Core was to improve the ability to send notifications, it would solve multiple changes faced by the Contact module or other modules. In theory, if any entity could send notifications, we may no longer need a dedicated Contact module, since any Entity could potentially act as Contact form especially if we then allowed backend-storage to be optional.
Comment #14
andypost@jrockowitz thanx a lot for explanation! There's ongoing work about forms-ng #2913372: Allow forms to be defined in three segments: schema, UI, data
Looks we have 3 "actions" plugins - core, rules & webform)
Comment #15
nod_Need review from product/release manager.