For a new project I'm starting, Panels+Panelizer seems a very good fit, but I'm still figuring out how to do some advanced things with it.
I like the fact that you can define the default layout and content panes for a certain node type, and allow the editor to override the default panes per node.
In some cases I want the layout and content panes to be dependent on certain conditions. For instance, if the date field on a node is not empty, I want a calendar pane in the right column; otherwise I want a 'related news' pane.
I have read about visibility rules, but the options seem rather limited (eg. there is no "not empty" condition for fields) and it does not allow you to change the layout completely. Which other methods exist make the default layout and content panes depend on certain conditions (other than the node type)?