A basket case

The cart itself is a grid showing the products in the cart and the quantity of each. It's enclosed in a window with a couple of action buttons at the bottom as follows:

// app/view/cart/Cart.js Ext.define('Alcohology.view.cart.Cart', { extend: 'Ext.Window', requires: ['Alcohology.view.cart.CartController'], controller: 'cart', width: 500, height: 350, modal: true, resizable: false, header: false, onEsc: Ext.emptyFn, layout: 'fit', items: [ { xtype: 'grid', bind: '{cart}', plugins: { ptype: 'cellediting', clicksToEdit: 1 }, listeners: { edit: function(editor, e) { e.record.commit(); } }, hideHeaders: true, emptyText: 'No items in the cart.', columns: [ { name: 'Product', dataIndex: 'productName', flex: 1 }, { name: 'Quantity', dataIndex: ...

Get Ext JS Application Development Blueprints now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.