0

Currently, I have a D7 site and my main Content region is displayed using Page Manager and Panels variants. I've created an Entityform Type that allows users to request an appointment, and I'd like this specific entityform type to have a different layout than what the default page.tpl.php provides.

I'd love to provide a default panels layout for all Entityform types, but I can't seem to find a way to do this (even using the Entityform Panels module.) I've come close by using the "Page manager existing pages", but submission pages display in the default page.tpl.php.

Is there a way to do this?

1

What we have done so far, is to reference an Entity-Form in an node type with entityreference. This works so far. The Form will be displayed in the panelized theme and the preview will show up too in the correct context. But!

  • The Preview will not show the labels of empty fields
  • The submission Page will not show in the correct layout and is still loosing context (even with pm-existing-pages)
  • List fields are broken, if core Patch https://www.drupal.org/node/1677598 is applied they don't break the form submit, but are empty in the preview and not saved.
  • Date fields with time are somehow broken too. Time is not safed, Date only when using the PopUp Calender

We decided to use the redirect option instead of the submission page to workaround the layout problem with the submission. The Preview is still broken and we are trying to get it fixed.

Conclusion: Entityforms and Panels do not play well together. If we would have know this before we would have built a custom module or used Webform 4.x instead (we are still using webform 3.x in this site but there you don't have the option to use views to manipulate submitted data without loading another bunch of buggy modules!)

Hopfully Drupal 8 and YAML-Forms do a better Job in the future.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.