예제 #1
0
 public void performAction(View view) {
   PreviousHistory cTotals = getCartTotalsFor(currentUsername);
   if (cTotals.getCalories() != 0) {
     showCheckoutDialog(cTotals);
   } else {
     Toast noItemsInCart =
         Toast.makeText(
             CartActivity.this, "You have no items in your cart yet!", Toast.LENGTH_SHORT);
     noItemsInCart.show();
   }
 }
예제 #2
0
  @Override
  protected void onResume() {
    super.onResume();

    updateBaseGraph();

    if (selectedItems != null) {
      deleteAndQuantityButtonsEnabled();
    } else {
      deleteAndQuantityButtonsDisabled();
    }

    // Get the previous history for the user
    // if it exists, then pass it to Graph labels to draw goals
    if (pcart.getCalories() != 0.0f) {
      advisor.setPastCart(pcart);
    }
    advisor.setCurrCart(ccartTotals);
    advisor.setRecDailyValues(totalRDV);
    advisor.setDays(days);

    LayoutInflater inflater = getLayoutInflater();
    ViewGroup toastRoot = (ViewGroup) findViewById(R.id.toast_layout_root);
    ViewGroup toastRoot2 = (ViewGroup) findViewById(R.id.toast_layout_root2);
    View layout = inflater.inflate(R.layout.toast_layout, toastRoot);
    View layout2 = inflater.inflate(R.layout.toast_layout2, toastRoot2);

    advisor.giveNegativeDialogAdvice(CartActivity.this, layout);
    advisor.givePositiveDialogAdvice(CartActivity.this, layout2);
  }
예제 #3
0
  /** UPDATE BASE GRAPH with new Cart totals */
  private void updateBaseGraph() {
    // get an updated version of the adb on resume each time
    adb = new AccountDatabaseHelper(this);
    ccart = adb.getAllGroceryItemsOf(currentUsername);
    int groceryCount = adb.getGroceryCountFor(currentUsername);
    if (groceryCount == 1) {
      added.setText(groceryCount + " ITEM IN CART");
    } else if (groceryCount == 0 || groceryCount > 1) {
      added.setText(groceryCount + " ITEMS IN CART");
    }
    adb.close();

    if (ccart != null) {
      setupItemDrawer();
    }

    passedIntent = getIntent();

    results = passedIntent.getStringExtra("results");
    int check = passedIntent.getIntExtra("check", 0);
    if (check == 1) {
      Log.d("CartActivity", "This is results " + results);
      if (results != null && !results.equals("e")) {
        updateGraphWithSelected(results);
      } else {
        Toast noData =
            Toast.makeText(
                CartActivity.this,
                "Sorry, we couldn't find the nutrition data for this item",
                Toast.LENGTH_LONG);
        noData.show();
      }
    }

    ccartTotals = getCartTotalsFor(currentUsername);
    totalRDV = getRDVTotalsFor(currentUsername);

    if (pcart.getCalories() != 0.0f) {
      graph.getRatiosWithPCart(ccartTotals, totalRDV, pcart);
    } else {
      graph.getRatiosWithoutPCart(ccartTotals, totalRDV);
    }
    graph.postInvalidate();

    graphLabels.setDays(days);
    graphLabels.postInvalidate();
  }
예제 #4
0
  /** TOTAL VALUES Add up all of the values of the current_cart items */
  public PreviousHistory getCartTotalsFor(String username) {
    NutritionDatabaseHelper ndb = new NutritionDatabaseHelper(this);
    AccountDatabaseHelper adb = new AccountDatabaseHelper(this);

    List<GroceryItem> allGItems = adb.getAllGroceryItemsOf(username);
    PreviousHistory cartTotals = new PreviousHistory();
    if (allGItems != null) {
      cartTotals.setId(-1);
      cartTotals.setUsername(username);

      for (int i = 0; i < allGItems.size(); i++) {
        // retrieve the grocery item from the array
        GroceryItem tempGrocery = allGItems.get(i);

        // get the Quantity of the item
        int quantity = tempGrocery.getQuantity();

        // locate the item in the nutrition database
        Item tempItem = ndb.getItem(tempGrocery.getItemName());

        // add the totals to the current cartTotal, remembering
        // to multiply by the quantity!
        cartTotals.setCalories(cartTotals.getCalories() + (tempItem.getCalories() * quantity));
        cartTotals.setProtein(cartTotals.getProtein() + (tempItem.getProtein() * quantity));
        cartTotals.setFat(cartTotals.getFat() + (tempItem.getFat() * quantity));
        cartTotals.setCarbohydrate(
            cartTotals.getCarbohydrate() + (tempItem.getCarbohydrate() * quantity));
        cartTotals.setFiber(cartTotals.getFiber() + (tempItem.getFiber() * quantity));
        cartTotals.setSugar(cartTotals.getSugar() + (tempItem.getSugar() * quantity));
        cartTotals.setCalcium(cartTotals.getCalcium() + (tempItem.getCalcium() * quantity));
        cartTotals.setIron(cartTotals.getIron() + (tempItem.getIron() * quantity));
        cartTotals.setMagnesium(cartTotals.getMagnesium() + (tempItem.getMagnesium() * quantity));
        cartTotals.setPotassium(cartTotals.getPotassium() + (tempItem.getPotassium() * quantity));
        cartTotals.setSodium(cartTotals.getSodium() + (tempItem.getSodium() * quantity));
        cartTotals.setZinc(cartTotals.getZinc() + (tempItem.getZinc() * quantity));
        cartTotals.setVitC(cartTotals.getVitC() + (tempItem.getVitC() * quantity));
        cartTotals.setVitB6(cartTotals.getVitB6() + (tempItem.getVitB6() * quantity));
        cartTotals.setVitB12(cartTotals.getVitB12() + (tempItem.getVitB12() * quantity));
        cartTotals.setVitA(cartTotals.getVitA() + (tempItem.getVitA() * quantity));
        cartTotals.setVitE(cartTotals.getVitE() + (tempItem.getVitE() * quantity));
        cartTotals.setVitD(cartTotals.getVitD() + (tempItem.getVitD() * quantity));
        cartTotals.setVitK(cartTotals.getVitK() + (tempItem.getVitK() * quantity));
        cartTotals.setFatSat(cartTotals.getFatSat() + (tempItem.getFatSat() * quantity));
        cartTotals.setFatMono(cartTotals.getFatMono() + (tempItem.getFatMono() * quantity));
        cartTotals.setFatPoly(cartTotals.getFatPoly() + (tempItem.getFatPoly() * quantity));
        cartTotals.setCholesterol(
            cartTotals.getCholesterol() + (tempItem.getCholesterol() * quantity));
        cartTotals.setDays(days);
      }

      // Log.d("Created: ", "Cart Total for : " + cartTotals.getUsername()
      // + "Total Calories: " + cartTotals.getCalories());
      adb.close();
      ndb.close();
      return cartTotals;
    }
    ndb.close();
    adb.close();
    PreviousHistory emptyHistory = new PreviousHistory();
    emptyHistory.setUsername(currentUsername);
    return emptyHistory;
  }