/* * Copyright (C) 2013 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.eugene.fithealthmaingit.UI; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v7.widget.Toolbar; import android.view.LayoutInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.view.inputmethod.InputMethodManager; import android.widget.EditText; import com.eugene.fithealthmaingit.Custom.TextViewFont; import com.eugene.fithealthmaingit.Databases_Adapters_ListViews.FoodManual.LogManual; import com.eugene.fithealthmaingit.R; import com.eugene.fithealthmaingit.Utilities.Globals; import java.util.Date; import java.util.Random; /** * Add/Save Meals Manually */ public class ManualEntryFragment extends Fragment { private View v; private Toolbar toolbar_manual; private EditText servingName; private EditText mealName; private EditText mealCalories; private EditText mealFat; private EditText mealCarbs; private EditText mealProtein; private EditText mealSatFat; private EditText mealCholesterol; private EditText mealSodium; private EditText mealFiber; private EditText mealSugar; private EditText mealA; private EditText mealC; private EditText mealCalcium; private EditText mealIron; private EditText mealBrand; private String sServingName; private String sMealName; private String sMealCalories; private String sMealFat; private String sMealCarbs; private String sMealProtein; private String sMealSatFat; private String sMealCholesterol; private String sMealSodium; private String sMealFiber; private String sMealSugar; private String sMealA; private String sMealC; private String sMealCalcium; private String sMealIron; private String sMealBrand; private String mealType; @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { v = inflater.inflate(R.layout.fragment_manual_entry, container, false); // Toolbar Bundle extras = getActivity().getIntent().getExtras(); if (extras != null) // Get meal_type from activity to set meal. mealType = extras.getString(Globals.MEAL_TYPE); toolbar_manual = (Toolbar) v.findViewById(R.id.toolbar_manual); TextViewFont txtTitle = (TextViewFont) v.findViewById(R.id.txtTitle); txtTitle.setText("Create Meal"); toolbar_manual.setNavigationIcon(R.mipmap.ic_arrow_back); toolbar_manual.setNavigationOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ((InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(toolbar_manual.getWindowToken(), 0); getActivity().finish(); } }); toolbar_manual.inflateMenu(R.menu.menu_user_info); toolbar_manual.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { int menuItem = item.getItemId(); if (menuItem == R.id.action_save) { SaveMeal(); Intent intent = new Intent(getActivity(), ChooseAddMealActivity.class); intent.putExtra(Globals.MEAL_TYPE, mealType); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); } return false; } }); // Edit Text servingName = (EditText) v.findViewById(R.id.servingName); mealName = (EditText) v.findViewById(R.id.mealName); mealName.requestFocus(); mealCalories = (EditText) v.findViewById(R.id.mealCalories); mealFat = (EditText) v.findViewById(R.id.mealFat); mealCarbs = (EditText) v.findViewById(R.id.mealCarbs); mealProtein = (EditText) v.findViewById(R.id.mealProtein); mealSatFat = (EditText) v.findViewById(R.id.mealSatFat); mealCholesterol = (EditText) v.findViewById(R.id.mealCholesterol); mealSodium = (EditText) v.findViewById(R.id.mealSodium); mealFiber = (EditText) v.findViewById(R.id.mealFiber); mealSugar = (EditText) v.findViewById(R.id.mealSugar); mealA = (EditText) v.findViewById(R.id.mealA); mealC = (EditText) v.findViewById(R.id.mealC); mealCalcium = (EditText) v.findViewById(R.id.mealCalcium); mealIron = (EditText) v.findViewById(R.id.mealIron); mealBrand = (EditText) v.findViewById(R.id.mealBrand); return v; } /** * Save new meal to LogManualEntry */ private void SaveMeal() { ((InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE)).hideSoftInputFromWindow(toolbar_manual.getWindowToken(), 0); // Strings sServingName = servingName.getText().toString(); if (sServingName.trim().equals("")) { sServingName = "Serving"; } sMealName = mealName.getText().toString(); if (sMealName.trim().equals("")) { sMealName = "No Name"; } sMealCalories = mealCalories.getText().toString(); sMealFat = mealFat.getText().toString(); sMealCarbs = mealCarbs.getText().toString(); sMealProtein = mealProtein.getText().toString(); sMealSatFat = mealSatFat.getText().toString(); sMealCholesterol = mealCholesterol.getText().toString(); sMealSodium = mealSodium.getText().toString(); sMealFiber = mealFiber.getText().toString(); sMealSugar = mealSugar.getText().toString(); sMealA = mealA.getText().toString(); sMealC = mealC.getText().toString(); sMealCalcium = mealCalcium.getText().toString(); sMealIron = mealIron.getText().toString(); sMealBrand = mealBrand.getText().toString(); if (sMealBrand.trim().equals("")) { sMealBrand = "No Brand"; } //Save LogManual logMeals = new LogManual(); logMeals.setMealName(sMealName); Random r = new Random(); int i1 = r.nextInt(10000 - 1) + 1; logMeals.setMealId(String.valueOf(i1)); logMeals.setCalorieCount(checkForNull(sMealCalories)); logMeals.setFatCount(checkForNull(sMealFat)); logMeals.setSaturatedFat(checkForNull(sMealSatFat)); logMeals.setCholesterol(checkForNull(sMealCholesterol)); logMeals.setSodium(checkForNull(sMealSodium)); logMeals.setCarbCount(checkForNull(sMealCarbs)); logMeals.setFiber(checkForNull(sMealFiber)); logMeals.setSugars(checkForNull(sMealSugar)); logMeals.setProteinCount(checkForNull(sMealProtein)); logMeals.setVitA(checkForNull(sMealA)); logMeals.setVitC(checkForNull(sMealC)); logMeals.setCalcium(checkForNull(sMealCalcium)); logMeals.setIron(checkForNull(sMealIron)); logMeals.setManualEntry("true"); logMeals.setBrand(sMealBrand); logMeals.setServingSize(1); logMeals.setMealServing(sServingName); logMeals.setDate(new Date()); logMeals.save(); } private Double checkForNull(String s) { if (s.trim().length() == 0) { return (double) 0; } else { return Double.valueOf(s); } } }