From 15fd4bb15b6e7cb377ce8a56a12eb214038b0c3d Mon Sep 17 00:00:00 2001
From: Robert Goldmann <deadlocker@gmx.de>
Date: Sun, 3 Oct 2021 14:48:10 +0200
Subject: [PATCH] #596 - cleanup

---
 .../budgetmaster/templates/TemplateController.java   |  2 +-
 .../transactions/TransactionController.java          | 11 ++++-------
 .../transactions/TransactionService.java             |  4 ++--
 .../budgetmaster/transactions/TransactionType.java   | 12 ------------
 .../templates/transactions/newTransactionMacros.ftl  |  4 ++--
 .../templates/transactions/newTransactionNormal.ftl  |  3 +--
 .../transactions/newTransactionTransfer.ftl          |  3 +--
 7 files changed, 11 insertions(+), 28 deletions(-)

diff --git a/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateController.java b/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateController.java
index f2ffc45f2..a60545874 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateController.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/templates/TemplateController.java
@@ -146,7 +146,7 @@ public class TemplateController extends BaseController
 		}
 
 		final DateTime date = dateService.getDateTimeFromCookie(cookieDate);
-		transactionService.prepareModelNewOrEdit(model, false, date, null, newTransaction, accountService.getAllActivatedAccountsAsc());
+		transactionService.prepareModelNewOrEdit(model, false, date, false, newTransaction, accountService.getAllActivatedAccountsAsc());
 
 		if(newTransaction.isTransfer())
 		{
diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java
index 7b49534fa..3733d4d5d 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionController.java
@@ -127,7 +127,7 @@ public class TransactionController extends BaseController
 		DateTime date = dateService.getDateTimeFromCookie(cookieDate);
 		Transaction emptyTransaction = new Transaction();
 		emptyTransaction.setCategory(categoryService.findByType(CategoryType.NONE));
-		transactionService.prepareModelNewOrEdit(model, false, date, null, emptyTransaction, accountService.getAllActivatedAccountsAsc());
+		transactionService.prepareModelNewOrEdit(model, false, date, false, emptyTransaction, accountService.getAllActivatedAccountsAsc());
 		return "transactions/newTransaction" + StringUtils.capitalize(type);
 	}
 
@@ -135,7 +135,6 @@ public class TransactionController extends BaseController
 	public String post(Model model, @CookieValue("currentDate") String cookieDate,
 					   @ModelAttribute("NewTransaction") Transaction transaction, BindingResult bindingResult,
 					   @RequestParam(value = "isRepeating", required = false) boolean isRepeating,
-					   @RequestParam(value = "previousType", required = false) TransactionType previousType,
 					   @RequestParam(value = "repeatingModifierNumber", required = false, defaultValue = "0") int repeatingModifierNumber,
 					   @RequestParam(value = "repeatingModifierType", required = false) String repeatingModifierType,
 					   @RequestParam(value = "repeatingEndType", required = false) String repeatingEndType,
@@ -212,7 +211,7 @@ public class TransactionController extends BaseController
 		if(bindingResult.hasErrors())
 		{
 			model.addAttribute("error", bindingResult);
-			transactionService.prepareModelNewOrEdit(model, isEdit, date, null, transaction, accountService.getAllActivatedAccountsAsc());
+			transactionService.prepareModelNewOrEdit(model, isEdit, date, false, transaction, accountService.getAllActivatedAccountsAsc());
 			return url;
 		}
 
@@ -243,7 +242,7 @@ public class TransactionController extends BaseController
 		}
 
 		DateTime date = dateService.getDateTimeFromCookie(cookieDate);
-		transactionService.prepareModelNewOrEdit(model, true, date, null, transaction, accountService.getAllActivatedAccountsAsc());
+		transactionService.prepareModelNewOrEdit(model, true, date, false, transaction, accountService.getAllActivatedAccountsAsc());
 
 		if(transaction.isTransfer())
 		{
@@ -315,8 +314,6 @@ public class TransactionController extends BaseController
 		final TransactionType newTransactionType = transactionTypeOptional.get();
 		LOGGER.debug(MessageFormat.format("Changing transaction type to {0} for transaction with ID {1}", newTransactionType, String.valueOf(transaction.getID())));
 
-		final TransactionType previousType = TransactionType.getFromTransaction(transaction);
-
 		String redirectUrl = "";
 		switch(newTransactionType)
 		{
@@ -332,7 +329,7 @@ public class TransactionController extends BaseController
 		}
 
 		DateTime date = dateService.getDateTimeFromCookie(cookieDate);
-		transactionService.prepareModelNewOrEdit(model, true, date, previousType, transactionCopy, accountService.getAllActivatedAccountsAsc());
+		transactionService.prepareModelNewOrEdit(model, true, date, true, transactionCopy, accountService.getAllActivatedAccountsAsc());
 
 		return redirectUrl;
 	}
diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionService.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionService.java
index 2e3723cdc..57c57987c 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionService.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionService.java
@@ -288,11 +288,11 @@ public class TransactionService implements Resettable
 		return item;
 	}
 
-	public void prepareModelNewOrEdit(Model model, boolean isEdit, DateTime date, TransactionType previousType, TransactionBase item, List<Account> accounts)
+	public void prepareModelNewOrEdit(Model model, boolean isEdit, DateTime date, boolean changeTypeInProgress, TransactionBase item, List<Account> accounts)
 	{
 		model.addAttribute("isEdit", isEdit);
 		model.addAttribute("currentDate", date);
-		model.addAttribute("previousType", previousType);
+		model.addAttribute("changeTypeInProgress", changeTypeInProgress);
 		model.addAttribute("categories", categoryService.getAllEntitiesAsc());
 		model.addAttribute("accounts", accounts);
 		model.addAttribute("transaction", item);
diff --git a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionType.java b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionType.java
index 26ba6bab1..e24f025e3 100644
--- a/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionType.java
+++ b/src/main/java/de/deadlocker8/budgetmaster/transactions/TransactionType.java
@@ -32,18 +32,6 @@ public enum TransactionType
 		}
 	}
 
-	public static TransactionType getFromTransaction(Transaction transaction)
-	{
-		if(transaction.isTransfer())
-		{
-			return TRANSFER;
-		}
-		else
-		{
-			return NORMAL;
-		}
-	}
-
 	@Override
 	public String toString()
 	{
diff --git a/src/main/resources/templates/transactions/newTransactionMacros.ftl b/src/main/resources/templates/transactions/newTransactionMacros.ftl
index 4a454bc14..3a8173625 100644
--- a/src/main/resources/templates/transactions/newTransactionMacros.ftl
+++ b/src/main/resources/templates/transactions/newTransactionMacros.ftl
@@ -340,8 +340,8 @@
     <@header.buttonSubmit name='action' icon='save' localizationKey='save' id='button-save-transaction'/>
 </#macro>
 
-<#macro buttonTransactionActions canChangeType canCreateTemplate changetypeInProgress>
-    <#if (canChangeType || canCreateTemplate) && !changetypeInProgress>
+<#macro buttonTransactionActions canChangeType canCreateTemplate changeTypeInProgress>
+    <#if (canChangeType || canCreateTemplate) && !changeTypeInProgress>
         <div class="fixed-action-btn" id="transaction-actions-button">
             <a class="btn-floating btn-large waves-effect waves-light background-blue">
                 <i class="material-icons left">settings</i>${locale.getString("save")}
diff --git a/src/main/resources/templates/transactions/newTransactionNormal.ftl b/src/main/resources/templates/transactions/newTransactionNormal.ftl
index 9bbab097b..6be93a6ac 100644
--- a/src/main/resources/templates/transactions/newTransactionNormal.ftl
+++ b/src/main/resources/templates/transactions/newTransactionNormal.ftl
@@ -38,7 +38,6 @@
                             <!-- only set ID for transactions not templates, otherwise the input is filled with the template ID and saving the transaction
                             may then override an existing transactions if the ID is also already used in transactions table -->
                             <input type="hidden" name="ID" value="<#if transaction.class.simpleName == "Transaction" && transaction.getID()??>${transaction.getID()?c}</#if>">
-                            <input type="hidden" name="previousType" value="<#if previousType??>${previousType.name()}</#if>">
                             <input type="hidden" name="isRepeating" value="${transaction.isRepeating()?c}">
 
                             <#-- isPayment switch -->
@@ -78,7 +77,7 @@
 
                             <#-- buttons -->
                             <@newTransactionMacros.buttons '/transactions'/>
-                            <@newTransactionMacros.buttonTransactionActions isEdit true previousType??/>
+                            <@newTransactionMacros.buttonTransactionActions isEdit true changeTypeInProgress/>
                         </form>
 
                         <div id="saveAsTemplateModalContainer"></div>
diff --git a/src/main/resources/templates/transactions/newTransactionTransfer.ftl b/src/main/resources/templates/transactions/newTransactionTransfer.ftl
index 36ca67f35..3cc80948c 100644
--- a/src/main/resources/templates/transactions/newTransactionTransfer.ftl
+++ b/src/main/resources/templates/transactions/newTransactionTransfer.ftl
@@ -39,7 +39,6 @@
                             may then override an existing transactions if the ID is also already used in transactions table -->
                             <input type="hidden" name="ID" value="<#if transaction.class.simpleName == "Transaction" && transaction.getID()??>${transaction.getID()?c}</#if>">
                             <input type="hidden" name="isExpenditure" value="true">
-                            <input type="hidden" name="previousType" value="<#if previousType??>${previousType.name()}</#if>">
                             <input type="hidden" name="isRepeating" value="${transaction.isRepeating()?c}">
 
                             <#assign hint=helpers.getHintByLocalizationKey("hint.transaction.save")/>
@@ -84,7 +83,7 @@
 
                             <#-- buttons -->
                             <@newTransactionMacros.buttons '/transactions'/>
-                            <@newTransactionMacros.buttonTransactionActions isEdit true previousType??/>
+                            <@newTransactionMacros.buttonTransactionActions isEdit true changeTypeInProgress/>
                         </form>
 
                         <div id="saveAsTemplateModalContainer"></div>
-- 
GitLab