Scenario:

  1. Article content type.
  2. Default display created.
  3. Create a few nodes, all using the default display.
  4. One of the nodes has its per-object display customized.
  5. Client decides the new display should be used for all articles.

The only way of handling the client's request in #5 is by manually updating the content type's display to match that of the customized node.

It would be occasionally useful if there was a way to push the changes from the per-object (node) level uphill to the per-entity / per-bundle level.

Comments

merlinofchaos’s picture

As a (crappy) workaround, you can in the database take the display ID from the customized entity and assign that did to the default setting in the database. You may then want to delete the old display which will become orphaned.

This query might be close:

update panelizer_defaults SET did = (SELECT did FROM panelizer_entity WHERE entity_type = :entity_type AND entity_id = :entity_id AND revision_id = :revision_id) WHERE name = :default_name;

While this is not at all ideal, it will suffice and save a great deal of time of reproducing a display. Also it might not be too hard for someone to write a little feature that can do this automatically knowing that this is how to do it, and that might be more efficient than waiting for me to get around to it. :)

damienmckenna’s picture

@merlinofchaos: Thanks for the proof of concept query, I've discussed it with a co-worker who's starting a new project, we might see about building a patch for this if I can build up sufficient interest. It would, of course, need a confirmation page, but it wouldn't be too much work.