On a new development, CS-Cart 3.0.3 Professional:
Basically, we're trying to do something a bit “in between” a conventional “product option” and an “upsell another item on the same page”.
We want to be able to take an option as a text input of a number, and then charge the customer that number times the per-upsell cost.
In short, it would look like
Blue Widget: $499.99
Add  Red widgets at $99.99/each
Add [4 ] Green widgets at $49.99/each
Add [0 ]Electric Purple widgets at $49.99/each
Our first approach was to use a “select” type for the option, with choices of “None”, “1pc”, “2pcs”…“99pcs” with appropriate add-on prices.
This has two problems:
- It's a real pain to set up an option and change prices. Many items we're selling have as many as 20-30 options we want to market this way.
- It CLOBBERS the server. It blew past a 128Mb memory_limit declaration and needs 512Mb to be happy. Even on an Amazon AWS “medium” instance, with the database on RDS, it's taking 10 seconds plus to render a product page with 20-30 options. It even makes the category pages pretty slow.
It seems like we can do a text field, but we can't set up any logic to add a price based on what's enterred in it.
I think we could probably cope with those limitations, except the 10 second page load time. It's just not viable.
This is a deal-breaker for this particular usage. If we can't get a worthwhile alternative, we're looking at scrapping CS-cart entirely and building a custom cart.