Merge branch 'development' of
https://git.server47.de/jens/ShoppingList.git into development Conflicts: phpInterface/shoppingList.php
This commit is contained in:
		@@ -173,7 +173,7 @@ public class ShoppingList
 | 
				
			|||||||
        return resultList;
 | 
					        return resultList;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	public boolean send()
 | 
						public boolean sendViaEmail()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		StringBuilder shoppingListString = new StringBuilder();
 | 
							StringBuilder shoppingListString = new StringBuilder();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -58,7 +58,10 @@ public class ShoppingListEntry
 | 
				
			|||||||
		PreparedStatement preparedStmt = null;
 | 
							PreparedStatement preparedStmt = null;
 | 
				
			||||||
		Connection conn = null;
 | 
							Connection conn = null;
 | 
				
			||||||
		try
 | 
							try
 | 
				
			||||||
		{
 | 
							{			
 | 
				
			||||||
 | 
								if(amount <= 0 && unit != null && !unit.isDummy)
 | 
				
			||||||
 | 
									return false;
 | 
				
			||||||
 | 
								
 | 
				
			||||||
			conn = DatabaseHandler.getInstance().getConnection();
 | 
								conn = DatabaseHandler.getInstance().getConnection();
 | 
				
			||||||
			
 | 
								
 | 
				
			||||||
			if(!combinationExists(this.getParentList(), this.getProduct(), this.getUnit()))
 | 
								if(!combinationExists(this.getParentList(), this.getProduct(), this.getUnit()))
 | 
				
			||||||
@@ -85,7 +88,7 @@ public class ShoppingListEntry
 | 
				
			|||||||
			}
 | 
								}
 | 
				
			||||||
			else
 | 
								else
 | 
				
			||||||
			{
 | 
								{
 | 
				
			||||||
				return updateAmount();
 | 
									return updateAmount(false);
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		catch(Exception e)
 | 
							catch(Exception e)
 | 
				
			||||||
@@ -112,7 +115,10 @@ public class ShoppingListEntry
 | 
				
			|||||||
		PreparedStatement preparedStmt = null;
 | 
							PreparedStatement preparedStmt = null;
 | 
				
			||||||
		Connection conn = null;
 | 
							Connection conn = null;
 | 
				
			||||||
		try
 | 
							try
 | 
				
			||||||
		{
 | 
							{			
 | 
				
			||||||
 | 
								if(amount <= 0 && unit != null && !unit.isDummy)
 | 
				
			||||||
 | 
									return false;
 | 
				
			||||||
 | 
								
 | 
				
			||||||
			conn = DatabaseHandler.getInstance().getConnection();
 | 
								conn = DatabaseHandler.getInstance().getConnection();
 | 
				
			||||||
			
 | 
								
 | 
				
			||||||
			if(this.getAmount() == 0 || this.getUnit().isDummy())
 | 
								if(this.getAmount() == 0 || this.getUnit().isDummy())
 | 
				
			||||||
@@ -127,7 +133,7 @@ public class ShoppingListEntry
 | 
				
			|||||||
				
 | 
									
 | 
				
			||||||
				long numAffectedRows = preparedStmt.executeUpdate();
 | 
									long numAffectedRows = preparedStmt.executeUpdate();
 | 
				
			||||||
			    Miscellaneous.logEvent("AMOUNT OF UPDATED ROWS: " + numAffectedRows, 5);
 | 
								    Miscellaneous.logEvent("AMOUNT OF UPDATED ROWS: " + numAffectedRows, 5);
 | 
				
			||||||
			    ResultSet rs = preparedStmt.getGeneratedKeys();
 | 
					//			    ResultSet rs = preparedStmt.getGeneratedKeys();
 | 
				
			||||||
	//		    if (numAffectedRows > 0)
 | 
						//		    if (numAffectedRows > 0)
 | 
				
			||||||
	//		    {
 | 
						//		    {
 | 
				
			||||||
					preparedStmt.close();
 | 
										preparedStmt.close();
 | 
				
			||||||
@@ -137,7 +143,9 @@ public class ShoppingListEntry
 | 
				
			|||||||
			else
 | 
								else
 | 
				
			||||||
			{
 | 
								{
 | 
				
			||||||
				if(combinationExists(this.getParentList(), this.getProduct(), this.getUnit()))
 | 
									if(combinationExists(this.getParentList(), this.getProduct(), this.getUnit()))
 | 
				
			||||||
					return updateAmount();
 | 
										return updateAmount(true);
 | 
				
			||||||
 | 
									else
 | 
				
			||||||
 | 
										return true;	// Combination to be deleted does not exist. So what?
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		catch(Exception e)
 | 
							catch(Exception e)
 | 
				
			||||||
@@ -159,7 +167,7 @@ public class ShoppingListEntry
 | 
				
			|||||||
		return false;
 | 
							return false;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	protected boolean updateAmount()
 | 
						protected boolean updateAmount(boolean delete)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		String query = "SELECT * FROM listEntries WHERE listId=? AND productId=? AND unit=?";
 | 
							String query = "SELECT * FROM listEntries WHERE listId=? AND productId=? AND unit=?";
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
@@ -179,13 +187,22 @@ public class ShoppingListEntry
 | 
				
			|||||||
	        if(res.next())
 | 
						        if(res.next())
 | 
				
			||||||
	        {
 | 
						        {
 | 
				
			||||||
	        	float currentAmount = res.getFloat("amount");
 | 
						        	float currentAmount = res.getFloat("amount");
 | 
				
			||||||
	        	if(currentAmount + this.getAmount() > 0)
 | 
						        	
 | 
				
			||||||
 | 
						        	boolean condition = true;
 | 
				
			||||||
 | 
						        	if(delete)
 | 
				
			||||||
 | 
						        		condition = currentAmount - this.getAmount() > 0;
 | 
				
			||||||
 | 
						        		
 | 
				
			||||||
 | 
						        	if(condition)
 | 
				
			||||||
	        	{
 | 
						        	{
 | 
				
			||||||
	        		// Update the amount
 | 
						        		// Update the amount
 | 
				
			||||||
	        		String updateQuery  = "UPDATE listEntries set amount=? WHERE listId=? AND productId=? AND unit=?";
 | 
						        		String updateQuery  = "UPDATE listEntries set amount=? WHERE listId=? AND productId=? AND unit=?";
 | 
				
			||||||
					preparedStmt = conn.prepareStatement(updateQuery);
 | 
										preparedStmt = conn.prepareStatement(updateQuery);
 | 
				
			||||||
					
 | 
										
 | 
				
			||||||
					preparedStmt.setFloat(1, currentAmount + this.getAmount());
 | 
										if(delete)
 | 
				
			||||||
 | 
											preparedStmt.setFloat(1, currentAmount - this.getAmount());
 | 
				
			||||||
 | 
										else
 | 
				
			||||||
 | 
											preparedStmt.setFloat(1, currentAmount + this.getAmount());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
					preparedStmt.setLong(2, this.getParentList().getId());
 | 
										preparedStmt.setLong(2, this.getParentList().getId());
 | 
				
			||||||
					preparedStmt.setLong(3, this.getProduct().getId());
 | 
										preparedStmt.setLong(3, this.getProduct().getId());
 | 
				
			||||||
					preparedStmt.setLong(4, this.getUnit().getId());
 | 
										preparedStmt.setLong(4, this.getUnit().getId());
 | 
				
			||||||
@@ -209,7 +226,7 @@ public class ShoppingListEntry
 | 
				
			|||||||
	        		String updateQuery  = "DELETE FROM listEntries WHERE listId=? AND productId=? AND unit=?";
 | 
						        		String updateQuery  = "DELETE FROM listEntries WHERE listId=? AND productId=? AND unit=?";
 | 
				
			||||||
					preparedStmt = conn.prepareStatement(updateQuery);
 | 
										preparedStmt = conn.prepareStatement(updateQuery);
 | 
				
			||||||
					
 | 
										
 | 
				
			||||||
					preparedStmt.setLong(1, this.getProduct().getId());
 | 
										preparedStmt.setLong(1, this.getParentList().getId());
 | 
				
			||||||
					preparedStmt.setLong(2, this.getProduct().getId());
 | 
										preparedStmt.setLong(2, this.getProduct().getId());
 | 
				
			||||||
					preparedStmt.setLong(3, this.getUnit().getId());
 | 
										preparedStmt.setLong(3, this.getUnit().getId());
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
@@ -225,6 +242,8 @@ public class ShoppingListEntry
 | 
				
			|||||||
						preparedStmt.close();
 | 
											preparedStmt.close();
 | 
				
			||||||
						return true;
 | 
											return true;
 | 
				
			||||||
				    }
 | 
									    }
 | 
				
			||||||
 | 
									    else
 | 
				
			||||||
 | 
											preparedStmt.close();
 | 
				
			||||||
	        	}
 | 
						        	}
 | 
				
			||||||
	        }
 | 
						        }
 | 
				
			||||||
	        
 | 
						        
 | 
				
			||||||
@@ -254,8 +273,6 @@ public class ShoppingListEntry
 | 
				
			|||||||
			
 | 
								
 | 
				
			||||||
	        ResultSet res = preparedStmt.executeQuery();
 | 
						        ResultSet res = preparedStmt.executeQuery();
 | 
				
			||||||
	        
 | 
						        
 | 
				
			||||||
	        boolean found = false;
 | 
					 | 
				
			||||||
	        
 | 
					 | 
				
			||||||
	        if(res.next())
 | 
						        if(res.next())
 | 
				
			||||||
	        	entryAmount = res.getLong("combinationAmount");
 | 
						        	entryAmount = res.getLong("combinationAmount");
 | 
				
			||||||
	        
 | 
						        
 | 
				
			||||||
@@ -272,4 +289,18 @@ public class ShoppingListEntry
 | 
				
			|||||||
		
 | 
							
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						@Override
 | 
				
			||||||
 | 
						public String toString()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							if(this.getUnit() != null)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if(!this.getUnit().isDummy())
 | 
				
			||||||
 | 
									return String.valueOf(getAmount()) + " " + getUnit().getMainName() + " " + getProduct().getName();
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							return getProduct().getName();
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -75,25 +75,28 @@ public class Start
 | 
				
			|||||||
				    	Unit u = Unit.getByName(unitName);
 | 
									    	Unit u = Unit.getByName(unitName);
 | 
				
			||||||
				    	Product p = Product.getByName(productName);
 | 
									    	Product p = Product.getByName(productName);
 | 
				
			||||||
				    	
 | 
									    	
 | 
				
			||||||
				    	if(list == null)
 | 
					 | 
				
			||||||
				    		exitWithError(Settings.languageBlock.get("couldNotCreateList"));
 | 
					 | 
				
			||||||
				    	
 | 
					 | 
				
			||||||
				    	if(p == null)
 | 
					 | 
				
			||||||
				    		exitWithError(Settings.languageBlock.get("productNotFound") + " " + productName);
 | 
					 | 
				
			||||||
				    	
 | 
					 | 
				
			||||||
			    		ShoppingListEntry entry = new ShoppingListEntry();
 | 
								    		ShoppingListEntry entry = new ShoppingListEntry();
 | 
				
			||||||
			    		entry.setParentList(list);
 | 
								    		entry.setParentList(list);
 | 
				
			||||||
			    		entry.setProduct(p);
 | 
								    		entry.setProduct(p);
 | 
				
			||||||
			    		entry.setAmount(amount);
 | 
								    		entry.setAmount(amount);
 | 
				
			||||||
			    		entry.setUnit(u);
 | 
								    		entry.setUnit(u);
 | 
				
			||||||
 | 
								    		
 | 
				
			||||||
 | 
								    		if(amount > 0 && (u == null || u.isDummy))
 | 
				
			||||||
 | 
								    			entry.setUnit(Unit.getPieceUnit());
 | 
				
			||||||
 | 
								    		
 | 
				
			||||||
 | 
									    	if(list == null)
 | 
				
			||||||
 | 
									    		exitWithError(Settings.languageBlock.get("couldNotCreateList"));
 | 
				
			||||||
 | 
									    	
 | 
				
			||||||
 | 
									    	if(p == null)
 | 
				
			||||||
 | 
									    		exitWithError(Settings.languageBlock.get("productNotFound") + " " + entry.toString());
 | 
				
			||||||
 | 
									    	
 | 
				
			||||||
			    		if(entry.create())
 | 
								    		if(entry.create())
 | 
				
			||||||
			    		{
 | 
								    		{
 | 
				
			||||||
			    			DatabaseHandler.getInstance().disconnect();
 | 
								    			DatabaseHandler.getInstance().disconnect();
 | 
				
			||||||
			    			System.exit(0);
 | 
								    			System.exit(0);
 | 
				
			||||||
			    		}
 | 
								    		}
 | 
				
			||||||
			    		else
 | 
								    		else
 | 
				
			||||||
			    			exitWithError(Settings.languageBlock.get("couldNotAddProdToList") + " " + productName);
 | 
								    			exitWithError(Settings.languageBlock.get("couldNotAddProdToList") + " " + entry.toString());
 | 
				
			||||||
				    }
 | 
									    }
 | 
				
			||||||
				    else
 | 
									    else
 | 
				
			||||||
				    	System.out.println(Settings.languageBlock.get("noProdSpecified"));
 | 
									    	System.out.println(Settings.languageBlock.get("noProdSpecified"));
 | 
				
			||||||
@@ -103,26 +106,31 @@ public class Start
 | 
				
			|||||||
				    {
 | 
									    {
 | 
				
			||||||
				    	ShoppingList list = ShoppingList.getMostRecentList();
 | 
									    	ShoppingList list = ShoppingList.getMostRecentList();
 | 
				
			||||||
				    	Product p = Product.getByName(productName);
 | 
									    	Product p = Product.getByName(productName);
 | 
				
			||||||
 | 
									    	Unit u = Unit.getByName(unitName);
 | 
				
			||||||
				    	
 | 
									    	
 | 
				
			||||||
 | 
								    		ShoppingListEntry entry = new ShoppingListEntry();
 | 
				
			||||||
 | 
								    		entry.setParentList(list);
 | 
				
			||||||
 | 
								    		entry.setProduct(p);
 | 
				
			||||||
 | 
								    		entry.setAmount(amount);
 | 
				
			||||||
 | 
								    		entry.setUnit(u);
 | 
				
			||||||
 | 
								    		
 | 
				
			||||||
 | 
								    		if(amount > 0 && (u == null || u.isDummy))
 | 
				
			||||||
 | 
								    			entry.setUnit(Unit.getPieceUnit());
 | 
				
			||||||
 | 
								    		
 | 
				
			||||||
				    	if(list == null)
 | 
									    	if(list == null)
 | 
				
			||||||
				    		exitWithError(Settings.languageBlock.get("couldNotCreateList"));
 | 
									    		exitWithError(Settings.languageBlock.get("couldNotCreateList"));
 | 
				
			||||||
				    	
 | 
									    	
 | 
				
			||||||
				    	if(p == null)
 | 
									    	if(p == null)
 | 
				
			||||||
				    		exitWithError(Settings.languageBlock.get("productNotFound") + " " + productName);
 | 
									    		exitWithError(Settings.languageBlock.get("productNotFound") + " " + entry.toString());
 | 
				
			||||||
				    	
 | 
								    		
 | 
				
			||||||
			    		for(ShoppingListEntry entry : list.getEntries())
 | 
								    		if(entry.delete())
 | 
				
			||||||
			    		{bestehende reduzieren
 | 
								    		{
 | 
				
			||||||
			    			if(entry.getProduct().equals(p))
 | 
								    			DatabaseHandler.getInstance().disconnect();
 | 
				
			||||||
			    			{
 | 
								    			System.exit(0);
 | 
				
			||||||
					    		if(entry.delete())
 | 
					 | 
				
			||||||
					    		{
 | 
					 | 
				
			||||||
					    			DatabaseHandler.getInstance().disconnect();
 | 
					 | 
				
			||||||
					    			System.exit(0);
 | 
					 | 
				
			||||||
					    		}
 | 
					 | 
				
			||||||
					    		else
 | 
					 | 
				
			||||||
					    			Miscellaneous.logEvent(Settings.languageBlock.get("couldNotRemoveProdFromList") + " " + productName, 2);
 | 
					 | 
				
			||||||
				    		}
 | 
					 | 
				
			||||||
			    		}
 | 
								    		}
 | 
				
			||||||
 | 
								    		else
 | 
				
			||||||
 | 
								    			exitWithError(Settings.languageBlock.get("couldNotRemoveProdFromList") + " " + entry.toString());
 | 
				
			||||||
 | 
									    	
 | 
				
			||||||
			    		// If it wasn't on the list - why care?
 | 
								    		// If it wasn't on the list - why care?
 | 
				
			||||||
		    			DatabaseHandler.getInstance().disconnect();
 | 
							    			DatabaseHandler.getInstance().disconnect();
 | 
				
			||||||
		    			System.exit(0);
 | 
							    			System.exit(0);
 | 
				
			||||||
@@ -131,7 +139,7 @@ public class Start
 | 
				
			|||||||
				    	System.out.println(Settings.languageBlock.get("noProdSpecified"));
 | 
									    	System.out.println(Settings.languageBlock.get("noProdSpecified"));
 | 
				
			||||||
				    break;
 | 
									    break;
 | 
				
			||||||
			    case "sendList":
 | 
								    case "sendList":
 | 
				
			||||||
			    	if(ShoppingList.getMostRecentList().send())
 | 
								    	if(ShoppingList.getMostRecentList().sendViaEmail())
 | 
				
			||||||
			    	{
 | 
								    	{
 | 
				
			||||||
//				    	System.out.println("Liste wurde verschickt.");
 | 
					//				    	System.out.println("Liste wurde verschickt.");
 | 
				
			||||||
				    	DatabaseHandler.getInstance().disconnect();
 | 
									    	DatabaseHandler.getInstance().disconnect();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -19,6 +19,7 @@ static ArrayList<Unit> unitCache = null;
 | 
				
			|||||||
	String abbreviation;
 | 
						String abbreviation;
 | 
				
			||||||
	boolean isDefault;
 | 
						boolean isDefault;
 | 
				
			||||||
	boolean isDummy;
 | 
						boolean isDummy;
 | 
				
			||||||
 | 
						boolean isPiece;
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	public long getId()
 | 
						public long getId()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
@@ -29,6 +30,14 @@ static ArrayList<Unit> unitCache = null;
 | 
				
			|||||||
		this.id = id;
 | 
							this.id = id;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
 | 
						public String getMainName()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							if(name.contains(";"))
 | 
				
			||||||
 | 
								return name.split(";")[0];
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
 | 
								return name;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
	public String getName()
 | 
						public String getName()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		return name;
 | 
							return name;
 | 
				
			||||||
@@ -65,6 +74,15 @@ static ArrayList<Unit> unitCache = null;
 | 
				
			|||||||
		this.isDummy = isDummy;
 | 
							this.isDummy = isDummy;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
 | 
						public boolean isPiece()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							return isPiece;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						public void setPiece(boolean isPiece)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							this.isPiece = isPiece;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
	public static ArrayList<Unit> readAllUnits()
 | 
						public static ArrayList<Unit> readAllUnits()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		if(unitCache == null)
 | 
							if(unitCache == null)
 | 
				
			||||||
@@ -97,6 +115,7 @@ static ArrayList<Unit> unitCache = null;
 | 
				
			|||||||
		        	u.setAbbreviation(res.getString("abbreviation"));
 | 
							        	u.setAbbreviation(res.getString("abbreviation"));
 | 
				
			||||||
		        	u.setDefault(res.getInt("isDefault") == 1);
 | 
							        	u.setDefault(res.getInt("isDefault") == 1);
 | 
				
			||||||
		        	u.setDummy(res.getInt("isDummy") == 1);
 | 
							        	u.setDummy(res.getInt("isDummy") == 1);
 | 
				
			||||||
 | 
							        	u.setPiece(res.getInt("isPiece") == 1);
 | 
				
			||||||
		        	
 | 
							        	
 | 
				
			||||||
		        	unitCache.add(u);
 | 
							        	unitCache.add(u);
 | 
				
			||||||
		        }
 | 
							        }
 | 
				
			||||||
@@ -133,10 +152,13 @@ static ArrayList<Unit> unitCache = null;
 | 
				
			|||||||
		
 | 
							
 | 
				
			||||||
		for(Unit u : readAllUnits())
 | 
							for(Unit u : readAllUnits())
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			if(u.getName().equalsIgnoreCase(unitName))
 | 
								for(String unitSynonym : u.getName().split(";"))
 | 
				
			||||||
				return u;
 | 
								{
 | 
				
			||||||
			else if(u.getName().equalsIgnoreCase(unitName.replace("-", " ")))
 | 
									if(unitSynonym.equalsIgnoreCase(unitName))
 | 
				
			||||||
				return u;
 | 
										return u;
 | 
				
			||||||
 | 
									else if(unitSynonym.equalsIgnoreCase(unitName.replace("-", " ")))
 | 
				
			||||||
 | 
										return u;
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
		return null;
 | 
							return null;
 | 
				
			||||||
@@ -145,7 +167,10 @@ static ArrayList<Unit> unitCache = null;
 | 
				
			|||||||
	@Override
 | 
						@Override
 | 
				
			||||||
	public String toString()
 | 
						public String toString()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		return getName();
 | 
							if(getName().contains(";"))
 | 
				
			||||||
 | 
								return getName().split(";")[0];
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
 | 
								return getName();
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	public static Unit getById(long id)
 | 
						public static Unit getById(long id)
 | 
				
			||||||
@@ -161,7 +186,7 @@ static ArrayList<Unit> unitCache = null;
 | 
				
			|||||||
	
 | 
						
 | 
				
			||||||
	public boolean create()
 | 
						public boolean create()
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		String query = "INSERT INTO units (name, abbreviation, isDefault, isDummy) VALUES (?, ?, ?, ?)";
 | 
							String query = "INSERT INTO units (name, abbreviation, isDefault, isDummy, isPiece) VALUES (?, ?, ?, ?, ?)";
 | 
				
			||||||
		Connection conn = DatabaseHandler.getInstance().getConnection();
 | 
							Connection conn = DatabaseHandler.getInstance().getConnection();
 | 
				
			||||||
		PreparedStatement preparedStmt = null;
 | 
							PreparedStatement preparedStmt = null;
 | 
				
			||||||
		try
 | 
							try
 | 
				
			||||||
@@ -179,6 +204,11 @@ static ArrayList<Unit> unitCache = null;
 | 
				
			|||||||
				preparedStmt.setInt(4, 1);
 | 
									preparedStmt.setInt(4, 1);
 | 
				
			||||||
			else
 | 
								else
 | 
				
			||||||
				preparedStmt.setInt(4, 0);
 | 
									preparedStmt.setInt(4, 0);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								if(this.isPiece)
 | 
				
			||||||
 | 
									preparedStmt.setInt(5, 1);
 | 
				
			||||||
 | 
								else
 | 
				
			||||||
 | 
									preparedStmt.setInt(5, 0);
 | 
				
			||||||
		    
 | 
							    
 | 
				
			||||||
		    preparedStmt.executeUpdate();
 | 
							    preparedStmt.executeUpdate();
 | 
				
			||||||
		    ResultSet rs = preparedStmt.getGeneratedKeys();
 | 
							    ResultSet rs = preparedStmt.getGeneratedKeys();
 | 
				
			||||||
@@ -219,4 +249,26 @@ static ArrayList<Unit> unitCache = null;
 | 
				
			|||||||
	      
 | 
						      
 | 
				
			||||||
		return false;
 | 
							return false;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						public static Unit getDefaultUnit()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							for(Unit u : readAllUnits())
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if(u.isDefault())
 | 
				
			||||||
 | 
									return u;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							return null;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						public static Unit getPieceUnit()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							for(Unit u : readAllUnits())
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if(u.isPiece())
 | 
				
			||||||
 | 
									return u;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							return null;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
@@ -67,6 +67,7 @@
 | 
				
			|||||||
			displayUnitList();
 | 
								displayUnitList();
 | 
				
			||||||
			exit(0);
 | 
								exit(0);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	
 | 
						
 | 
				
			||||||
	class Unit
 | 
						class Unit
 | 
				
			||||||
@@ -870,6 +871,8 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
			return false;
 | 
								return false;
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
?>
 | 
					?>
 | 
				
			||||||
@@ -1011,7 +1014,11 @@
 | 
				
			|||||||
		switch($command)
 | 
							switch($command)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			case "addToList":
 | 
								case "addToList":
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
				$productId = $_POST['productId'];
 | 
									$productId = $_POST['productId'];
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
									$productId = $_POST['productToAdd'];
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
				$amount = $_POST['amountToAdd'];
 | 
									$amount = $_POST['amountToAdd'];
 | 
				
			||||||
				$unitId = $_POST['unitToAdd'];
 | 
									$unitId = $_POST['unitToAdd'];
 | 
				
			||||||
				addToList($productId, $amount, $unitId);
 | 
									addToList($productId, $amount, $unitId);
 | 
				
			||||||
@@ -1214,10 +1221,20 @@
 | 
				
			|||||||
	mysqli_close(DBLink::getDbLink());
 | 
						mysqli_close(DBLink::getDbLink());
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
	function addToList($productId, $amount, $unitId)
 | 
						function addToList($productId, $amount, $unitId)
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
						function createList()
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
		if($productId > 0 && $amount != 0 && isset($unitId) && strlen($unitId) > 0)
 | 
							if($productId > 0 && $amount != 0 && isset($unitId) && strlen($unitId) > 0)
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
							$SQL_command = "INSERT INTO `lists` (creationTime) VALUES (".round(microtime(true) * 1000).")";
 | 
				
			||||||
 | 
							if (DBLink::getDbLink()->query($SQL_command))
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
			if(!ShoppingList::oneListExists())
 | 
								if(!ShoppingList::oneListExists())
 | 
				
			||||||
				createList();
 | 
									createList();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -1261,6 +1278,74 @@
 | 
				
			|||||||
					}
 | 
										}
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
			}
 | 
								}
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
								echo "List created.<br>";
 | 
				
			||||||
 | 
								return true;
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
 | 
								echo "Specifiy product, amount and unit.";
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							return false;
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
 | 
						function removeFromList($productId, $listId, $amount, $unitId)
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
						function addToList($productId, $amount, $unitId)
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
							if($productId > 0 && $amount != 0 && isset($unitId) && strlen($unitId) > 0)
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if(!oneListExists())
 | 
				
			||||||
 | 
									createList();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								if(!entryCombinationExists($productId, $unitId))
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									$SQL_command = "INSERT IGNORE INTO listEntries (listId, productId, amount, unit) VALUES ((SELECT id FROM `lists` ORDER BY creationTime DESC LIMIT 1), ".$productId.", ".$amount.", ".$unitId.")";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									if (DBLink::getDbLink()->query($SQL_command))
 | 
				
			||||||
 | 
										echo "Product added to list.<br>";
 | 
				
			||||||
 | 
									else
 | 
				
			||||||
 | 
										echo "Product could not be added to list.<br>";
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
								else
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									/*
 | 
				
			||||||
 | 
										update command that adds the amount to the already existing amount
 | 
				
			||||||
 | 
										if amount is negative -> subtract from existing amount. if resulting amount <= 0 -> 
 | 
				
			||||||
 | 
									*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									$SQL_command = "SELECT amount FROM listEntries WHERE listId=(SELECT id FROM `lists` ORDER BY creationTime DESC LIMIT 1) AND productId=".$productId." AND unit=".$unitId;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									$mysqli_result = DBLink::getDbLink()->query($SQL_command);
 | 
				
			||||||
 | 
									if ($row = mysqli_fetch_object($mysqli_result))
 | 
				
			||||||
 | 
									{
 | 
				
			||||||
 | 
										if($row->amount + $amount > 0)
 | 
				
			||||||
 | 
										{
 | 
				
			||||||
 | 
											$SQL_command = "UPDATE listEntries set amount=".($row->amount + $amount)." WHERE listId=(SELECT id FROM `lists` ORDER BY creationTime DESC LIMIT 1) AND productId=".$productId." AND unit=".$unitId;
 | 
				
			||||||
 | 
											
 | 
				
			||||||
 | 
											if (DBLink::getDbLink()->query($SQL_command))
 | 
				
			||||||
 | 
												echo "Product added to existing entry on list.<br>";
 | 
				
			||||||
 | 
											else
 | 
				
			||||||
 | 
												echo "Product could not be added to existing entry on list.<br>";
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
										else
 | 
				
			||||||
 | 
										{
 | 
				
			||||||
 | 
											$SQL_command = "DELETE FROM listEntries WHERE listId=(SELECT id FROM `lists` ORDER BY creationTime DESC LIMIT 1) AND productId=".$productId." AND unit=".$unitId;
 | 
				
			||||||
 | 
											if (DBLink::getDbLink()->query($SQL_command))
 | 
				
			||||||
 | 
												echo "Product removed from list as too many pieces of this item have been removed.<br>";
 | 
				
			||||||
 | 
											else
 | 
				
			||||||
 | 
												echo "Product could not be removed from list (too many pieces of this itme have been removed).<br>";
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
									}
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		else
 | 
							else
 | 
				
			||||||
			echo "Specifiy product, amount and unit.";
 | 
								echo "Specifiy product, amount and unit.";
 | 
				
			||||||
@@ -1269,6 +1354,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
	function removeFromList($productId, $listId, $amount, $unitId)
 | 
						function removeFromList($productId, $listId, $amount, $unitId)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
		if($productId > 0 && $amount != null && $unitId > 0)
 | 
							if($productId > 0 && $amount != null && $unitId > 0)
 | 
				
			||||||
		{
 | 
							{
 | 
				
			||||||
			if(ShoppingList::oneListExists())
 | 
								if(ShoppingList::oneListExists())
 | 
				
			||||||
@@ -1285,11 +1371,60 @@
 | 
				
			|||||||
			echo "Select a product.";
 | 
								echo "Select a product.";
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						function entryCombinationExists($productId, $unitId)
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							$SQL_command = "SELECT COUNT(listId) as entryAmount FROM listEntries WHERE listId=(SELECT id FROM `lists` ORDER BY creationTime DESC LIMIT 1) AND productId=".$productId." AND unit=".$unitId;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							$mysqli_result = DBLink::getDbLink()->query($SQL_command);
 | 
				
			||||||
 | 
							if ($row = mysqli_fetch_object($mysqli_result))
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if($row->entryAmount > 0)
 | 
				
			||||||
 | 
									return true;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							return false;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						function oneListExists()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							$SQL_command = "SELECT COUNT(id) as listAmount FROM lists";
 | 
				
			||||||
 | 
							$mysqli_result = DBLink::getDbLink()->query($SQL_command);
 | 
				
			||||||
 | 
							if ($row = mysqli_fetch_object($mysqli_result))
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if($row->listAmount > 0)
 | 
				
			||||||
 | 
									return true;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							return false;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						function twoListsExist()
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							$SQL_command = "SELECT COUNT(id) as listAmount FROM lists";
 | 
				
			||||||
 | 
							$mysqli_result = DBLink::getDbLink()->query($SQL_command);
 | 
				
			||||||
 | 
							if ($row = mysqli_fetch_object($mysqli_result))
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								if($row->listAmount > 1)
 | 
				
			||||||
 | 
									return true;
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							return false;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
	function displayShoppingList($listId, $justCreatedProductId)
 | 
						function displayShoppingList($listId, $justCreatedProductId)
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		echo "	<h2>Shopping list</h2>
 | 
							echo "	<h2>Shopping list</h2>
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
				<form id=\"addProductToListForm\" action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\" onSubmit=\"addToggleStates(this); return checkAddProductToList();\">
 | 
									<form id=\"addProductToListForm\" action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\" onSubmit=\"addToggleStates(this); return checkAddProductToList();\">
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
									<form action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\">
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
					<input type=\"hidden\" id=\"command\" name=\"command\" value=\"addToList\" />
 | 
										<input type=\"hidden\" id=\"command\" name=\"command\" value=\"addToList\" />
 | 
				
			||||||
					<select name=\"productId\" id=\"productId\">
 | 
										<select name=\"productId\" id=\"productId\">
 | 
				
			||||||
						<option value=\"0\">Select product to add</option>
 | 
											<option value=\"0\">Select product to add</option>
 | 
				
			||||||
@@ -1339,6 +1474,27 @@
 | 
				
			|||||||
							echo "<option value=\"".$row->id."\">".$unitArray[0]."</option>";
 | 
												echo "<option value=\"".$row->id."\">".$unitArray[0]."</option>";
 | 
				
			||||||
					}
 | 
										}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							echo "		</select>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										<input type=\"number\" step=\"any\" id=\"amountToAdd\" name=\"amountToAdd\" value=\"1.0\" />
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										<select name=\"unitToAdd\" id=\"unitToAdd\">
 | 
				
			||||||
 | 
											<option value=\"0\">Select unit to add</option>
 | 
				
			||||||
 | 
										";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
										$SQL_command = "SELECT * FROM `units` ORDER BY name ASC";
 | 
				
			||||||
 | 
										$mysqli_result = DBLink::getDbLink()->query($SQL_command);
 | 
				
			||||||
 | 
										while ($row = mysqli_fetch_object($mysqli_result))
 | 
				
			||||||
 | 
										{
 | 
				
			||||||
 | 
											$currentId = (int)$row->id;
 | 
				
			||||||
 | 
											$unitArray = explode(";", $row->name);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
											if($row->isDefault == 1 || (isset($justCreatedUnitId) && $justCreatedUnitId === $currentId))
 | 
				
			||||||
 | 
												echo "<option value=\"".$row->id."\" selected>".$unitArray[0]."</option>";
 | 
				
			||||||
 | 
											else
 | 
				
			||||||
 | 
												echo "<option value=\"".$row->id."\">".$unitArray[0]."</option>";
 | 
				
			||||||
 | 
										}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		echo "		</select>
 | 
							echo "		</select>
 | 
				
			||||||
					<input type=\"submit\" value=\"add\" />
 | 
										<input type=\"submit\" value=\"add\" />
 | 
				
			||||||
				</form>";
 | 
									</form>";
 | 
				
			||||||
@@ -1396,7 +1552,11 @@
 | 
				
			|||||||
				if(!isset($lastShop) || $row[9] != $lastShop)
 | 
									if(!isset($lastShop) || $row[9] != $lastShop)
 | 
				
			||||||
				{
 | 
									{
 | 
				
			||||||
					$lastShop = $row[9];
 | 
										$lastShop = $row[9];
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
					echo "<h3>".$lastShop."</h3>";
 | 
										echo "<h3>".$lastShop."</h3>";
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
										echo $lastShop."<br>================";
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
					echo "<table border=\"0\">";
 | 
										echo "<table border=\"0\">";
 | 
				
			||||||
				}
 | 
									}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -1410,8 +1570,11 @@
 | 
				
			|||||||
						<td style=\"vertical-align:top;\">".$row[12]."</td>
 | 
											<td style=\"vertical-align:top;\">".$row[12]."</td>
 | 
				
			||||||
						<td style=\"vertical-align:top;\">".$row[5]."</td>";
 | 
											<td style=\"vertical-align:top;\">".$row[5]."</td>";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
				GLOBAL $iconDelete;
 | 
									GLOBAL $iconDelete;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
				echo "
 | 
									echo "
 | 
				
			||||||
						<td style=\"vertical-align:top;\">
 | 
											<td style=\"vertical-align:top;\">
 | 
				
			||||||
							<form id=\"removeItemFromListForm\" action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\" onSubmit=\"addToggleStates(this)\">
 | 
												<form id=\"removeItemFromListForm\" action=\"".$_SERVER['PHP_SELF']."\" method=\"POST\" onSubmit=\"addToggleStates(this)\">
 | 
				
			||||||
@@ -1420,7 +1583,11 @@
 | 
				
			|||||||
								<input type=\"hidden\" id=\"productToRemove\" name=\"productToRemove\" value=\"".$row[1]."\" />
 | 
													<input type=\"hidden\" id=\"productToRemove\" name=\"productToRemove\" value=\"".$row[1]."\" />
 | 
				
			||||||
								<input type=\"hidden\" id=\"productAmountToRemove\" name=\"productAmountToRemove\" value=\"".$row[2]."\" />
 | 
													<input type=\"hidden\" id=\"productAmountToRemove\" name=\"productAmountToRemove\" value=\"".$row[2]."\" />
 | 
				
			||||||
								<input type=\"hidden\" id=\"productUnitToRemove\" name=\"productUnitToRemove\" value=\"".$row[10]."\" />
 | 
													<input type=\"hidden\" id=\"productUnitToRemove\" name=\"productUnitToRemove\" value=\"".$row[10]."\" />
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
								<input class=\"smallButton\" type=\"submit\" value=\"".$iconDelete."\" />
 | 
													<input class=\"smallButton\" type=\"submit\" value=\"".$iconDelete."\" />
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
													<input class=\"smallButton\" type=\"submit\" value=\"remove\" />
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
							</form>
 | 
												</form>
 | 
				
			||||||
						</td>
 | 
											</td>
 | 
				
			||||||
					</tr>";
 | 
										</tr>";
 | 
				
			||||||
@@ -1439,6 +1606,7 @@
 | 
				
			|||||||
	{
 | 
						{
 | 
				
			||||||
		echo "<hr />";
 | 
							echo "<hr />";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
		$detailsName = "detailsMaintenance";
 | 
							$detailsName = "detailsMaintenance";
 | 
				
			||||||
		$openString = "";		
 | 
							$openString = "";		
 | 
				
			||||||
		if(in_array($detailsName, explode(";", $_POST['openDetailsElements'])))
 | 
							if(in_array($detailsName, explode(";", $_POST['openDetailsElements'])))
 | 
				
			||||||
@@ -1461,6 +1629,9 @@
 | 
				
			|||||||
					<summary>
 | 
										<summary>
 | 
				
			||||||
						<strong>Manage shopping lists</strong>
 | 
											<strong>Manage shopping lists</strong>
 | 
				
			||||||
					</summary>
 | 
										</summary>
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
							echo "	<h2>Data maintenance</h2>
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
 | 
					
 | 
				
			||||||
				<h3>Create new list</h3>
 | 
									<h3>Create new list</h3>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -1787,6 +1958,36 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	function displayUnitList()
 | 
						function displayUnitList()
 | 
				
			||||||
 | 
					<<<<<<< HEAD
 | 
				
			||||||
 | 
					=======
 | 
				
			||||||
 | 
						{
 | 
				
			||||||
 | 
							$SQL_Befehl = "SELECT name FROM units ORDER BY name ASC";
 | 
				
			||||||
 | 
							
 | 
				
			||||||
 | 
							$mysqli_result = DBLink::getDbLink()->query($SQL_Befehl);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							$lastShop="";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
							while ($row = mysqli_fetch_object($mysqli_result))
 | 
				
			||||||
 | 
							{
 | 
				
			||||||
 | 
								$unitArray = explode(";", $row->name);
 | 
				
			||||||
 | 
								if(count($unitArray) == 1)
 | 
				
			||||||
 | 
									echo $unitArray[0]."\n";
 | 
				
			||||||
 | 
								else
 | 
				
			||||||
 | 
								{
 | 
				
			||||||
 | 
									$tbp = "";
 | 
				
			||||||
 | 
									for($i=1; $i<count($unitArray); $i++)
 | 
				
			||||||
 | 
										$tbp .= $unitArray[$i]."|";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									$tbp = trim($tbp, "|");
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
									echo "(".$tbp."):".$unitArray[0]."\n";
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						function createNewShoppingList()
 | 
				
			||||||
 | 
					>>>>>>> branch 'development' of https://git.server47.de/jens/ShoppingList.git
 | 
				
			||||||
	{
 | 
						{
 | 
				
			||||||
		/*$SQL_command = "SELECT name FROM units ORDER BY name ASC";
 | 
							/*$SQL_command = "SELECT name FROM units ORDER BY name ASC";
 | 
				
			||||||
		
 | 
							
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,12 +1,32 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
SHOPPINGITEM=""
 | 
					SHOPPINGITEM=""
 | 
				
			||||||
 | 
					AMOUNT=""
 | 
				
			||||||
 | 
					UNIT=""
 | 
				
			||||||
SITEID=""
 | 
					SITEID=""
 | 
				
			||||||
PARAMS=""
 | 
					PARAMS=""
 | 
				
			||||||
SESSIONID=""
 | 
					SESSIONID=""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
while (( "$#" )); do
 | 
					while (( "$#" )); do
 | 
				
			||||||
  case "$1" in
 | 
					  case "$1" in
 | 
				
			||||||
 | 
					    --shoppingAmount)
 | 
				
			||||||
 | 
					      if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
 | 
				
			||||||
 | 
					        AMOUNT=$2
 | 
				
			||||||
 | 
					        shift 2
 | 
				
			||||||
 | 
					      else
 | 
				
			||||||
 | 
					        echo "Error: Argument for $1 is missing" >&2
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					      fi
 | 
				
			||||||
 | 
					      ;;
 | 
				
			||||||
 | 
					    --shoppingUnit)
 | 
				
			||||||
 | 
					      if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
 | 
				
			||||||
 | 
					        UNIT=$2
 | 
				
			||||||
 | 
					        shift 2
 | 
				
			||||||
 | 
					      else
 | 
				
			||||||
 | 
					        echo "Error: Argument for $1 is missing" >&2
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					      fi
 | 
				
			||||||
 | 
					      ;;
 | 
				
			||||||
    --shoppingProduct)
 | 
					    --shoppingProduct)
 | 
				
			||||||
      if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
 | 
					      if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
 | 
				
			||||||
        SHOPPINGITEM=$2
 | 
					        SHOPPINGITEM=$2
 | 
				
			||||||
@@ -53,7 +73,21 @@ then
 | 
				
			|||||||
	echo "Was soll ich auf die Liste setzen?"
 | 
						echo "Was soll ich auf die Liste setzen?"
 | 
				
			||||||
	exit 1
 | 
						exit 1
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
	java -jar /home/pi/hc_scripts/ShoppingList.jar --action addToList --shoppingProduct $SHOPPINGITEM
 | 
						lengthAmount=${#AMOUNT}
 | 
				
			||||||
 | 
						lengthUnit=${#UNIT}
 | 
				
			||||||
 | 
						
 | 
				
			||||||
 | 
						if [ $lengthAmount -gt 0 ]
 | 
				
			||||||
 | 
						then
 | 
				
			||||||
 | 
							if [ $lengthUnit -gt 0 ]
 | 
				
			||||||
 | 
							then
 | 
				
			||||||
 | 
								java -jar /home/pi/hc_scripts/ShoppingList.jar --action addToList --shoppingAmount $AMOUNT --shoppingUnit $UNIT --shoppingProduct $SHOPPINGITEM
 | 
				
			||||||
 | 
							else
 | 
				
			||||||
 | 
								java -jar /home/pi/hc_scripts/ShoppingList.jar --action addToList --shoppingAmount $AMOUNT --shoppingProduct $SHOPPINGITEM
 | 
				
			||||||
 | 
							fi
 | 
				
			||||||
 | 
						else
 | 
				
			||||||
 | 
							java -jar /home/pi/hc_scripts/ShoppingList.jar --action addToList --shoppingProduct $SHOPPINGITEM
 | 
				
			||||||
 | 
						fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	if [ "$?" -eq "0" ]
 | 
						if [ "$?" -eq "0" ]
 | 
				
			||||||
	then
 | 
						then
 | 
				
			||||||
		exit 0
 | 
							exit 0
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -1,12 +1,32 @@
 | 
				
			|||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
SHOPPINGITEM=""
 | 
					SHOPPINGITEM=""
 | 
				
			||||||
 | 
					AMOUNT=""
 | 
				
			||||||
 | 
					UNIT=""
 | 
				
			||||||
SITEID=""
 | 
					SITEID=""
 | 
				
			||||||
PARAMS=""
 | 
					PARAMS=""
 | 
				
			||||||
SESSIONID=""
 | 
					SESSIONID=""
 | 
				
			||||||
 | 
					
 | 
				
			||||||
while (( "$#" )); do
 | 
					while (( "$#" )); do
 | 
				
			||||||
  case "$1" in
 | 
					  case "$1" in
 | 
				
			||||||
 | 
					    --shoppingAmount)
 | 
				
			||||||
 | 
					      if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
 | 
				
			||||||
 | 
					        AMOUNT=$2
 | 
				
			||||||
 | 
					        shift 2
 | 
				
			||||||
 | 
					      else
 | 
				
			||||||
 | 
					        echo "Error: Argument for $1 is missing" >&2
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					      fi
 | 
				
			||||||
 | 
					      ;;
 | 
				
			||||||
 | 
					    --shoppingUnit)
 | 
				
			||||||
 | 
					      if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
 | 
				
			||||||
 | 
					        UNIT=$2
 | 
				
			||||||
 | 
					        shift 2
 | 
				
			||||||
 | 
					      else
 | 
				
			||||||
 | 
					        echo "Error: Argument for $1 is missing" >&2
 | 
				
			||||||
 | 
					        exit 1
 | 
				
			||||||
 | 
					      fi
 | 
				
			||||||
 | 
					      ;;
 | 
				
			||||||
    --shoppingProduct)
 | 
					    --shoppingProduct)
 | 
				
			||||||
      if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
 | 
					      if [ -n "$2" ] && [ ${2:0:1} != "-" ]; then
 | 
				
			||||||
        SHOPPINGITEM=$2
 | 
					        SHOPPINGITEM=$2
 | 
				
			||||||
@@ -53,11 +73,25 @@ then
 | 
				
			|||||||
	echo "Was soll ich von der Liste streichen?"
 | 
						echo "Was soll ich von der Liste streichen?"
 | 
				
			||||||
	exit 1
 | 
						exit 1
 | 
				
			||||||
else
 | 
					else
 | 
				
			||||||
	java -jar /home/pi/hc_scripts/ShoppingList.jar --action removeFromList --shoppingProduct $SHOPPINGITEM
 | 
						lengthAmount=${#AMOUNT}
 | 
				
			||||||
	if [ "$?" -eq "0" ]
 | 
					        lengthUnit=${#UNIT}
 | 
				
			||||||
	then
 | 
					
 | 
				
			||||||
		exit 0
 | 
					        if [ $lengthAmount -gt 0 ]
 | 
				
			||||||
	else
 | 
					        then
 | 
				
			||||||
		exit 1
 | 
					                if [ $lengthUnit -gt 0 ]
 | 
				
			||||||
	fi
 | 
							then
 | 
				
			||||||
 | 
					                        java -jar /home/pi/hc_scripts/ShoppingList.jar --action removeFromList --shoppingAmount $AMOUNT --shoppingUnit $UNIT --shoppingProduct $SHOPPINGITEM
 | 
				
			||||||
 | 
					                else
 | 
				
			||||||
 | 
					                        java -jar /home/pi/hc_scripts/ShoppingList.jar --action removeFromList --shoppingAmount $AMOUNT --shoppingProduct $SHOPPINGITEM
 | 
				
			||||||
 | 
					                fi
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					                java -jar /home/pi/hc_scripts/ShoppingList.jar --action removeFromList --shoppingProduct $SHOPPINGITEM
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        if [ "$?" -eq "0" ]
 | 
				
			||||||
 | 
					        then
 | 
				
			||||||
 | 
					                exit 0
 | 
				
			||||||
 | 
					        else
 | 
				
			||||||
 | 
					                exit 1
 | 
				
			||||||
 | 
					        fi
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										5
									
								
								slotPrograms/shoppingProduct
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								slotPrograms/shoppingProduct
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Adjust the URL to match where your php interface is.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					curl http://yourWebserver/rhasspy/shoppingList.php?command=printProductList
 | 
				
			||||||
							
								
								
									
										5
									
								
								slotPrograms/shoppingUnit
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								slotPrograms/shoppingUnit
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,5 @@
 | 
				
			|||||||
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# Adjust the URL to match where your php interface is.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					curl http://yourWebserver/rhasspy/shoppingList.php?command=printUnitList
 | 
				
			||||||
		Reference in New Issue
	
	Block a user