Step 4: Adding Products to the Shopping Bag
Putting things in the shopping bag is easy. Users need only click the
affectionately titled link âGimme One.â This calls the
correspondingly named function gimmeOne()
. Lines
112-133 have the details:
function gimmeOne() { if (!gimmeControl) { alert("Nothing on this screen to give you."); return; } for (var i = 0; i < shoppingBag.things.length; i++) { if (categorySet[curCLoc].prodLine[curPLoc].plu == shoppingBag.things[i].plu) { alert("That's already in your bag. You can change the quantity " + "by choosing View/Change Bag."); return; } } shoppingBag.things[shoppingBag.things.length] = categorySet[curCLoc].prodLine[curPLoc]; shoppingBag.things[shoppingBag.things.length - 1].itemQty = 1; shoppingBag.things[shoppingBag.things.length - 1].category = categorySet[curCLoc].name; alert("OK. You put the " + shoppingBag.things[shoppingBag.things.length - 1].name + " in your bag."); }
The first thing gimmeOne()
does is to ensure that
there is actually something on the screen to put in the shopping bag.
Variable gimmeControl is set to true immediately
before a product is displayed. Otherwise, any other functions
displaying information on the screen set gimmeControl
to false
. Therefore, if
gimmeControl is false
, there
is no product on the screen. The user is alerted, and
gimmeOne()
returns. Otherwise,
gimmeOne()
iterates through the elements of the
things array, which is a property of the
userâs shoppingBag
object to check whether ...
Get JavaScript Application Cookbook 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.