Even quantities only

Former Member
Former Member $organization

One of our promoters - AEG - is looking to restrict sales for a particular scenario (a dedicated price zone & price type) to even quantities of seats only.

Ideally we'd like to allow the qty drop down on TNEW to only provide 2, 4, 6, 8 etc. options.
This is not presently possible.

I thought of setting pricing rules of 1-1 qty, 3-3, etc. to switch to an invalid price type, therefore triggering an error at the cart - while it prevents the purchase of odd qunatities is a terrible customer experience.

Would love to know if anyone has come up with a solution?

Parents
  • We do this with some frontend javascript. Won't prevent the API or TNEW application from processing an odd number of tickets, but it removes the option from the everyday user, and that solves the problem for us. Call the below function, passing in the pricetype ID that you wish to remove odd quantities from, in a jQuery "document ready" handler. If you also need to filter to a specific zone's dropdown, you'll need to do a little more jQuery magic with your selector.

        function removeOddTicketQtyForPriceFromSingle(priceType) {
            $('select.tnew-selectseating-form-pricetype-select[title=' + priceType + ']').children()
                .each(function () {
                    if ($(this).attr('value') % 2 === 1) {
                        $(this).remove();
                    }
                });
        }

Reply
  • We do this with some frontend javascript. Won't prevent the API or TNEW application from processing an odd number of tickets, but it removes the option from the everyday user, and that solves the problem for us. Call the below function, passing in the pricetype ID that you wish to remove odd quantities from, in a jQuery "document ready" handler. If you also need to filter to a specific zone's dropdown, you'll need to do a little more jQuery magic with your selector.

        function removeOddTicketQtyForPriceFromSingle(priceType) {
            $('select.tnew-selectseating-form-pricetype-select[title=' + priceType + ']').children()
                .each(function () {
                    if ($(this).attr('value') % 2 === 1) {
                        $(this).remove();
                    }
                });
        }

Children