take-away menu for a resturant

Posts: 33
Joined: 01/30/2008

I'm building a take-away website for a restaurant.

A simplified description of the features:

- The chef has 20 main dishes and 20 deserts.
Every week he places 5 main dishes and 5 deserts in the week's menu.

- There are three methods to order:
1. Normal meal that contain 1 main dish and 1 desert.
2. Child meal that contain 1/2 main dish and 1/2 desert.
3. custom meal: the user will have a form with a list of all the week's dishes and deserts:
dish name | normal | child
--------------------------------
chicken | checkbox | checkbox
meet | checkbox | checkbox

Is this possible with ubercart?

I know I can create the chicken and meet as attributes and a meal (section 1) as a subproduct.
Every week the chef will create a new subproduct and choose 5 main dishes and 5 deserts.

How can I create the child meal which contains the same options as the meal but with half the size?

- How can I create the form of the custom meal? Does EC support it or do I have to create it myself?

- How can the chef put all the current week dishes and deserts to the custom meal list?
The chef already choose the current week dishes in the normal meal configuration and I don't want him to have to repeat it for the child meal and the custom meal.

- When a user creates a custom meal, can the module check if it can combine few of the producs to make a nomal meal and lower the price?

Thanks

Posts: 301
Joined: 11/19/2007
Bug FinderGetting busy with the Ubercode.

One idea for the child meal/normal meal is to place an additional required attribute on your product called Portion Size with options child and normal. You can assign a negative cost adjustment to the child option, like -$2.00. This would get around the problem of having to enter a meal, a description, and all of the other attributes twice.

Posts: 33
Joined: 01/30/2008

Nice idea but how can I handle the custom meal?

It all looks like a day to day situation to me and not some crazy thing:

A resturant choose dishes for each week menu with taxamony or something.
The client can buy a meal or just choose from a list of all the dishes in the menu.

Posts: 301
Joined: 11/19/2007
Bug FinderGetting busy with the Ubercode.

The custom meal sounds like it could be a job for attributes which allow multiple options to be selected, similar to the pizza toppings scenario discussed here: http://www.ubercart.org/forum/ideas_and_suggestions/1947/multiselect_att...

I don't believe anything has been implemented to achieve this yet, but that thread might give you some ideas.

Posts: 33
Joined: 01/30/2008

I'm struggling for hours on this one but just can't find a solution.

I want to sell products as stand alone or as part of a meal.

The chef has to see the total number of products soldas stand alone and as a part of a meal.
If a customer buys a chicken the chef doesn't care if it is part of a meal or just a chicken he still has to make it. That's why I can't use attributes.

When buying a meal the costumer will have radio buttons for each dish.

I can use forms to do both the custom meal and the normal/child meal but then I'll have a problem with the cart.

Let's say I can populate the cart with all the products selected using my custom forms.
When a user will remove a product the cart can't tell it was part of a meal...

Posts: 301
Joined: 11/19/2007
Bug FinderGetting busy with the Ubercode.

Can you add all your meals as products and then have an attribute for meal type and an attribute for portion?

Meal Type would have options of full meal or a la carte, portion would be child or normal. Both of these affecting price.

This might give you the structure you need in order to have a cart that correctly reflects what needs to be prepared, and then you could maybe create a custom form and use Cart Links or something else to make the customer experience nice?

With this, your cart would look like...

2 Chicken $10.00
-Meal
-Normal Portion

1 Chicken $4.00
-a la carte
-Normal Portion

1 Chicken $2.00
-a la carte
-Child Portion

Is that any closer to a solution for you?

Posts: 33
Joined: 01/30/2008

Let's say I'm building a form that can do whatever I want and send the selected products to the cart as you suggested.

If a user will choose a full meal he'll get the discount.
Now, if the user will remove part of the full meal in the cart page he'll still get the discount for the rest of the meal although he doesn't deserve it anymore.