/** ButtonMethod for add ingredients from the ingredientList into the tableview */ public void addIngredientButton() { String selectedIngredient = recipeIngredients.getSelectionModel().getSelectedItems().toString(); selectedIngredient = selectedIngredient.replaceAll("\\[", "").replaceAll("\\]", ""); items.add( new Ingredient( selectedIngredient, ingredientAmount.getText(), ingredientUnit.getSelectionModel().getSelectedItem().toString())); // Creates new addedIngredientTable.setItems( items); // Object of the type Ingredient and adds it to the tableView. }
/** ButtonMethod for updating data into the recipes */ public void SubmitButtonAction() { String values = ""; String columns = "Name, Type, Cuisine, Difficulty, Diet, Time, Description"; String[] fields = { recipeName.getText(), recipeType.getText(), recipeCuisine.getText(), recipeDifficulty.getText(), recipeDiet.getText(), recipeTime.getText(), recipeDescription.getText() }; // Array with Values for (String value : fields) values += "'" + value + "',"; values = values.substring(0, values.length() - 1); try { System.out.println("- SubmitButtonAction"); insertInto("Recipes", columns, values); // Update data in columns with values System.out.println("- End of SubmitButtonAction"); recipeID = fetchData("recipes", "ID", "Name='" + recipeName.getText() + "'").get(0).get(0); for (Object o : addedIngredientTable.getItems()) { // Foreach object in the list, getItems String iName = Name.getCellData(o).toString(); // iName = ingredientName String iAmount = Amount.getCellData(o).toString(); // iAmount = ingredientAmount String iUnit = Unit.getCellData(o).toString(); // iUnit = ingredientUnit System.out.println("TESTING" + iName); String currentId = fetchData("Ingredients", "ID", "Name='" + iName + "'") .toString(); // Fetches id where name currentId = currentId.replaceAll("\\[", "").replaceAll("\\]", ""); // is column-name System.out.println("RECIPE ID" + recipeID); System.out.println("Current ID" + currentId); insertInto( "RUI", "RID, IID, Quantity, Unit", "'" + recipeID + "','" + currentId + "','" + iAmount + "','" + iUnit + "'"); // Inserts recipe id, current id, } // amount, and unit } catch (SQLException e) { e.printStackTrace(); } Recipe.setSelectedByID(recipeID); VistaNavigator.loadVista(VistaNavigator.RECIPE); }
/** Searchfield for searching ingredients in the ingredientList */ public void updateIngredientSearch() { ArrayList<ArrayList<String>> dataSet; ObservableList<String> itemList = FXCollections.observableArrayList(); String condition = "Name LIKE '" + "%" + ingredientSearch.getText() + "%'"; System.out.println("Condition " + condition); try { dataSet = fetchData("Ingredients", "Name", condition); for (ArrayList<String> element : dataSet) { itemList.add(element.get(0)); } } catch (SQLException e) { e.printStackTrace(); } recipeIngredients.setItems( itemList); // Sets the listview to show the ingredients that matches the search } // Criteria