Dynamically enabling checkout panes based on cart contents?
I am working on a service booking website and below is a customer scenario:
i) A customer arrives at the site, views the various services and clicks the "make a booking link" for a particular service.
ii) They are redirected, a view of all available services of that type (product with time/date field & service_type_id) is then generated.
iii) The customer selects the timeslot suited and clicks on a "Book now" button (overidden "Add to Cart"), the Review page is skipped and they are redirected to the checkout page
On the checkout page I am trying to dynamically add suggested services that compliment their current selection. The problem I am having is how to dynamically add this checkout pane?
Currently I am using rules to detect what service has been added to cart, using entity has the field (service_type_id) & a data comparison to allow me to know what added service type I should suggest.
What is the best way to go about dynamically adding panes based on the contents of the cart?
I have tried using commerce extra panes & think I will have to write series of rules that enable/disable checkout panes based on the carts contents.
I am wondering if there is a simpler way to get the functionality I am looking for?
Any thoughts/help appreciated.