Current Features
- Provides Authentication
- Allows Retrieval of User's grocery lists
- Allows addition of items to lists
npm install our-groceries-client
var OurGroceriesClient = require('our-groceries-client');
// or import OurGroceriesClient from 'our-groceries-client'
var username = "<your our groceries username>"
, password = "<your our groceries password>"
, listName = "<your list name>"
, itemName = "Apples"
, quantity = 1;
var client = new OurGroceriesClient();
var handlers = {
// Called when authentication completes, either success or failure
authComplete: function(result) {
if (result.success) {
client.getLists(handlers.getListsComplete);
} else {
console.log("Authentication Failed: "+result.error);
}
},
// Called when fetching the list of lists completes, either success or failure
getListsComplete: function(result) {
if (result.success) {
var list = client.findList(result.response.shoppingLists, listName);
if (list) {
client.getList(list.id, handlers.getListComplete);
} else {
console.log("Unable to find list: "+listName);
}
} else {
console.log("Unable to get lists: "+result.error);
}
},
// Called when fetching a single list completes, either success or failure
getListComplete: function(result) {
var list = result.response.list;
client.addToList(list.id, itemName, quantity, handlers.addToListComplete);
},
// Called after adding the item completes
addToListComplete: function(result) {
if (result.success) {
console.log("Successfully added to list.");
} else {
console.log("Unable to add to list: "+result.error);
}
}
}
// Authenticate
client.authenticate(username, password, handlers.authComplete);